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

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

4
HTMLをIPython出力に埋め込む方法は?
レンダリングされたHTML出力をIPython出力に埋め込むことはできますか? 1つの方法は使用することです from IPython.core.display import HTML HTML('<a href="http://example.com">link</a>') または(IPythonマルチラインセルエイリアス) %%html <a href="http://example.com">link</a> これはフォーマットされたリンクを返しますが、 このリンクは、コンソールからWebページ自体を含むブラウザを開きません。ただし、IPythonノートブックは正直なレンダリングをサポートしています。 HTML()リストやpandas印刷されたテーブル内でオブジェクトをレンダリングする方法を知りません。できますがdf.to_html()、セル内にリンクを作成する必要はありません。 この出力は、PyCharm Pythonコンソールではインタラクティブではありません(QTではないため)。 これらの欠点を克服し、IPython出力をもう少しインタラクティブにするにはどうすればよいですか?


3
* argsおよび** kwargsの型注釈
いくつかのインターフェイスを作成するために、抽象基本クラスを使用してPythonの型注釈を試しています。*argsandの可能なタイプに注釈を付ける方法はあり**kwargsますか? たとえば、関数への賢明な引数が1つintまたは2つintのであることをどのように表現しますか?type(args)与えTuple私の推測のようにタイプに注釈を付けることだったのでUnion[Tuple[int, int], Tuple[int]]、これは動作しません。 from typing import Union, Tuple def foo(*args: Union[Tuple[int, int], Tuple[int]]): try: i, j = args return i + j except ValueError: assert len(args) == 1 i = args[0] return i # ok print(foo((1,))) print(foo((1, 2))) # mypy does not like this print(foo(1)) print(foo(1, 2)) mypyからのエラーメッセージ: t.py: …

6
空のnumpy配列に新しい行を追加する方法
標準のPython配列を使用して、次のことができます。 arr = [] arr.append([1,2,3]) arr.append([4,5,6]) # arr is now [[1,2,3],[4,5,6]] しかし、私はnumpyで同じことをすることはできません。例えば: arr = np.array([]) arr = np.append(arr, np.array([1,2,3])) arr = np.append(arr, np.array([4,5,6])) # arr is now [1,2,3,4,5,6] 私も調べましたvstackがvstack、空の配列で使用すると、次のようになります。 ValueError: all the input array dimensions except for the concatenation axis must match exactly では、numpyの空の配列に新しい行を追加するにはどうすればよいですか?
158 python  numpy  scipy 

6
パンダの操作中の進行状況インジケーター
1,500万行を超えるデータフレームでパンダ操作を定期的に実行しており、特定の操作の進行状況インジケーターにアクセスしたいです。 パンダのsplit-apply-combine操作のテキストベースの進行状況インジケーターはありますか? たとえば、次のようなものです。 df_users.groupby(['userID', 'requestDate']).apply(feature_rollup) どこfeature_rollup多くのDF列を取るやや関与関数であり、様々な方法で新しいユーザー列を作成します。大きなデータフレームの場合、これらの操作にはしばらく時間がかかる可能性があるため、進行状況を更新するiPythonノートブックでテキストベースの出力が可能かどうかを知りたいです。 これまでのところ、Pythonの標準ループ進捗インジケーターを試しましたが、意味のある方法でパンダと相互作用しません。 私がパンダのライブラリ/ドキュメントで見落としてきた、split-apply-combineの進行状況を知ることができるものがあることを願っています。単純な実装では、apply関数が動作しているデータフレームサブセットの総数を調べて、それらのサブセットの完了した部分として進行状況を報告します。 これはおそらくライブラリに追加する必要があるものですか?
158 python  pandas  ipython 

6
シェルコマンドを直接実行するのではなく、なぜPythonのosモジュールメソッドを使用するのですか?
os.system()またはでコマンドを実行するのではなく、ファイル/ディレクトリの作成、ファイル属性の変更などのOS固有のタスクを実行するためにPythonのライブラリ関数を使用する背後にある動機は何subprocess.call()ですか? たとえば、なぜ私はos.chmod代わりに使用したいのos.system("chmod...")ですか? シェルコマンドを直接実行するのではなく、Pythonの利用可能なライブラリメソッドをできるだけ使用する方が「pythonic」であると理解しています。しかし、機能の観点からこれを行う背後にある他の動機はありますか? ここでは、単純な1行のシェルコマンドの実行についてのみ説明しています。タスクの実行をより詳細に制御する必要がある場合subprocess、たとえば、モジュールを使用するほうが理にかなっていることを理解しています。

