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

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

5
TemplateDoesNotExist-Djangoエラー
私はDjango Rest Frameworkを使用しています。エラーが発生し続ける Exception Type: TemplateDoesNotExist Exception Value: rest_framework/api.html 私はどうやって間違っているのか分かりません。RESTフレームワークを実際に試すのはこれが初めてです。これはコードです。 views.py import socket, json from modules.data.models import * from modules.utils import * from rest_framework import status from rest_framework.decorators import api_view from rest_framework.response import Response from modules.actions.serializers import ActionSerializer @api_view(['POST']) @check_field_exists_wrapper("installation") def api_actions(request, format = None): action_type = request.POST['action_type'] if action_type …

10
リストのリストから重複を削除する
Pythonのリストのリストがあります。 k = [[1, 2], [4], [5, 6, 2], [1, 2], [3], [4]] そして、そこから重複する要素を削除したいと思います。それが私が使用できるリストではなく、通常のリストであったかどうかsetです。しかし残念なことに、そのリストはハッシュ可能ではなく、リストのセットを作成できません。タプルのみ。したがって、すべてのリストをタプルに変換してから、セットを使用してリストに戻すことができます。しかし、これは速くはありません。 これを最も効率的な方法で行うにはどうすればよいですか? 上記のリストの結果は次のようになります。 k = [[5, 6, 2], [1, 2], [3], [4]] 順序の保存は気にしません。 注:この質問は似ていますが、私が必要としているものとはまったく異なります。SOを検索しましたが、完全な重複は見つかりませんでした。 ベンチマーク: import itertools, time class Timer(object): def __init__(self, name=None): self.name = name def __enter__(self): self.tstart = time.time() def __exit__(self, type, value, traceback): if …
116 python 

1
python3とpython3m実行可能ファイルの違い
/usr/bin/python3と/usr/bin/python3m実行可能ファイルの違いは何ですか? 私はUbuntu 13.04でそれらを観察していますが、Googleは他のディストリビューションにも存在することを示唆しています。 2つのファイルのmd5sumは同じですが、シンボリックリンクまたはハードリンクではないようです。によって返される2つのファイルには異なるiノード番号がls -liあり、テストでfind -xdev -samefile /usr/bin/python3.3は他のファイルは返されません。 誰かがAskUbuntuで同様の質問をしましたが、2つのファイルの違いについてもっと知りたいと思いました。
116 python  python-3.x 

11
JavaでPythonを呼び出す?
jythonを使用してJavaコードからPython関数を呼び出すことは可能ですか、それともPythonからJavaコードを呼び出すためだけですか?
116 java  python  jython 

16
Pythonのログ機能にカスタムログレベルを追加する方法
debug()十分ではないと思うので、アプリケーションにログレベルTRACE(5)を設定します。さらにlog(5, msg)、私が欲しいものではありません。Pythonロガーにカスタムログレベルを追加するにはどうすればよいですか? 私はmylogger.py次のコンテンツを持っています: import logging @property def log(obj): myLogger = logging.getLogger(obj.__class__.__name__) return myLogger 私のコードでは、次のように使用しています。 class ExampleClass(object): from mylogger import log def __init__(self): '''The constructor with the logger''' self.log.debug("Init runs") 今から電話したい self.log.trace("foo bar") よろしくお願いします。 編集(2016年12月8日):承認された回答をpfaに変更しました。これは、エリックSからの非常に優れた提案に基づいた優れたソリューションであるIMHOです。

5
matplotlibのサブプロット間のギャップを取り除く方法は?
以下のコードは、サブプロット間にギャップを生成します。サブプロット間のギャップを削除して画像をタイトなグリッドにするにはどうすればよいですか? import matplotlib.pyplot as plt for i in range(16): i = i + 1 ax1 = plt.subplot(4, 4, i) plt.axis('on') ax1.set_xticklabels([]) ax1.set_yticklabels([]) ax1.set_aspect('equal') plt.subplots_adjust(wspace=None, hspace=None) plt.show()
116 python  matplotlib 


5
「アンパックする値が多すぎます」例外
私はDjangoでプロジェクトに取り組んでおり、ユーザープロファイルを作成するためにユーザーモデルを拡張しようとしています。 残念ながら、私は問題に遭遇しました。user.get_template.lastIPたとえば、テンプレート内にユーザーのプロファイルを取得しようとするたびに(たとえば)、次のエラーが発生します。 環境: リクエストメソッド:GET リクエストURL:http:// localhost:8000 / Djangoバージョン:1.1 Pythonバージョン:2.6.1 テンプレートエラー: テンプレート/path/to/base.tplの19行目のエラー レンダリング中に例外をキャッチ:展開するには値が多すぎます 19:こんにちは、{{user.username}}({{user.get_profile.rep}})。元気?ログアウト 例外タイプ:/のTemplateSyntaxError 例外値:レンダリング中に例外をキャッチ:値が多すぎてアンパックできません 何が起こっているのか、私が間違っているのかについてのアイデアはありますか?
116 python  django 

