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

Pythonは、マルチパラダイム、動的型付け、多目的プログラミング言語です。これは、学習、理解、使用が迅速で、クリーンで統一された構文を適用できるように設計されています。Python 2は2020年1月1日をもって正式にサポートされなくなりました。それでも、バージョン固有のPythonの質問については、[python-2.7]または[python-3.x]タグを追加します。Pythonのバリアントまたはライブラリ(Jython、PyPy、Pandas、Numpyなど)を使用する場合は、タグに含めてください。

6
作成した変数や関数などをインタプリタのメモリから削除する方法はありますか?
私はこの質問に対する正確な答えを数日間探し続けてきましたが、良いことは何もありません。私はプログラミングの完全な初心者ではありませんが、中級レベルではまだです。 Pythonのシェルにいるときは、次のように入力dir()します。現在のスコープ(メインブロック)にあるすべてのオブジェクトのすべての名前が表示されますが、そのうちの6つがあります。 ['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__'] 次に、たとえば変数を宣言すると、x = 10組み込みモジュールの下のオブジェクトのリストに自動的に追加され、もう一度dir()入力dir()すると、次のように表示されます。 ['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'x'] 関数、クラスなどについても同様です。 最初に利用可能な標準6を消去せずに、これらの新しいオブジェクトをすべて削除するにはどうすればよいですか? コマンドプロンプトウィンドウからすべてのテキストを消去する「メモリクリーニング」、「コンソールのクリーニング」についてここで読みました。 >>> import sys >>> clear = lambda: os.system('cls') >>> clear() しかし、これはすべて、私が達成しようとしていることとは何の関係もありません。使用されているオブジェクトをすべて削除するわけではありません。

6
PythonコードをPEP8準拠に変換するツール
PythonコードがPEP8に準拠しているかどうかを検証するツールがあることを知っています。たとえば、オンラインサービスとpythonモジュールの両方があります。 ただし、Pythonファイルを自己完結型のPEP8有効なPythonファイルに変換できるサービスまたはモジュールが見つかりません。誰かがいるかどうか知っていますか? PEP8はすべてコードの外観に関するものなので、実現可能だと思いますよね?

5
マルチプロセッシング:複数のプロセス間でディクテーションを共有するにはどうすればよいですか?
結合可能なキューで動作するいくつかのプロセスを作成し、Q最終的にグローバルディクショナリDを操作して結果を保存するプログラム。(したがって、各子プロセスはDその結果を格納し、他の子プロセスが生成している結果を確認するために使用できます) 子プロセスでディクショナリDを印刷すると、ディクショナリ(つまり、D)で行われた変更が表示されます。しかし、メインプロセスがQに参加した後、Dを出力すると、空の辞書になります。 同期/ロックの問題であることを理解しています。ここで何が起こっているのか、Dへのアクセスを同期する方法を誰かに教えてもらえますか?



12
Pythonでlist.index(might-not-exist)を処理する最良の方法?
次のようなコードがあります。 thing_index = thing_list.index(thing) otherfunction(thing_list, thing_index) わかりましたので、それは簡略化されていますが、あなたはアイデアを得ます。現在thing、実際にはリストにない場合がありthing_indexます。その場合、-1をとして渡します。他の言語では、これはindex()要素が見つからなかった場合に返されるはずです。実際にはをスローしValueErrorます。 私はこれを行うことができます: try: thing_index = thing_list.index(thing) except ValueError: thing_index = -1 otherfunction(thing_list, thing_index) しかし、これは汚い感じValueErrorがします。さらに、他の理由で発生する可能性があるかどうかはわかりません。ジェネレーター関数に基づいて次の解決策を考え出しましたが、少し複雑に見えます。 thing_index = ( [(i for i in xrange(len(thing_list)) if thing_list[i]==thing)] or [-1] )[0] 同じことを達成するためのより明確な方法はありますか?リストがソートされていないと仮定しましょう。
113 python  list  find  indexing 



1
Django:外部キーの衝突に対するリバースアクセサー
基本クラスから継承する2つのDjangoモデルがあります。 - Request - Inquiry - Analysis リクエストには、組み込みのユーザーモデルに対する2つの外部キーがあります。 create_user = models.ForeignKey(User, related_name='requests_created') assign_user = models.ForeignKey(User, related_name='requests_assigned') 何らかの理由でエラーが発生します Reverse accessor for 'Analysis.assign_user' clashes with reverse accessor for 'Inquiry.assign_user'. 私が読んだことはすべて、を設定するrelated_nameことで衝突を防ぐ必要があると述べていますが、それでも同じエラーが発生します。なぜこれが起こっているのか誰でも思いつくことができますか?ありがとう!
113 python  django 




9
dictのように機能するpythonクラス
のように動作するカスタムクラスを記述したいdictので、から継承していdictます。 しかし、私の質問は、dict「__init__()メソッドでプライベートメンバーを作成する必要がありますか?」です。dict単純にから継承した場合はすでに動作しているため、この点はわかりませんdict。 ほとんどの継承スニペットが以下のように見える理由を誰かが指摘できますか? class CustomDictOne(dict): def __init__(self): self._mydict = {} # other methods follow 単純な代わりに... class CustomDictTwo(dict): def __init__(self): # initialize my other stuff here ... # other methods follow 実際、この質問に対する答えは、ユーザーがあなたの辞書に直接アクセスできないようにすることだと思います(つまり、ユーザーはあなたが提供したアクセス方法を使用する必要があります)。 しかし、配列アクセス演算子は[]どうですか?それをどのように実装しますか?これまでのところ、[]演算子をオーバーライドする方法を示す例は見ていません。 その場合は[]、アクセス機能は、カスタムクラスで提供されていない、継承された基本法は、異なる辞書上で動作するのでしょうか? 次のスニペットを試して、Python継承の理解をテストしました。 class myDict(dict): def __init__(self): self._dict = {} def add(self, id, val): self._dict[id] = val md = …
113 python  dictionary 

7
リストのPythonのappend()と+演算子、なぜこれらの結果が異なるのですか?
なぜ、これらの2つの操作が(んappend()RESP。 +)異なる結果を与えますか? >>> c = [1, 2, 3] >>> c [1, 2, 3] >>> c += c >>> c [1, 2, 3, 1, 2, 3] >>> c = [1, 2, 3] >>> c.append(c) >>> c [1, 2, 3, [...]] >>> 最後のケースでは、実際には無限の再帰があります。c[-1]とc同じです。どうして+手術と違うの?

6
メモリに画像を読み込まずに画像サイズを取得する
次の方法でPILを使用して画像サイズを取得できることを理解しています from PIL import Image im = Image.open(image_filename) width, height = im.size ただし、画像をメモリにロードせずに画像の幅と高さを取得したいと思います。それは可能ですか?私は画像サイズの統計のみを行っており、画像の内容は気にしません。処理を高速化したいだけです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.