aokirozin's log

技術と音楽とアニメと読書の健忘録

2020年6月の近況

今はAI関係でSE?の派遣社員をしていて、

  • CentOS
  • VirtualBox
  • Docker
  • Python
  • Bash
  • Ruby

などをいじってる。

今年に入って買って良かった高い買い物はミラーレス一眼と 2-in-1 PC。

ソニーのα7IIIはレンズがたくさんあって良い。コスパも良い。レンズは35mmか肉眼の視野に近い50mmの明るい単焦点を1本持っておけば人物撮りには問題なさげ。人以外も撮るならズームもあり。α7IIIが発売されてからみんなソニーに移ってるくらいの名機。

ソニー ミラーレス一眼 α7 III ボディ ILCE-7M3

ソニー ミラーレス一眼 α7 III ボディ ILCE-7M3

  • 発売日: 2018/03/23
  • メディア: エレクトロニクス

ノートPCを買おうとしていたんだけど結局タブレットPCにキーボード付きカバーをつけた 2-in-1 PC になるやつを買ってしまった。マイクロソフトの Surface Pro 7 だ。 顔認証がこんなに便利だとはね。僕はノートはヘビーに使わないのでタブレットPCで十分だなと思った。それよりペンでタブレットとして画面に直接書き込めるのが面白い。

あと、「これはなかなか面白いものを買ったなあ」というやつ。

温湿度計なんだけど、Wifiに接続されたHubにつなげることで外出先でも部屋の温度が分かる。それだけじゃなくて、このHubは遠隔赤外線リモコンになっていて、タイマーでエアコンのON/OFFできたり、温度をトリガーにしてエアコンのONにしたりできる。もちろんエアコンだけじゃなくてリモコン式の照明のコントロールとかもできる。面白い。

Python環境を構築できるAnaconda (1)

最近は半強制的にPythonがマイブームなのです。

といった感じでエントリーを書いていこうかと思います。

Anaconda (Miniconda) のインストール

Anacondaとは

WindowsにPythonを導入するのは面倒です。本体だけならまだしも、ライブラリをインストールするときは、依存関係なども解決しないといけないからです。AnacondaとはPython本体のインストールのみならず、関連パッケージの管理ツールや開発環境などが含まれるディストリビューションです。

ただ、Anacondaには通常では不要な大量なパッケージも含まれるため、Python本体とパッケージ管理ツール、最小限のパッケージで構成されたMinicondaをインストールすることにします。なお、インストール時に必要な容量は、Anacondaが約3GB、Minicondaが約0.3GBです。

Windows10 (1909) へのMinicondaのインストール

Minicondaのダウンロードページから「Miniconda3 Windows 64-bit」 (32bitの人は32bit) をダウンロードし、全てデフォルトの指定でインストールしましょう。

f:id:aokirozin:20200619185924p:plain

ただ、インストール先で、日本語やスペースが入っている場合、正しく動作しない恐れがあるため、そのばあいは「C:\miniconda3」にするなど、適宜対応してください。

f:id:aokirozin:20200619193558p:plain

動作確認

スタートメニューから「Anaconda3」→「Anaconda Prompt (miniconda3)」でプロンプト画面を開きます。

python -Vと打ち込んでを押してください。Vは大文字です。これはインストールされているPythonのバージョンを出力するコマンドです。

> python -V
Python 3.7.7

python --versionでも同じです。こちらはvは小文字です。

> python --version
Python 3.7.7

このようにバージョンが正常に表示されたなら、インストールはとりあえず正常に完了しているはずです。

Hello, World!

次に、PythonコードをPythonインタプリタで実行させてみます。Anaconda Prompt でpythonと入力すると、Pythonインタプリタが起動します。

> python
Python 3.7.7 (default, May  6 2020, 11:45:54) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

>>>の後にprint("Hello, World!")と入力してみます。

>>> print("Hello, World!")
Hello, World!
>>>

print関数は文字列や数値を出力する関数です。

インタプリタからでるときはexit()と入力します。

>>> exit()

>

Pythonのリスト内包表記

放置してたけど久しぶりに書く。 完全に自分用メモ。

a = []
for i in range(10):
    a.append(i)

みたいなものを

a = [i for i in range(10)]

とワンライナーで書けるらしい。 正直めちゃくちゃ読みにくい。

# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

というリストができる。

Pythonスタートブック[増補改訂版]

Pythonスタートブック[増補改訂版]

  • 作者:辻 真吾
  • 発売日: 2018/04/12
  • メディア: Kindle版

入門 Python 3

入門 Python 3

  • 作者:Bill Lubanovic
  • 発売日: 2015/12/01
  • メディア: 単行本(ソフトカバー)

GeForce GTX 900 Series

グラボはPhotoshopとかPremiereとか使うんで、性能いい方が良いのだけれど、消費電力 (TDP) が250Wとかなのが気になりすぎて躊躇してたんだけど、最近出た900シリーズはTDPすげー下がってるのね。250W→165Wはでかい。これは買わざるを得ない。970はメモリ周りに不具合あるらしいので980かな。個人的にはELSA製が信頼できるんで、「ELSA GeForce GTX 980 4GB S.A.C」かね。静音ファンらしいし。

ELSA NVIDIA GeForce GD980 4GB グラフィックボード GD980-4GERXS

ELSA NVIDIA GeForce GD980 4GB グラフィックボード GD980-4GERXS

  • 発売日: 2014/11/01
  • メディア: Personal Computers

SMARTalk (FUSION IP-Phone SMART)

いわゆる050で始まるIP電話の番号を取得して利用できるサービス。似たサービスに050plusがあるがこっちは月額固定費がかかってしまうので、普段使わないけど稀に着信で使う、とかならSMARTalkは良い選択肢だと思う。発信したときの通話料金は30秒ごとに税抜8円。

スマホ用の専用アプリがあり、取得した050の電話番号で発着信できる。複数の番号を同時に持つことができるが、そのあたりの使い勝手がよく分からなかったので、試してみた。

まず、FUSION IP-Phone SMART のアカウントを取得する際にはメールアドレスとクレジットカードが必要になる。これで、1つ目の番号を取る。2つ目の番号を取る際には1つ目のアカウントとは別にアカウントを新規作成する感じになる。その際、1つ目と同じクレジットカードを使うと、2つ目の取得手数料という謎の費用が税抜500円かかる。面倒なので同じカードで登録したが。これで2つの番号を持つことができる。3つ以上も同様だが、1つのクレジットカードで取得できる番号の上限は5個のようだ。

次に、スマホアプリSMARTalkでの複数アカウントの扱いについて。基本的には使いやすいようにできていると思って良い。設定から発信の番号を1つ選択することになる。着信はすべての番号から受けられる (専用アプリを起動していなくても着信できる)。

f:id:aokirozin:20140430101249p:plain

これがSMARTalkの設定画面。SIPアカウントというのがいわゆるIP電話の番号。そのうちの1つを発信用に指定する。

f:id:aokirozin:20140430101458p:plain

SMARTalkの発信画面。左上が発信および着信するデフォルトの番号が表示される。

SMARTalkは自営業用の電話番号として使ってます。少なくとも個人用の携帯電話番号よりはマシだと思うし、使い分けができて便利。なにより、スマホアプリがあるので、どこでも通話できるのは大きいと思う。

ローカルのPACファイルがIE11で機能しない件

プロキシサーバを自動設定するためのファイルであるPACファイル。こいつをローカルにおいてIEに設定していたのだが、いつの間にやら機能しなくなっていた。IE11になってからだろうか。よく分からない。ちなみにWindowsは7。普段はFirefoxのBetaを使っている。IEと同じ設定を使うChromeでは機能しているので、IEの問題と思われる。

ちなみにプロキシサーバは某サイトとニコ動にアクセスするときだけ使用しているので、

function FindProxyForURL(url, host)
{
    if(shExpMatch(url, "*.dasadasa.com/*"))
        return "PROXY dasadasa-proxy.com:3128";
    else if(shExpMatch(url, "*.nicovideo.jp/*"))
        return "PROXY localhost:8080";
    else
        return "DIRECT";
}

みたいなPACファイルを使ってる。これをproxy.pacとして、IEインターネットオプションのLANの設定の自動構成スクリプトを使用する、の欄に

file://C:/proxy.pac

とfileプロトコルで指定すると機能しないが、ウェブサーバ上に置いて

http://dasadasa.com/proxy.pac

とhttpプロトコルで指定するときちんと動作する。謎仕様。

2020 © aokirozin