トップ «前の日記(2010-05-11(Tue)) 最新 次の日記(2010-05-13(Thu))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2010-05-12(Wed) 晴れたり曇ったり所によりて

3.x色々

例えば文字列に埋め込む % 以外にも追加(2.6でもできた)。

>>> "%s は%s を %d 個持っている" % ("私", "携帯", 3)
'私は携帯を3個持っている'
 
>>> "{0}は{1}を{2}個持っている".format("私","携帯",3)
'私は携帯を3個持っている'
 
>>> "{a}は{b}を{c}個持っている".format(a="私",b="携帯",c=3)
'私は携帯を3個持っている'

ディクショナリから has_key() がなくなった。キーの有無を判別する には(これも2.6で使えた) in を使え、らしい。

>>> dict
{'zero': 'none', 'two': 'second', 'one': 'first'}
 
>>> key1, key2 = "two", "forth"
 
>>> key1 in dict
True
 
>>> key2 in dict
False

情報源が古い場合は注意が必要...

EUC-JPにUTF-8

なテキストを読み込んでみる。

>>> U = codecs.open("utf-8.txt", 'r', 'utf-8')
 
>>> print(U.readline())
これはUTF-8で書かれています。

集合型の内包表記

これは2.6.5ではできなかった。

>>> list = [ "りんご" , "みかん", "バナナ", "みかん" ]
 
>>> list
['りんご', 'みかん', 'バナナ', 'みかん']
 
>>> set = { x for x in list }
 
>>> set
{'りんご', 'みかん', 'バナナ'}

さらに続く

昨日思いつかなかったところが、今解けた。
とはいっても、自分の頭の中から解が出てきた、わけではない。
ドキュメントを見ているうちに何かに気づき、プロンプトに色々打鍵するうちにできた。

>>> [[ x, x+1, x+2 ] for x in range(1,8)][0::3]
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。