くだすれPython(超初心者用) その52【まず1嫁】
■ このスレッドは過去ログ倉庫に格納されています
当スレに★Python以外のプログラミング言語での回答類を書くべからず★ 派生言語はそれぞれ専スレがあるのでそっち池。 「Ruby」「某言語では」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。 このスレッドは「お勉強」スレのほうには書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。 ★エラーを解決したい場合は、 表示されてるエラー全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、 実行環境(Pythonのバージョン・OSとIDEの種類とバージョン)をシッカリ書くこと。 【【【複数の連続半角スペースはなかったことになる・タブがうまく入らない5chの仕様】】】に注意! Pythonの★ソースコードをそのまま5ちゃんにコピペすると、インデントが崩れてチヌ★ので ↓等の、いわゆるコードうp用サイトに貼ってこいください。 ttps://techiedelight.com/compiler/ Run Code機能あり。 ttp://ideone.com/ デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ◇Python公式サイト◇ http://www.python.org/ ◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi 〇前スレ〇 くだすれPython(超初心者用) その51【まず1嫁】 https://mevius.5ch.net/test/read.cgi/tech/1602896738/ 次スレは >>985 あたりが挑戦してくだしあ。(980過ぎて自動落ちは、無くなって久しい) ### END OF TEMPLATE ### 文字列の分割について質問です 以下のコードで、最初と最後の空文字列を取って表示する方法はないでしょうか? https://paiza.io/projects/ar6X8-2ECCzq2wtbKmhSiA pop()を使えばできますが、事前に表示させないようにする方法はないでしょうか? [x for x in msg.split() if len(x) > 0] >>4 >>5 参考になりました ありがとうございました >>6 すいません、書き込んでる途中でした ありがとうございました if文の判定で関数を使うときにその関数結果をIF分の中で使用するのですがスマートな書き方はありますでしょうか 以下のように毎回関数ABを先実行して変数に格納するように工夫してみたのですがちょっと無駄が多いかなと。。 if 関数A is not None: cv2.imshow(関数A , img) elif 関数B is not None: cv2.imshow(関数B , img) ※関数Aは2回実行される ↓ kansu_Afile = 関数A kansu_Bfile = 関数B if kansu_Afile is not None: cv2.imshow(kansu_Afile , img) elif kansu_Bfile is not None: cv2.imshow(kansu_Bfile , img) ※最初に関数ABが実行される root.titleで指定してもウィンドウは開くけど開いた窓にタイトルがつかないのは何故ですか? >>12 さん ありがとございます。代入式というのがあるのですね 教えてもらった内容でうごきました >>13 e.s.p.してみる 失敗する方 root.title = u'abc' 成功する方 root.title(u'abc') 但し root.title = u'abc' してしまったあとに root.title(u'abc') しようとしても関数が無いと言われるだろうな 先日初めてプログラミング言語を勉強し始めた初心者の者なのですがpipがダウンロード出来ずに困ってます ネット色々と調べget-pip.pyというものをダウンロードしてコマンドプロントからダウンロードしてみたり環境変数から色々と触ってみたりはしていますがどれも全く上手くいきません どなたか分かる方はいらっしゃいますでしょうか? python -m pip install hogehoge 無駄でした そもそも上でも書いてある通りpipがダウンロードされていないみたいなのでそれが出来ずに困ってます WindowsならマイクロソフトストアからPythonインストールするのが楽だと思う >>15 ありがとうございます。 いろいろ試してみたらChromebookの仮想環境だとなぜかタイトルがでなくてWindowsマシンだとちゃんとでるようです。 vscode使用tkinterは8.6のようです すみませんお騒がせしました。 ほかの標準ではいってるようなアプリもウィンドウタイトルでてないので多分Chromebook側の仕様ということで自己解決しました リネーム処理はpowershellとpythonどちらがいいのでしょうか? フォルダの先頭ファイルをフォルダ名としたいですが、powershellはマイナー言語なんでしょうか?あん 書きやすい方でいいのでは?あん Pyhonにもpathlibを使えばパスの扱いは困らない >>22 Python使った方がまちがいがおきにくいあん すいません。JavaとPythonはどっちが飯食えますか? 一番ラクに稼げる言語ってなに? 教えてエロい人 リネーム処理に一般的に使われるのはどっちなんでしょうか? >>27 そこに拘る理由が分からん 「組み込みシステムに一般的に使われるのはどっちなんでしょうか?」とかなら向き不向きが分かれるが、リネームなんてピンポイントかつ些末な処理はどの言語でも普通にできるから >>25 基本、自社開発系ベンチャーのRuby vs SES 系のJava土方の2大勢力 YouTube で有名な、雑食系エンジニア・KENTA は、Rubyで、 逆に、SES 系のモローは、Java, PHP Ruby on Rails の学校で大儲けしたのは、マコなり。80万円ぐらい。 一方、最安値は、東京フリーランスのデイトラで、10万円 Java は奴隷だから、誰でも受かる。 PHP も、KENTAのサロンで誰かに聞けば十分 SES奴隷土方になりたくない香具師が、大金を払って、学校へ行って、 自社開発系ベンチャーを目指す Python は、どちらでもない。 MIT など、理系の大学院生だけ NG推奨ワード: 自社開発系 ベンチャー Ruby 土方 YouTube 雑食系 KENTA モロー Rails 大儲け マコなり フリーランス デイトラ 奴隷 サロン 香具師 大金 学校 理系の大学院 >>22 PowerShell よりも、Ruby が簡単。 ただし、DryRun なので実際には実行されません。 ファイル名には、拡張子がない場合だけに対応しています require 'fileutils' parent_dir = 'c:/users/owner/documents/test' src_dir = parent_dir + '/abc' # 絶対パスのディレクトリ名の後ろに、* を付けること! # . で始まる、隠し directory, file を除く file_name = Dir.glob( src_dir + '/*' ) .select { |full_path| File.file?( full_path ) } # ファイルのみ .map { |full_path| File.basename( full_path ) } # ファイル名のみ .sort.first # ソートして、最初のファイル名 dest_dir = parent_dir + '/' + file_name # フォルダ名を変更 FileUtils::DryRun.move( src_dir, dest_dir ) 表示 mv c:/users/owner/documents/test/abc c:/users/owner/documents/test/a >>30 キーワードに反応して定型文を返すだけのbot? 2021/1/1 AWS のトップYouTuber・くろかわこうへいの転職話。 SES 奴隷から抜け出して、自社開発系へ転職 年収100万上げて自社開発企業に転職したらSESの営業がキレて大ゲンカした話 【オキテ破りのギリギリ転職術】 https://www.youtube.com/watch?v=CFs41De_KGw message = "2021-01-01 00:00:00" df.query(f"Time != {message}") Pandasで特定の時間の行だけ省きたいのですが、上記のように書くと空白のせいかinvalid syntaxが出てうまく動きません dt.strptimeでdt型にしてみたりもしたけと変わりませんでした バグですかね?何かいい方法無いですか? >>29 powershellってマイナーなのかなと >>36 to_datetimeメソッドで変換してしまうとか ブールインデックスを使うとか 「pandas query 日付」とかで検索してみると良いかも https://daizyu.com/posts/2020-05-18-001/ query()の中で変数は@でも参照できるよ df.query('Time != @message') 『独習Python』という本に, data1 = 'abc' data2 = 'abc' とすると,data1 == data2 も data1 is data2 も両方ともTrueになると書いてあります. 一方で, 「この挙動はあくまで内部的なものです.文脈によっては,str(文字列型)であっても,「同値であって同一ではない」という状況は発生します.」 と書いてあります.data1 is data2 がFalseになる状況というのはどんな状況なのでしょうか? a = "abc123" b = f"abc{122+1}" a == b >> True a is b >> False >>39 この例は処理系が同じリテラルがハードコードされている事を「たまたま」理解出来るから無駄を無くすために”abc”を使い回してるだけ 基本的にisは偽になると考えるべき 普通、文字列の比較に、同一インスタンスかどうかは考えない 普通は、同じ文字列かどうかの意味。 異なるインスタンスでも、同じ文字列なら等しいと考えるべき まあ代入と等号比較ってのはどの言語でも気にするべき内容だわな。 >>38 ありがとうございます @使ったら普通に動きました あとこの抜き出したデータフレームに含まれてない物だけを抜き出して新しいデータフレームを作りたいのですが、方法ってありますかね? やりたい事としては2つのdfの単純な差集合を取りたいだけです 50,000、5,000、500 こういうのをre.searchで正規表現を使って数字のみ抽出しようしてるんだけどうまく抽出できないのでどうすればいいか教えてください まずはカンマを除去する 次に、でsplitする すると、文字列での数字が得られる プログラミング覚える前にググり方覚えたら? そのものズバリがすぐ見付かるだろ localhost:8080でhello worldの立ち上げに成功したんだけど 試しにpythonで requests.get(url='http://localhost:8080/' ) ってやってもHTTPConnectionPool(host='localhost', port=8080): Max retries exceeded with url:みたいなエラーでるなんで・・ 自己解決 docker内でやってたんだけど ホストPCに戻ってhostname -IでホストPCのipアドレス取得して localhostのとこをそのホストPCのipアドレス指定して requests.get(url='http:// ホストPCのIPアドレス:8080/') ってやったら取得できた お騒がせしました 形がほぼ同じで、色合いだけ違うものを区別して認識させる方法ってありますか? OPENCVでグレースケールとカラー両方試してみたのですが、色違いポケモンご認識してしまいます。 >>55 形が同じだとわかってるなら、 どこの色をチェックすれば違いがあるかもわかっているだろう たとえば全体をHSVにcvtColorしてH成分のヒストグラム作ってみるだけでもわかりそうなもんだけど ファイアウォールなどで、localhost を定義していない場合には、アクセスできない その場合は、Local Loopback Address(127.0.0.1)でアクセスする >>57 普通のOSはhostsにlocalhostが書いてあるからいみふ 表計算では難しいデータ処理がしたくて google colabでpythonを触り始めた初心者です。 全て整数のa:時間、b:測定値からなる 2列の時系列csvデータがあります。 測定値bが前の時間より低下した場合、 bが元の値に戻るまでの時間をデータ列cとして 下のように元のcsvに追加したいのですが pythonではどのように記述すれば良いでしょうか? a b Δb c 1 100 0 0 Δb<0で無ければc=0 2 97 -3 3 100まで戻る時間 3 95 -2 1 97まで戻る時間 4 99 4 0 5 102 3 0 6 101 -1 4 102まで戻る時間 7 97 -4 2 101まで戻る時間 8 93 -4 1 97まで戻る時間 9 97 4 0 10 102 5 0 疑似コードならこんなもんか for i in 各行: __Δbを求める __if Δb>=0: continue __c=∞ __for j in i+1, ...: ____if b[j]>=b[i]: ______c=j-i ______break Pytorchのfor文内で定義した変数ってローカルスコープになるんだっけ? VSCodeのpylanceでfor文の外で変数呼ぼうとすると未定義だって言われる 言語によってぐちゃぐちゃだからよくわからん >>58 MySQL とか、色々なアプリで、localhost で接続できない場合がある。 その際、127.0.0.1 でアクセスできる場合がある 頻出パターン >>61 Pythonでローカルスコープが作られるのは 関数とクラスのメソッドの中だけという認識でいるがどうか google colabでtecogan使えます? 初心者です 環境構築の際WSLで過度にメモリ消費しないようにしたいんですがユーザーフォルダへの.wslconfigの作成はどのようにしたら良いのでしょうか >>66 なにをもって「過度」となすか定義せよ でもって コンフィグでどうこうじゃなく、 自分がメモリ消費量が常になるべく小さくて済むコードを書く方がよっぽど大事なのでは んでもって WSLの環境設定どーのこーのはPythonちゃうわスレチ >>60 >>62 ありがとうございます。 >>62 のリンク先のでを動かせました。 tecoganで動画をモザイク除去したいのですが、anaconda環境がいいのでしょうか? 動画モザイク除去ってなんのライブラリがいいんでしょうか?tecoganだと情報がない if a in c or b in c: この場合ってまずaとcの処理が行われてマッチした時点で後ろの処理はせずに終了という認識でおk? >>75 orがショートサーキットで評価されるかということならYes a in c でaが見つからなければcが2回評価されるので cの内容次第では違うやり方にしたほうがいい場合がある >>79 なんでこれでうごくか分からないんだけど参考になる記事とかない? >>79 これは全然意味違うでしょ aがtruthyなら(a or b)はa aがfalsyなら(a or b)はbの評価結果 (None or ‘b’)なら’b’ う動くif文のがこわいよね そのまま動いてて何ヶ月か後に実は意図した条件をすり抜けていたとか気づいたりすることも… PHPのexec経由だとPyTorchをインポートできない件で、諸兄のお知恵をお貸しいただけないでしょうか。よろしくお願いします。 環境は以下の通り。 Ubuntu 18.04 Python 3.6.9 PHP 7.4 PyTorch 1.7.1(本家サイトの通り、pipをpip3にしてインストール) コマンドライン $ python3 >>> import torch ファイル経由(ファイル名test.py) import torch $ python3 test.py は問題ないのですが、上記のtest.pyをPHPで exec('/usr/bin/python3 test.py', $output); などとすると動きません。 Traceback (most recent call last): File "test.py", line 1, in <module> import torch ModuleNotFoundError: No module named 'torch' (Apacheのエラーログ) またnumpyならばexec経由でもエラーになりません。 パス関係は以下の通りです。 $ pip3 show torch Name: torch Version: 1.7.1+cpu (中略) Location: /home/ユーザー名/.local/lib/python3.6/site-packages >>85 の続き コンソールではパスも通っています。 >>> import pprint >>> import sys >>> pprint.pprint(sys.path) ['', '/usr/lib/python36.zip','/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/home/ユーザー名/.local/lib/python3.6/site-packages','/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages'] が、PHPのexecでは import pprint pprint.pprint(sys.path) の結果をprint_rで出力するとパスが通っていません。 [0] => ['/usr/lib/python36.zip', [1] => '/usr/lib/python3.6', [2] => '/usr/lib/python3.6/lib-dynload', [3] => '/usr/local/lib/python3.6/dist-packages', [4] => '/usr/lib/python3/dist-packages'] そこでパスを追加してみました。 import sys, pprint sys.path.append('/home/ユーザー名/.local/lib/python3.6/site-packages') pprint.pprint(sys.path) [0] => ['/usr/lib/python36.zip', [1] => '/usr/lib/python3.6', [2] => '/usr/lib/python3.6/lib-dynload', [3] => '/usr/local/lib/python3.6/dist-packages', [4] => '/usr/lib/python3/dist-packages', [5] => '/home/ユーザー名/.local/lib/python3.6/site-packages'] とパスが通っていると思うのですが、 import sys, pprint sys.path.append('/home/ユーザー名/.local/lib/python3.6/site-packages') import torch の結果はやはりModuleNotFoundErrorになってしまいます。 また以前に構築した2つの環境ではexec経由でimportできていて、最近構築したこの環境でのみ発生します。関係ないと思いますが、以前からの環境はさくらVPSとWSL、新環境はWindows 10のHyper-V。OSやソフトは同一です。 何か落ち度や見落とし、情報不足などありましたらご指摘いただけますと幸いです。 cd /usr/local/lib/python3.6 ln -s /home/user/.local/lib/python3.6/site-packages 動的にパス設定してるなら これで動きそう >>87 ご教示ありがとうございます。 が、ダメでした。 lnで作った/usr/local/lib/python3.6/site-packages をdist-packagesにリネームしたりもしましたが、やはりModuleNotFoundErrorです。すみません。 /home/ユーザー名/.local/lib/python3.6/site-packages のディレクトリ/ファイルのアクセス権の制限とかは? home 755 user 755 .local 775 lib 700 python3.6 700 site-packages 700 torch 775 torch-1.7.1+cpu.dist-info 775 で、所有者&グループはこのユーザーディレクトリのユーザー(動いている環境も同様)でした。 >>86 PyTorchじゃないけど、pywin32とかで必要なダイナミックリンクライブラリが揃ってないときに、 DLLロードエラーが最終的にModuleNotFoundErrorになったのをこないだ見た。 コンソールにはライブラリ読み込み失敗とか出てるような気がするので、コンソールをもっと詳しく見てみては? パッケージのダメな箇所をどんどん特定していってなんのライブラリ読み込み失敗してるか掘ってみていかないとダメかもしれないけど。 python 3.8をインストールしコマンドプロンプトから起動 pipでライブラリをインストールしようとしましたが、 NameError: name 'pip' is not defined とでてインストールできません。 どうしたらいいんでしょうか? >>93 pipはPython内のコマンドではないので、コマンドプロンプトを開いたら 直接pipを使ってみてください 画像のモザイクやら消したい場合、 学習の第一歩って何になるんでしょうか? inpaintingというのがあるらしいですが、チュートがないです opencvだとaiと言えるのでしょうか モザイク消し ではなくて オレ今まで一杯モロ画像見てて絵も写真くらいの精度で描けるんだけど、 こういうモザ画像の中ってこんな感じだと結構自然じゃね? という機能 モザイクと言わず完全に隠されてても保管してくれるからGANはすごい技術だ 俺も勉強したい >>86 ユーザー名に、半角英数字以外の妙な文字が入っていないですか? /home/ユーザー名/.local/lib/python3.6/site-packages に、 別のモジュールを作って入れてみて、正常に動くか確かめてみれば? 他には、sys.path.append で追加するよりも前に、import されているとか? 正しい順番を、設定ファイルか何かで、確定させる必要がある カーネルのログを見てみるとか、 起動オプションに、エラーログの詳細表示を付けてみるとか あまりにも、エラーの可能性が広すぎる。 ファイルの文字コードの違いとか、考えられる要因が多すぎて、絞れない ここは成功、ここは失敗と、 何か、切り分けないといけない おまいらのエロに対する情熱が伝わってこないから教えてやらない >>96 >>97 チュートがあんまりないんですおよね、、、 ganの基礎からやるといいんんですか? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる