タグ

PythonとEncodingに関するagwのブックマーク (4)

  • Python でUTF-8, shift_jis, euc_jpなど日本語を使う方法

    [Home] [Setting up Mac OS X] [Python]: [ファイルを読む] 日語を使う Pythonで日語を使う Python 2.4以降では、標準で日語を扱うことができます。 PythonのソースコードをUTF-8で書くには 日語を扱うPythonのスクリプトの中では、UTF-8の文字コードを使うのが 楽です。 Mac OS Xのターミナルで日語を扱う場合は、 ここの「4. Terminalの設定を変える」の 指示に従ってください。 以下、ソースコードの簡単な例を示します。 #!/usr/bin/env python # -*- coding: utf-8 -*- import re jtext = u'子が隠れんぼをしています' print 'jtext has', len(jtext), 'Japanese characters.' if re.se

  • Python3とPython2で両方で動くコードを書こうとしてみた - ラシウラ

    Python3には、2系で作られたコードを3用に変換する案をパッチを生成する2to3というコマンドラインツールが付属してます(体はlib2to3という標準モジュール群)。たとえば、エンコード引数つきのunicode関数でも、そのままエンコード引数が存在しないstr関数に変えるなど、変換も完璧ではないけれど、たいていのコードは3で動くようになります。 しかし、変換してしまうとそのコードは2系では動かなくなります。ということで、2系でも3でも両方で動くようなコードを書くのはどうすればいいか、を考えてみました。 両方で動くようにするには、ない機能を使うわけには行かないので、どうしても共通部分のみでかかざろうえません。なのでお勧めはできないのですけど、一応両方で動かす前提で書くことを考えてみました。 print 関数風にカッコつき呼び出しにする(ただしprintのみの一行で) print(obj

    Python3とPython2で両方で動くコードを書こうとしてみた - ラシウラ
  • Python 3が後方互換性を捨ててでも求めたもの

    Python 3が後方互換性を捨ててでも求めたもの:よりPythonicなPythonを目指して(前編)(2/2 ページ) 8ビット文字列からユニコード文字列へ Python 3.0での大きな変更点の1つに、文字列型の変更があります。文字列型がユニコードベースに変更されたのです。 Python 2までは、組み込みのデータ型「文字列型(str型)」は単なる8ビットのデータ列でした。文字列型はASCII文字列を扱うには都合が良いのですが、日語のように多くの文字集合を持つマルチバイト文字を扱うには不便がありました。 例えば、8ビット文字列では複数バイトで構成される文字列の境界を判別する処理などを自前で行わなければなりません。Pythonはもともと欧米で開発された言語で、日語や中国語のような言語を扱うことは考えられていなかったのです。 Python 1.6および2.0からは、ユニコード文字列型

    Python 3が後方互換性を捨ててでも求めたもの
  • python3で日本語が混ざるとWebページでだけ表示できない » Pythonなんか大嫌い。。。

    results 1 - 1 of about 1 for python3で日語が混ざるとWebページでだけ表示できない. (0.570 seconds)  Sponsored Links ブログ内検索 Python3.0で初めてWebページ(CGI)を作ってみたんですが、なぜかどうやっても表示されない。。。 この問題との戦いで、休日の半分以上を費やしてしまいました。。。。 因みに、戦いの最中、もうこの際と思いPython3.1をインストールしてしまいました。 今後はPython3.1とのお付き合いです。。。 yahoo知恵袋で聞いてみたり、mixiのpythonコミュニティで聞いてみたり。 でも、反応なっしんぐ だったので、(こんな時間だ、そりゃそうだw)自力で解決。 ★ 症状 ★ 日語が混ざったHTMLテキストをブラウザ経由で表示させようとすると下記のエラーが出る。 /va

  • 1