雑記

今日学んだこと

・ASCII
ASCIIコード表 - cppreference.com

使えると便利。例えば、
・0~9は48~57
文字が整数かどうかの判定に使える

・(大文字)-(小文字)=32
足し算引き算で大文字⇔小文字変換



・割り算のあまり:%


・文字列の1部を抜き出す
S.substr(開始idx,文字数)
C++ の文字列操作まとめ - Qiita



・if文
 かつ (A) && (B)
 または(A) || (B)


後できれいにまとめてくだしあ

そんなことをしたから?【WSLの文字色】

panderson.hatenablog.com
panderson.hatenablog.com

前にこんなことをしました。
ほんで最近「やっぱこの色見づらいな?」ってなって色を変更しようとしたらうまくいかなかった話。

どううまくいかなかったかというと、こんな感じ。
コマンドプロンプトのプロパティで変更してもWSLの方に反映されない
・ColorToolが原因かと思ったが、デフォルトのスキームが変更できない
・WSLの~/.bash_profileでPS1を設定しても色が変(なんか赤以外出なかった)
ちなみに3つ目のはこのサイトを参考にしました。
Linuxのターミナルに出力される$の左側の色や文字列をカスタマイズする | Hodalog

ほんで格闘すること数時間、、、
色々いじくっていたら文字色が真っ青で見づら!ってなって
コマンドプロンプトのプロパティの文字色をデフォルトっぽいものに戻したら。
解決。
ColorToolの変更も反映されるし、~/.bash_profileで設定した色がちゃんとでる。
原因は何だったんだ?コマンドプロンプトデフォルト値が変に認識されていた?

f:id:panderson:20200413193117p:plain

WSLのビープ音を消す

予想通りの3日坊主

WSLでBackSpace押したときのビープ音(警告音?エラー音?)がうるさく感じてきたので。

echo "set bell-style none" >> ~/.inputrc

です。
端末再起動で音が鳴らなくなります。

ちなみにコマンドプロンプトのほうは
設定のサウンドコントロールパネルから。
システムエラー(だったはず)をなしに。

f:id:panderson:20200412231835p:plain
Windowsの設定>システム>サウンドサウンドコントロールパネル>サウンド

【未解決】pyenvでpypy3-2.4.0が入らない.…

現状AtCoderPythonでやっているものの、やはり遅い。
というわけでpypyを使ってみようと思ったものの、という話。

AtCoderを見たところ、pypy3のバージョンが2.4.0とやらだったのでそれを入れようとしたらエラー。
ちなみに最新っぽい pypy3.6-7.3.0 は普通に入った。

$pyenv install pypy3-2.4.0
で出たエラーは以下。

$ pyenv install pypy3-2.4.0
Downloading pypy3-2.4-linux_x86_64-portable.tar.bz2...
-> https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.4-linux_x86_64-portable.tar.bz2
Installing pypy3-2.4-linux_x86_64-portable...
Installing pip from https://bootstrap.pypa.io/get-pip.py...
error: failed to install pip via get-pip.py

BUILD FAILED (Ubuntu 18.04 using python-build 1.2.16-5-g7097f820)

.......................

Traceback (most recent call last):
  File "get-pip.py", line 22711, in <module>
    main()
  File "get-pip.py", line 198, in main
    bootstrap(tmpdir=tmpdir)
  File "get-pip.py", line 82, in bootstrap
    from pip._internal.cli.main import main as pip_entry_point
zipimport.ZipImportError: cannot import name 'cache_from_source'

どうやら get-pip.py のあたりが怪しそうだけど、バージョン確認とかwhichでパス確認しても大丈夫そうだった。
というか、ほんとは pipenv だけで行きたかったんだけど pipenv でpypy入れるやり方わからんかった。

修行が足りない。

あしたからほんきだす

先日AtCoderを始めてみて、とりあえず最初の10問といわれるものを解いた。
qiita.com

多少躓くところもあったが問題なく解けたので「わりといけるのでは」と思い、1つ前のAtCoder Beginner Contest過去問に挑戦したらまあ難しい。
atcoder.jp

A~Dは普通に解けたがE,Fがダメだった。
Eは個数制約なしのナップザック問題、Fは、、、なんていうんだっけか。
始めはこんなものかと思いつつ、ちゃんと勉強しないとなと思いました。

で、それの感想とか、同解いたみたいな話を書こうと思ったけどめんどくさいので後回し。
とりあえず初めてのリアルタイム受験行ってきます。

そんなことしなくても

先日書いたこの話。
panderson.hatenablog.com

色変えるプログラムをダウンロードしてなんやかんやしたけど、
背景の色変えるだけならそんなことしなくて済むやん。って気づいた話。

コマンドプロンプトのプロパティから変更可能だった。

右クリックして、プロパティ
f:id:panderson:20200131224807p:plain
そんで、ここを編集。
f:id:panderson:20200131224856p:plain
これでOK。

pipenv (pyenv)で Python 3.4.3がインストールできなかった話。

先日AtCoderを始めまして。
で、AtCoderでは python のバージョンが3.4.3らしいので、それを入れようとしたら苦労した話。


エラーメッセージとっておいてなかったんだけど、

pipenv install --python 3.4.3

ってやったら

なんたらかんたら
The Python you just installed is not available on your PATH, apparently.

と言われ、次に

pyenv install 3.4.3

としたら

どーたらこーたら
The Python ssl extension was not compiled. Missing the OpenSSL lib?

と言われた。


解決策(と思うもの)

pyenvのエラーについていろいろググっていたらこのページにたどり着いた。
github.com
どうやらOpenSSL関連が原因らしい。(わかってない)
でページの内容に従い libssl-dev を入れなおしたら3.4.3がインストールできた。

sudo apt-get remove libssl-dev
sudo apt-get update
sudo apt-get install libssl1.0-dev

もしかしたらその前に実行した設定(?)の効果もあるかも。

LDFLAGS="-L/usr/lib/openssl-1.0" \
CFLAGS="-I/usr/include/openssl-1.0" \
pyenv install -v 3.4.3

他にやったこと

  • pip update & pip upgrade

まあとりあえず。

  • pipenvとpipのバージョン下げ

pipenvのエラーメッセージでググったら出てきた。
Pipenvのpyenvサポート(自動バージョンインストール)が動かないとき - Qiita
前のpipenvがらみのトラブルでもバージョン下げればOKみたいな話を見たのでやってみたが効果なし。

  • pipenvの依存関係の入れ直し

この時はlibssl-dev(1.0)ではなかった。