タグ

encodeに関するsnaka72のブックマーク (2)

  • Python Tips

    このページは Python 2.3 くらいのときに書かれたものです。 内包表記とλ式 >>> fs = [ lambda: i for i in range(8) ] >>> fs[2]() 7 各 i ごとにクロージャが生成されるのではなく、ひとつのクロージャで i の値が書き換えられるため、このような結果になる。これは期待した動作ではないと思う。 同じ問題は for ループでも起こる。 >>> for i in range(8): ... fs.append( lambda: i ) ... >>> fs[2]() 7 これは、デフォルト引数をうまく使えば回避できる。 >>> fs = [ lambda i=i: i for i in range(8) ] >>> fs[2]() 2 デフォルト引数 これは Tutorial にも載っているけど。 >>> def f(xs = []):

    snaka72
    snaka72 2009/12/06
    pythonでの簡易文字コード判定は参考になる
  • UTF-8の文字列をコンソールに出そうとしたけど出せなかった - Richard蒸しパン工場

    なんとなくTwitterのタイムラインをWin32 APIバリバリで取得してみようと頑張ってたんですが、どうも文字を出力するところで納得がいかなかったので憂さ晴らし。 WindowsのコンソールでUTF-8の文字列を出力しようとするとき、以下のようなパターンがあります。 Shift JISに変えて表示 MultiByteToWideCharでUNICODEに WideCharToMultiByteでShift JISに printfなどで表示 UNICODEに変えて表示 setlocale(LC_ALL, "japanese") MultiByteToWideCharでUNICODEに wprintfなどで表示 そのまま表示 これの3つ目がどうやってもできませんでした。setlocale(LC_ALL, "japanese_japan.65001")で出来んじゃないか?と思ったんですが、リ

    UTF-8の文字列をコンソールに出そうとしたけど出せなかった - Richard蒸しパン工場
  • 1