8
pipを使用してSciPyとNumPyをインストールする
配布しているパッケージに必要なライブラリを作成しようとしています。SciPyとNumPyライブラリの両方が必要です。開発中、私は両方を使用してインストールしました apt-get install scipy SciPy 0.9.0とNumPy 1.5.1をインストールしたところ、問題なく動作しました。 pip install自分のパッケージのsetup.pyで依存関係を指定できるようにするために、同じ方法を使用したいと思います。 問題は、私が試したときです: pip install 'numpy==1.5.1' それは正常に動作します。 しかしその後 pip install 'scipy==0.9.0' 惨めに失敗する raise self.notfounderror(self.notfounderror.__doc__) numpy.distutils.system_info.BlasNotFoundError: Blas (http://www.netlib.org/blas/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [blas]) or by setting the BLAS environment variable. どうすれば機能しますか?
157 python  numpy  scipy  pip  apt 

5
ディレクトリにcdすることなく、コマンドラインでPythonスクリプトを使用するにはどうすればよいですか?PYTHONPATHですか?
PYTHONPATHをどのように使用できますか?パスでスクリプトを実行しようとすると、ファイルが見つかりません。スクリプトを保持するディレクトリにcdすると、スクリプトが実行されます。それで、PYTHONPATHは何が良いのでしょうか? $ echo $PYTHONPATH :/home/randy/lib/python $ tree -L 1 '/home/randy/lib/python' /home/randy/lib/python ├── gbmx_html.py ├── gbmx.py ├── __init__.py ├── __pycache__ ├── scripts └── yesno.py $ python gbmx.py -h python: can't open file 'gbmx.py': [Errno 2] No such file or directory $ cd '/home/randy/lib/python' ファイルディレクトリにcdした後、実行されます。 $ python gbmx.py -h usage: gbmx.py [-h] …
157 python  unix 

14
リストの商品を返す
以下を実行するためのより簡潔で効率的な、または単にpythonicな方法はありますか? def product(list): p = 1 for i in list: p *= i return p 編集: これは、operator.mulを使用するよりもわずかに速いことが実際にわかります。 from operator import mul # from functools import reduce # python3 compatibility def with_lambda(list): reduce(lambda x, y: x * y, list) def without_lambda(list): reduce(mul, list) def forloop(list): r = 1 for x in …
157 python 

4
Python strptime()とタイムゾーン?
IPDDumpを使用して作成された、Blackberry IPDバックアップからのCSVダンプファイルがあります。ここの日付/時刻文字列は、次のようになります(ESTオーストラリアのタイムゾーンです)。 Tue Jun 22 07:46:22 EST 2010 この日付をPythonで解析できるようにする必要があります。最初はstrptime()datettimeから関数を使ってみました。 >>> datetime.datetime.strptime('Tue Jun 22 12:10:20 2010 EST', '%a %b %d %H:%M:%S %Y %Z') ただし、何らかの理由で、datetime戻ってきたオブジェクトにはtzinfo関連付けられていないようです。 このページを読んで、明らかにdatetime.strptime黙って破棄しているようtzinfoですが、ドキュメントを確認したところ、ここにドキュメント化されているその効果について何も見つかりません。 サードパーティのPythonライブラリであるdateutilを使用して解析された日付を取得できましたが、組み込みをstrptime()誤って使用していた方法についてまだ知りたいですか?strptime()タイムゾーンをうまく利用する方法はありますか?



3
Pythonでディレクトリを反復処理する
特定のディレクトリのサブディレクトリを繰り返し処理して、ファイルを検索する必要があります。ファイルを取得した場合、そのファイルを開いて内容を変更し、独自の行に置き換える必要があります。 私はこれを試しました: import os rootdir ='C:/Users/sid/Desktop/test' for subdir, dirs, files in os.walk(rootdir): for file in files: f=open(file,'r') lines=f.readlines() f.close() f=open(file,'w') for line in lines: newline = "No you are not" f.write(newline) f.close() エラーが発生します。何が悪いのですか?
157 python  directory 


5
Pythonスクリプトと同じディレクトリにあるファイルを確実に開く方法
次のようなコマンドを使用するだけで、現在実行中のPythonスクリプトと同じディレクトリにあるファイルを開いていました open("Some file.txt", "r") しかし、Windowsでスクリプトをダブルクリックして実行すると、間違ったディレクトリからファイルを開こうとすることがわかりました。 それ以来、私は次の形式のコマンドを使用しています open(os.path.join(sys.path[0], "Some file.txt"), "r") ファイルを開きたいときはいつでも。これは私の特定の使用法でsys.path[0]は機能しますが、他のユースケースで失敗するかどうかはわかりません。 だから私の質問です:現在実行中のPythonスクリプトと同じディレクトリにあるファイルを開くための最良かつ最も信頼できる方法は何ですか? これが私がこれまでに理解できたことです: os.getcwd()os.path.abspath('')スクリプトディレクトリではなく、「現在の作業ディレクトリ」を返します。 os.path.dirname(sys.argv[0])そしてos.path.dirname(__file__)、スクリプトの呼び出しに使用されるパスを返します。これは、相対パスでも、空白でもかまいません(スクリプトがcwdにある場合)。また、__file__スクリプトがIDLEまたはPythonWinで実行されている場合も存在しません。 sys.path[0]そして、os.path.abspath(os.path.dirname(sys.argv[0]))スクリプトのディレクトリを返すように見えます。この2つに違いがあるかどうかはわかりません。 編集: 私がやりたいことは、「含まれているモジュールと同じディレクトリにあるファイルを開く」と表現するほうがよいことに気づきました。つまり、別のディレクトリに書き込んだモジュールをインポートし、そのモジュールがファイルを開いた場合、モジュールのディレクトリでファイルを探します。私が見つけたものはそれを行うことができるとは思いません...
157 python  directory 

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