タグ付けされた質問 「python-2.4」

23
最初のアイテムを返すPythonイディオムまたはNone
これを行う簡単な方法が、私には起こらないと確信しています。 リストを返す一連のメソッドを呼び出しています。リストは空の場合があります。リストが空でない場合は、最初のアイテムを返します。それ以外の場合は、Noneを返します。このコードは機能します: my_list = get_list() if len(my_list) > 0: return my_list[0] return None これを行うための簡単な1行のイディオムがあるべきだと私には思われますが、私の人生では、それを考えることはできません。ある? 編集: ここで1行の式を探しているのは、信じられないほど簡潔なコードが好きなのではなく、次のようなコードをたくさん書かなければならないからです。 x = get_first_list() if x: # do something with x[0] # inevitably forget the [0] part, and have a bug to fix y = get_second_list() if y: # do something with y[0] # inevitably …

2
Python 3によるPython 2オブジェクトのunpickle化
Python 2.4で、Python 3.4を使用してpickle化されたオブジェクトをロードする方法があるかどうか疑問に思っています。 私はそれを最新の状態にするために、会社の大量のレガシーコードで2to3を実行しています。 これを行った後、ファイルを実行すると次のエラーが発生します。 File "H:\fixers - 3.4\addressfixer - 3.4\trunk\lib\address\address_generic.py" , line 382, in read_ref_files d = pickle.load(open(mshelffile, 'rb')) UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 1: ordinal not in range(128) 競合しているpickle化されたオブジェクトを見ると、これはのdictでありdict、キーとtypeの値が含まれていますstr。 だから私の質問は:もともとPython 2.4でピクルされたオブジェクトをPython 3.4でロードする方法はありますか?

4
Python2.4でファイルを安全に開閉する方法
私は現在、Pythonを使用してサーバーの1つで使用するための小さなスクリプトを書いています。サーバーにはPython2.4.4のみがインストールされています。 2.5がリリースされるまでPythonを使い始めなかったので、次の形式に慣れています。 with open('file.txt', 'r') as f: # do stuff with f ただし、with2.5より前のステートメントはなく、ファイルオブジェクトを手動でクリーンアップする適切な方法の例を見つけるのに問題があります。 古いバージョンのPythonを使用するときに、ファイルオブジェクトを安全に破棄するためのベストプラクティスは何ですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.