Python の宿題ここで答えます Part 1at TECH
Python の宿題ここで答えます Part 1 - 暇つぶし2ch199:182=188
07/04/04 10:39:30
>タグをつけてまで出力をhtml
単にブラウザで表示確認してただけ。俺が使ってるのはSJISエディタだから。

>url = record.pop(3).replace("/", "\n\n")
>二回改行を入れてからunquoteする理由は、unquoteによって"/"がデコードされる可能性が
そう。分割しないでデコードするのは、一度にデコードする量を増やして
エラーを出しやすくする(正しくないデコードをされる可能性を減らす)ため。
まあ予防的措置。完璧じゃないが、完璧にやるのは手間に見合わないので。

>unquote後のtryの中のgbkとutf-8を逆にすると>>188と同じ結果
>>182で化けたのは、utf-8でデコードすべきところをgbkでデコードしてエラーが出なかったから。
だから試す順を逆にした。他は前述の通り。

>converted = (convert(i, x) for i, x in enumerate(file("112115.txt", "r")))
これはリストの内包表記ではなくて、ジェネレータ式。
URLリンク(www.python.jp)
ジェネレータだから、convertedの時点ではまだfileは読まれていない。
enumerateもイテレータに対応しているから、writelinesがconverted.next()した時点で
readlineされ、convertされ、writeされる。メモリは一行分あればよい。
ジェネレータ関数の方が解りやすかったとは思うけど、行数が勿体無かったので。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch