40のおっさんのPython学習記録

20年以上前、学部の必修のC言語が全く理解できずに同級生に放り投げ、その後コーディングから遠ざかったガチ文系のおっさんが、ふと思い立ってPythonに挑戦しています。

新たな気付き集(Chapter 4)

入門ノートでの学習の続きです。

  • divmod(a,b)で商と余りをタプルで返す
  • pow(x,y)でxのy乗を出し、pow(x,y,z)だとそれをzで割った余りで返す。商ではない。
  • chr(整数)で整数が示すUnicodeが文字列で返る
  • ord(文字列1文字)でUnicodeが返る。
  • print(値1, 値2, sep="区切り文字", end="最後尾の文字列")
  • from モジュール名 import 関数名で特定の関数だけを読み込むとモジュール名.関数名とかしなくてもよくなる。関数名だけでよい。

文字列の操作

  • string.title()で各単語の1文字目全てを大文字にする。
  • string.count(文字列,開始位置,終了位置)である区間の文字列の個数を数える。
  • string.find(文字列,開始位置,終了位置)で文字列が何文字目かを返す.rfindで後ろから始める。
  • .findと.indexは似ているが、見つからなかったときに-1で返すか、エラーで返すかが違う。
  • string.replace(検索文字列,置換文字列,個数)で個数を指定すると最初に見つかった個数だけリプレース。以後はそのまま。
  • string.strip()で空白だの改行コードだのを除去可能
  • string.rstrip(".,\n")で末尾のピリオド、改行コードをまとめて除去可能
  • string.rstrip(".jpeg")で拡張子を取り除けるように見えるが、末尾の全てが対象なので"dog.peg.jp"だと"do"になるので要注意
  • string="信号の色には{}、{}、{}がある"をstring.format("赤","青","黄")とすると{}にそれぞれが代入される。{}に0からはじまる数字を入れるとその順番になる。
  • {}に入れるものが数字の場合{:,}と記すと三桁区切り表記になり、{:.1f}とすると小数点1位まで表記になる。{:,.2f}とすると3桁区切りと小数点2位までの表示となる。
  • fプリフィックスと呼ばれるfを""でくくる文字列の前に付加すると、以下のように書式指定が可能になる。
  • 数値の表記はnum=16797.9863をprint(f"{num:,.2f}")とすると16,797.99となる。