読者です 読者をやめる 読者になる 読者になる

空飛ぶロボットのつくりかた

ロボットをつくるために必要な技術をまとめます。ロボットの未来についても考えたりします。

pythonのお勉強

Python

引数

可変引数
  • *のときタプルになる
>>> def func(*hoge):
...   print hoge
...
>>> func("1","2","3")
('1', '2', '3')
  • **のとき辞書型になる
>>> def func(**hoge):
...   print hoge
...
>>> func(a=1,b=2,c=3)
{'a': 1, 'c': 3, 'b': 2}
>>>

イテレータ

参考;

10.1. itertools — 効率的なループ実行のためのイテレータ生成関数 — Python 3.6.1 ドキュメント

スコープ

参考:

RubyプログラマがPythonを学び始めて知ったこと10選 ④ - donghai821の日記

Pythonのクラスメンバのスコープまとめ - Qiita

Pythonメモ: privateやprotectedは

pythonにprivate変数がない件:千里の道も一歩から:So-netブログ

Python - Pythonの変数やメソッドの命名について(アンダーバー)(41277)|teratail

ソケット通信

  • connect : サーバーに接続
  • send : データ送信
  • sendall : すべて送りきるまで終わらない
  • settimeout : タイムアウト値を設定する
  • recv : データ受信
  • socket.timeout : exception OSErrorのサブクラス
  • socket.error : exception OSErrorの非推奨のエイリアス

参考:

Pythonのソケット通信 - Your life is beautiful...

Pythonでネットワークプログラミング | saito's memo

python - What is the difference between socket.send() and socket.sendall()? - Stack Overflow

Pythonでソケットタイムアウト値の設定と取得 - 珠玉の誤訳

18.1. socket — 低水準ネットワークインターフェース — Python 3.6.1 ドキュメント

スレッド

参考:

スレッド - Python入門から応用までの学習サイト

Pythonでマルチスレッド処理 - Qiita

クラス継承

参考:

[Python]クラス継承(super) - Qiita

Pythonの super() 関数の使い方 - Life with Python

その他

  • struct.pack(“i”,data) : int型でdataをパックする
  • unicode() : unicodeへ変換
  • .split() : 単語を分割してリストへ
  • ~[-1] : リストの最後のもの
  • ~[0:-1] : リストの最初から最後から一つ手前まで
  • .append : リストの最後に追加
  • time.sleep : ~s待つ
  • .first()
  • .join() : 連結して一つの文字にする
  • .items() : 辞書をリストに変換
  • continue : 現在のループを終了して次のループへ

参考:

pythonのstructモジュールを触ってみる | KentaKomai Blog

Unicode文字列(ユニコード文字列) - 文字列 - Python入門

文字列の分割・結合 split, join,rsplit | Python Snippets

要素の追加と連結(appendメソッド, extendメソッド) - リスト - Python入門

http://www.yukun.info/blog/2008/09/python-file-write-writelines.html

python - What is the difference between .one() and .first() - Stack Overflow

キーと値のリストを取得(keysメソッド, valuesメソッド, itemsメソッド) - 辞書 - Python入門

Pythonでスリープを使う time.sleep() - 何でも屋さんの備忘録

Pythonによる通信処理 - Qiita

Pythonのコードをきれいに書くためのTips | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記

continue - Python入門から応用までの学習サイト

スクリプト言語コンパイル言語の違い

参考:

【みんな知ってる?】スクリプト言語とコンパイル言語の違いとは?

はじめに | 学生のためのPython講座

lint

https://www.pylint.org

http://qiita.com/betweens/items/1b10b870538d90b07cef

http://qiita.com/kiyotaman/items/7749e4998e0bdcc61199

http://pylint-messages.wikidot.com/all-codes

*args **kwargs

*args **kwargsの意味