10
関数の引数としてのPython関数?
Python関数を別の関数の引数にすることはできますか? いう: def myfunc(anotherfunc, extraArgs): # run anotherfunc and also pass the values from extraArgs to it pass したがって、これは基本的に2つの質問です。 許可されますか? そうである場合、他の関数内で関数をどのように使用しますか?exec()、eval()などを使用する必要がありますか?それらを台無しにする必要はありませんでした。 ところで、extraArgsは別のfuncの引数のリスト/タプルです。

5
Pythonコードを1行ずつプロファイリングするにはどうすればよいですか?
私は自分のコードをプロファイリングするためにcProfileを使用してきましたが、うまく機能しています。また、gprof2dot.pyを使用して結果を視覚化します(少しわかりやすくします)。 ただし、cProfile(およびこれまでに見た他のほとんどのPythonプロファイラー)は、関数呼び出しレベルでのみプロファイリングするようです。これは、特定の関数が異なる場所から呼び出されたときに混乱を引き起こします-コール#1またはコール#2が時間の大半を占めているかどうかはわかりません。問題の関数の深さが6レベルで、他の7つの場所から呼び出された場合、これはさらに悪化します。 行ごとのプロファイリングを取得するにはどうすればよいですか? これの代わりに: function #12, total time: 2.0s 私はこのようなものを見たいのですが: function #12 (called from somefile.py:102) 0.5s function #12 (called from main.py:12) 1.5s cProfileは、合計時間がどれだけ親に「転送」されるかを示しますが、レイヤーと相互接続された呼び出しの束があると、この接続は失われます。 理想的には、データを解析して、各行に与えられた合計時間とともにソースファイルを表示するGUIが欲しいです。このようなもの: main.py: a = 1 # 0.0s result = func(a) # 0.4s c = 1000 # 0.0s result = func(c) # 5.0s 次に、2番目の「func(c)」呼び出しをクリックして、「func(a)」呼び出しとは別に、その呼び出しで何が時間がかかっているかを確認できます。 それは理にかなっていますか?この種の情報を収集するプロファイリングライブラリはありますか?私が見逃した素晴らしいツールはありますか?

6
Pythonでファイルまたはディレクトリを再帰的にコピーする
Pythonには、ファイルをコピーするための関数(などshutil.copy)とディレクトリをコピーするための関数(たとえばshutil.copytree)があるようですが、両方を処理する関数は見つかりませんでした。確かに、ファイルとディレクトリのどちらをコピーするかを確認するのは簡単ですが、奇妙な省略のようです。 unix cp -rコマンドのように機能する、つまり、ディレクトリとファイルの両方をサポートし、再帰的にコピーする標準関数は本当にありませんか?Pythonでこの問題を回避する最もエレガントな方法は何でしょうか?
116 python 

17
SQLクエリの結果をPANDASデータ構造に変換する方法
この問題に関するどんな助けでも大歓迎です。 したがって、基本的には、SQLデータベースに対してクエリを実行し、返されたデータをPandasデータ構造として保存します。 クエリ用のコードを添付しました。 パンダのドキュメントを読んでいますが、クエリの戻り値のタイプを特定するのに問題があります。 クエリ結果を印刷しようとしましたが、有用な情報がありません。 ありがとう!!!! from sqlalchemy import create_engine engine2 = create_engine('mysql://THE DATABASE I AM ACCESSING') connection2 = engine2.connect() dataid = 1022 resoverall = connection2.execute(" SELECT sum(BLABLA) AS BLA, sum(BLABLABLA2) AS BLABLABLA2, sum(SOME_INT) AS SOME_INT, sum(SOME_INT2) AS SOME_INT2, 100*sum(SOME_INT2)/sum(SOME_INT) AS ctr, sum(SOME_INT2)/sum(SOME_INT) AS cpc FROM daily_report_cooked WHERE campaign_id = …



2
クラスのモック:Mock()またはpatch()?
私はPythonでモックを使用しており、これらの2つのアプローチのどちらが優れているのか疑問に思っていました(読んで:よりpythonic)。 方法1:模擬オブジェクトを作成して使用するだけです。コードは次のようになります。 def test_one (self): mock = Mock() mock.method.return_value = True self.sut.something(mock) # This should called mock.method and checks the result. self.assertTrue(mock.method.called) 方法2:patchを使用してモックを作成します。コードは次のようになります。 @patch("MyClass") def test_two (self, mock): instance = mock.return_value instance.method.return_value = True self.sut.something(instance) # This should called mock.method and checks the result. self.assertTrue(instance.method.called) どちらの方法も同じことを行います。違いがわかりません。 誰かが私を啓発できますか?

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