で
ユニバーサルアクセス
で
カーソルの大きさ
をさがして、「最大」を選んだらとても大きくなりました。
という記事を書こうと思って、GNOMEコントロールセンターをアクティビティに入れて探すのに
gnomeでもcontrolでもcenterでも設定でも出てきました。
ので、問題ないと思います。
追記: アクティビティの検索窓は日本語変換が効かないみたいなのですが、日本語でペーストはできるので、実害はないみたいです。 自動起動するアプリケーション を起動するのに使いました。
コメントアウトするときのやり方が言語ごとに違うのでネットで探して一覧にしてみました。
ちゃんと表示できるかな。
C++ => // or /* */ swift => // or /* */ JavaScript => // or /* */ CSS => /* */ HTML => <!-- --> Bash => # R => # Haskell => -- or {- -} Elm => -- or {- -} vim => "ダブルクォーテーションマーク Ruby => # or =begin =end Python => # or """ """ or ''' ''' C => /* */ Markdown => <!-- --> []() GFM => <!-- --> []() JSON => コメントはつけられない!! Java => // or /* */ or /** */ XML => <!-- --> bat => rem or :: PHP => // or # or /* */ VBA => ' or rem SQL => -- or /* */ Objective-C => // or /* */ Tex => % or ¥begin{comment} ¥end{comment} Perl => # or =comment =cut JSP => <%-- --%> VBS => ' or rem Smarty => {* *} Scheme(Racket) => ; ASP => ' Fortran => c or * or ! aspx => <%-- --%> J(プログラミング言語) => NB. Scala => // Lisp(CLisp) => ; Clojure => ; Go => // Hy => ;
Jupyterでいろいろ遊んでいるのですが、
Jupyter-nbconvert --to markdown notebook.ipynb
でマークダウンに変換できるということしりました。
ダウンなので情報量が減ってしまうのですが、そこそこ感じがつかめます。
ので以下、ご紹介。
本物のノートブックはhttps://github.com/kalz2q/files.gitにあります。
なぜPythonが苦手と感じるかと自己反省してみると、この収拾のなさというかいい加減さが覚えにくい。
なんらかの思想で統一されているとそれを頼りに記憶のわくぐみをつくるのだが、とかなんとか言う前に勉強しよう。
というので立ち上げたJupyter notebookですのであまり期待しないで進みましょう。
文字列がわかりません。
質問 charはあるのですか。見つからないのでないのではないか。
まあいいいか。
変数は事前に定義するのかどうか。突然x=3
とか使っていいの。
やってみてください。 べつにいいみたいです。
3 + "5"
とかしたらさすがエラーになりました。
あとで質問で検索したり、問題で復習したりするために、適宜質問と問題という表題を立てますが読むときはあまりきにしないでよい。
問題 色のリストについて文字数のリストを作る。append()を使う。
colors = ["yellow", "red", "green", "blue", "purple"] colorlength = [] for color in colors : colorlength.append(len(color)) print (colorlength)
質問 連想配列(dict、hash)はどうやって作るのですか。
質問 リストからzipで簡単に作れますか。例えばzip(colors, colorlength)とか。
質問 いちいちprintした方がいいですか。それとも変数を素でうちこむのがいいですか。
zip()
という関数があった。
思っていたのとはだいぶ違うが例を転記してみる。実験。うむ、これは便利かも。
days = ['Monday', 'Tuesday', 'Wednesday'] fruits = ['banana', 'orange', 'peach'] desserts = ['tiramisu', 'ice cream', 'pie', 'pudding'] drinks = ['coffee', 'tea', 'beer'] for day, fruit, drink, dessert in zip(days, fruits, drinks, desserts): print(day, ": drink", drink, "- eat", fruit, "- enjoy", dessert)
english = 'Monday', 'Tuesday', 'Wednesday' french = 'Lundi', 'Mardi', 'Mercredi' dict( zip(english, french))
list(zip(english,french))
list()
とかdict()
とか変な関数ですね。
range()
をlist()
で囲むと数列ができる。
おー、これは便利。
list(range(10, -1, -1))
さて、それ以前にPython dictionaryがわからないのでテキストを読む。
{}
で作成する。
bierce = { "day": "A period of twenty-four hours, mostly misspent", "positive": "Mistaken at the top of one's voice", "misfortune": "The kind of fortune that never misses", } bierce["day"]
問題 色のリストについて色名をキーに文字数をvalueにした辞書を作る。できた。
colors = ["yellow", "red", "green", "blue", "purple"] colorlength = [] for color in colors : colorlength.append(len(color)) dict(zip(colors,colorlength))
{'blue': 4, 'green': 5, 'purple': 6, 'red': 3, 'yellow': 6}
Jupyterを使ってC++を勉強しています。
Jupyter上なので標準入力の代わりに、stringからデータを読み込んであとの処理で使う、という方法をとっているのですが、テキストファイルを一度に文字列に取り込めないかな、と思い、調べてみました。
c++ read entire text file into string
とかで検索したところ、
std::ifstream t("file.txt");
std::stringstream buffer;
buffer << t.rdbuf();
という解答があったので、Jupyterのセルで実験してみました。
# include <bits/stdc++.h> using namespace std; string s; ifstream ifs("./mycpp/input.txt"); stringstream ss; ss << ifs.rdbuf(); s = ss.str()
これで、変数 s の中にファイルinput.txtの内容が、空白や改行も含めて全部取り込まれました。
成功です。
Jupyter上でC++を試行錯誤しながらやったのを、HTMLで書きだしたのを、このブログで紹介しようと思ったのですが、なんだかうまく行きません。
Jupyterのノートの形で見て、触ってもらうのが一番なので、githubに入れておいたので興味のあるかたは
1. JupyterにC++のカーネルをいれて(前回の記事参照)
2. https://github.com/kalz2q/files.gitからlearncpp.ipynbをダウンロードして触ってみてください。
htmlにしたもの(learncpp.html)もアップロードしておいたので、見るだけならそれでも見れます。
以上
Jupyter notebookでC++を使って勉強するのは、基本的には無理です。
なぜならC++はコンパイラーであって、Jupyterにのるのはインタープリター言語だけだから。
ところが!!
C++をスクリプトとして使う環境があってClangとかClingとかなのですが、それならJupyterのkernelとして使える。
そのインストール手順をまとめました。
このメモ見ながら他のマシンにもインストールできたので、まず大丈夫だと思います。
Jupyter上ではC++17という名前になります。
下記でubuntu16というのはubuntuの16.04という環境ということで、17の人やこれから出る18の場合は読み替える必要があります。
インストール手順
https://root.cern.ch/download/cling/ からバイナリーをダウンロードする。Ubuntu用しかない。 cd ダウンロード 解凍(展開)する。 cd cling_2018-03-26_ubuntu16 cd bin ./clingでclingが使えることを確認する。".q"で終了 cd ../.. mv cling_2018-03-26_ubuntu16 ~/ ダウンロードの中では変なので自分のフォルダーの一番上に持ってくる。 cd export PATH=~/cling-install-prefix/bin:$PATH あとで".bashrc"にも対応すること。 次にshareの中のkernelのところに行く。 cd /cling-install-prefix/share/cling/Jupyter/kernel pip install -e . を実行する。 次にjupyterにcling kernelをインストールする。 jupyter-kernelspec install ~/cling_2018-03-26_ubuntu16/share/cling/Jupyter/kernel/cling-cpp17 --user 最後に好きな場所でjupyter notebooを起動して、NewにC++17があることを確認する。
1+3
10+4*(3/4+100)+1011
3^2
3**5
10 / 7
割り算が%とかdivとかmodとかは実験したところエラーなので云々。
conda install r-essentials conda install rstudio conda install anaconda-navigater
とかした。
anaconda-navigatorはとりあえずエラーで動かない。rstudioは画面が小さくてなんとかしなくては。
とりあえず、jupyterのNewメニューでRが選べる状態。 これはこれで大成果だと思う。これがなければRの勉強なんかしていない。
マークダウンの中で上のcondaの例のように<pre><code></code></pre>
で書きたい時はどうするのか。 ひょっとするとただそう書けばいいかも。やってみよう。
conda install r-essentials
conda install rstudio
conda install anaconda-navigater
うむ。なんかとても冗長になるが、まあいいか。できた。文中の<code>
はバッククォートで囲めばよかった。ということは云々。
conda install r-essentials
conda install rstudio
conda install anaconda-navigater
これはどうだ。バッククォート3個で囲んでみた。
いまやりながらインデントの実験していたら、キーボード・ショートカットのCtrl-]インデント、Ctrl-[インデント
が英語キーボードで日本語キーボードに対応していない!! ま、いいか。Jupyterのキーボード・ショートカットは理不尽なのでどうせなんとかしなければいけない。編集して云々。