Pythonのお勉強 Part62

■ このスレッドは過去ログ倉庫に格納されています
2019/09/15(日) 16:06:00.08ID:E+Kc3PWT0
★当スレにRubyのソースコード類を書くことを禁ず★
☆Ruby等、Pythonではないプログラミング言語での回答類を書くのも禁止
☆「Ruby では」「Rubyでは」をNGワード登録推奨

◆エラーを解決したいときはエラー文(勝手に省略禁止)と
 環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと

◆Pythonのソースコードを5ちゃんにコピペするとインデントが崩壊するので
  ↓等のソースコードうp用サイトに貼ってきてくだしあ
    (スクリーンショットをimgur等にうpる「横着」禁止)
ttp://ideone.com/      デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
ttps://jupyter.org/try    (旧try.jupyter.org)ちょっとめんどうそう。

◇Pythonオフィシャルサイト
http://www.python.org/

◇まとめwiki
ttp://python.rdy.jp/

●関連スレ●
くだすれPython(超初心者用) その44【Ruby禁止】
http://mevius.5ch.net/test/read.cgi/tech/1563969768/

〇前スレ
Pythonのお勉強 Part61
http://mevius.5ch.net/test/read.cgi/tech/1563622784/

次スレの建立は>>985あたりが挑戦する。 [EOF]
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2019/12/18(水) 18:25:29.34ID:cSMQFuD30
>>676
あたまわるい俺的な発想では
「/」でsplitして
ケツから2個削って
「/」を足しながらjoinすればいいのでは。
2019/12/18(水) 18:33:57.98ID:Gu+BjTT0H
最終的にtkinter.filedialog.asksaveasfilenameのinitialdir引数にダイアログ開いたときの初期ディレクトリとして実行ファイルの2つ上のパス名を入れたいんです
やっぱ文字列遊びするしかないのか
2019/12/18(水) 18:37:36.93ID:/Y2Hp80PM
pathlibでやってらいいらしいぜ
ぐぐったらすぐ出てきたけど、なんでやらんかね
import pathlib
p_path = pathlib.Path()
print(p_file.resolve().parent.parent)
だとさ
書き方って何さ。文字列操作の話?
正規表現で削って目的が達成できるならそれも正解だろ
2019/12/18(水) 18:49:32.48ID:N9ghlCsW0
pyinstaller関係なく単にparentディレクトリの取得方法が知りたかったんやね

1. pathlib.Path('..').resolve()
2. pathlib.Path('.').resolve().parent
3. os.path.abspath(__file__ + "/../../")
2019/12/18(水) 18:55:37.81ID:UxVZOQ3N0
他には
os.path.abspath(os.path.dirname(sys.argv[0]) + "/../..")
とか
682デフォルトの名無しさん (ブーイモ MM3e-XoZ/)
垢版 |
2019/12/18(水) 21:54:48.37ID:d3RMttw1M
600です。
毎日、Pythonをいじって
いろいろやってたら慣れてきた!

つか、グクるといろいろ
情報がある!
2019/12/18(水) 23:49:40.43ID:j3JURanB0
改訂2版 Ruby逆引きハンドブック、2018

普通は、こういう本を読んで、どういう関数・スニペットがあるのかを見る。
そしたら、Node.js にも類推適用できる

例えば、Ruby のPathname クラスなら、パス名をオブジェクト指向らしく扱う

path.parent.parent # 親の親へ
expand_path # 絶対パスへ変換する
2019/12/19(木) 00:06:45.34ID:GPG9uResM
これまでjavaを使ってたんですけどpythonとjavaの違いとかを教えてくれるサイトとかありますか
685デフォルトの名無しさん (ワッチョイ 5701-fd2f)
垢版 |
2019/12/19(木) 00:12:56.61ID:Lg0ZbErZ0
横からすみません。
684さんと近い状況だったので、失礼します。
私も悩んでいることがありまして(ry
2019/12/19(木) 00:38:43.46ID:dMnFAlGo0
Python は独特!
インデントの深さで決まるから、ややこしくて仕方ない。
それで、do〜end を使った、Ruby っぽい、Julia が流行ってきた

Ruby のようにメソッドチェーン中心なのは、JavaScript, jQuery, Groovy, Kotlin がある

Ruby のように、Duck Typing 中心なのは、Go
2019/12/19(木) 00:56:05.81ID:ihSprblwM
GoはDuckTypingではない
Rubyみたいなウンコと一緒にするのはやめてください
2019/12/19(木) 07:59:30.92ID:0eo+DnKB
専門学校のコンピュータ・アニメ・ゲーム科卒から数年経ってプログラマーを目指したくなった者なんですがやっぱり未経験者は四年制大学の新卒しか採用されませんか?
やりたい事はAIのプログラミングです
言語はPythonを覚え中です
2019/12/19(木) 08:02:24.02ID:0eo+DnKB
( ゚д゚)ゲッ!
2019/12/19(木) 08:22:41.86ID:0eo+DnKB
やっぱりPythonはやめてKotlinにしました
2019/12/19(木) 08:30:19.54ID:KbDg7MVTa
>>688
ゲームプログラミングできたら問題ないでしょ

UnityかUE4で自然環境シミュレーションできれば写真動画系だったら採用されると思うよ。Houdiniで建物と自然物量産できたら勝ち確。
2019/12/19(木) 08:32:31.16ID:0eo+DnKB
>>691
KotlinにしたのでPythonの勉強はもう辞めました
2019/12/19(木) 08:33:43.77ID:KbDg7MVTa
悲しい……
2019/12/19(木) 08:50:03.60ID:KbDg7MVTa
3D使う機械学習勢増えて欲しいんじゃーー!
2019/12/19(木) 13:15:39.67ID:P8P/C84B0
>>612
俺みたいに
仕事上どうしてもプログラム
書かなきゃいけない人間に
VBAとpythonだけって多そう

単純に手段だと割り切るとこいつら
が一番つかいやすい 
696デフォルトの名無しさん (ワイーワ2 FFdf-hPjh)
垢版 |
2019/12/19(木) 14:18:43.29ID:+cpLTGtZF
>>676
os.path.abspath(os.path.join(sys.argv[0], '..', '..'))
2019/12/19(木) 18:35:50.56ID:UoMpZOx6a
>>686
インデントを深くするなら、その部分を関数にしてしまうという解決策がある
2019/12/20(金) 21:18:16.85ID:mYsBdw2Fa
Nobody learns how to write good software without writing lots lots of bad software first. Don't let fear that your code will suck paralyze you.
2019/12/20(金) 22:11:19.46ID:WigKa+sDa
>>698
なんて?
2019/12/20(金) 22:22:06.89ID:Ftka/HpE0
>>699
Because humans can only learn from experience.
2019/12/20(金) 22:23:11.33ID:Ftka/HpE0
>>696
おおカッコイイ
横レスだが
2019/12/20(金) 23:53:57.17ID:Lbzp6PKj0
愚者は自分の経験に学ぶ
2019/12/24(火) 19:55:20.72ID:E3+btAgr0
>>699
汚いコードでソフト書く経験無しで、きれいなコードなんか書けるわけないんだから
恐れずに突っ込んで行けや。将来自分のコードで自分が麻痺しちゃうかもだけどなw
2019/12/24(火) 21:53:54.19ID:F/I2bRgH0
>>696
from pathlib import Path
str(Path(sys.argv[0]).parent.parent)
705デフォルトの名無しさん (ワッチョイ 5701-fd2f)
垢版 |
2019/12/24(火) 23:12:45.33ID:Ee0zSIox0
北海道のグラサンスーパーハゲザーはここにはこないのー?
2019/12/25(水) 06:15:17.21ID:1fTZ/ZaM0
愚者は経験にすら学ばない。
707デフォルトの名無しさん (ラクペッ MM6b-WN6U)
垢版 |
2019/12/25(水) 19:26:22.86ID:c4p6SG4jM
Python辞めてkotlinの意味がわからん
データ分析や学習機の作成するならPython、Androidアプリ作るならkotlinと
明確にできることが違うんだから
普通は両方やるでしょ
2019/12/25(水) 19:28:34.77ID:1QUwzRuPa
あれ、pythonってandroid版ないんだっけ?
2019/12/25(水) 19:32:44.88ID:1QUwzRuPa
あったけど……これは……なんか違う
710デフォルトの名無しさん (ブーイモ MMed-nYFM)
垢版 |
2019/12/26(木) 19:39:56.06ID:/xegqUpGM
同じ失敗を繰り返すのが人間
2019/12/26(木) 21:50:47.90ID:LO6FMvP80
kotlin+機械学習ライブラリと、java+spring+機械学習ライブラリだと
画像処理ではどっちの方が親和性高いんだろう
712デフォルトの名無しさん (ワッチョイ 8b63-b920)
垢版 |
2019/12/26(木) 22:08:25.11ID:9AkEaWNs0
>>711
スレチだけど、どちらを使っても画像処理が絡むところは差が出ないと思うよ。
713デフォルトの名無しさん (ワッチョイ 01ad-VnBs)
垢版 |
2019/12/26(木) 22:32:03.02ID:Oh9j2tJw0
Pythonプログラムをスマホで作って、
実行したりデバッグできたりしたらいいなーとか
言ってたら、
先輩が、神からやり方を教わったといって
androidをroot権限取得して、loginして、
anacondaをインスコして
jupyter notebookが動くようにしてくれました。
先輩かこいい!
これで通勤電車の中でも勉強できまする!
2019/12/26(木) 22:58:06.73ID:rsJCXr8m0
君の恥ずかしい情報は全て先輩に筒抜けだ
もうすぐ先輩は秘密を守る代わりに君のバックドアを要求してくるぞ
2019/12/26(木) 23:20:52.79ID:V9vPePAWa
jupyterなんかGoogle Colabで使えるじゃん
手間暇かけてアホみたいに端末の電池消費してホッカイロ作らなくても
2019/12/27(金) 00:00:53.41ID:sixEjnLJM
スマホでプログラミングコード入力するのって、端的に言ってめちゃキツくない?アルゴリズムを考えるのには時間かかるけど、ひとたび何を書くか決まったら20文字ぐらいは打つこと決まる感じだし。
スマホ向けのプログラミング環境がある程度流行ってるってことはキーボード慣れてない人はそう思わないってことなのかな。
2019/12/27(金) 01:00:17.73ID:uyqJfPGf0
iPadはガチで開発機として実用に耐え得る性能になりつつある
iPad OS強かった

スマホはどんだけ進化しても、ガチの開発では使えないと思うわ
718デフォルトの名無しさん (ワッチョイ 62b3-KC3b)
垢版 |
2019/12/27(金) 06:36:58.15ID:jn8IXmAW0
スマホで卒論書く人がいる時代だから
2019/12/27(金) 07:29:45.08ID:F6Fl3IcU0
json書き出すときにindent指定すると改行を入れてくれると思いますが、
これ深さが一定以上の場合や配列の場合は改行を入れないといった設定はできませんか?
720デフォルトの名無しさん (ラクペッ MMb7-8n9/)
垢版 |
2019/12/27(金) 08:07:15.62ID:qzzVzMCmM
最近githubのスマホアプリ版が出たから
スマホでのコード確認はだいぶ楽になった
コーディングは時間コスパ悪いから流石にやらない
2019/12/27(金) 11:03:46.70ID:Z74RNOkKa
スマホは入力手段の問題もあるけど
画面の広さの問題もあるんだよなあ
三つ、四つのウィンドウを同時に開けて参照しながら
お互いにコピペして作業するとか全然無理
2019/12/27(金) 11:57:37.04ID:SnoWmlYG0
そもそもスマホは長文を読めるようにはできてない
小説サイトでも一回の投稿が3000文字程度
スマホだとそれくらいしか読めない
だから読む量の上限はLINEみたいに人の発話一行だけ、になる

つまり対話型プログラミングなどという奇想天外な言語があれば入力は簡単になる
2019/12/27(金) 12:07:51.36ID:4C64YFT80
>>716
外部キーボード使えばいいじゃん。
2019/12/27(金) 12:53:32.48ID:sixEjnLJM
>>723
元のレスは通勤電車で勉強出来るって言ってたから、外部キーボードは使えないんじゃない。
外部キーボード使ったらそれなりにはなるだろうけど。
2019/12/27(金) 14:48:34.23ID:bwUz9a5S0
>>719
pprintのcompact/depth/widthオプションで我慢するか
自作のpritty-printerを作るか
2019/12/27(金) 18:28:47.23ID:8rQsohSTa
>>719
継承して自分で機能足すんやで
727デフォルトの名無しさん (ブーイモ MM5e-5DXC)
垢版 |
2019/12/27(金) 20:28:31.35ID:ho7fFXkhM
あのー、ごめんなさい!
スマホでPythonプログラ厶作るの
むちゃ大変ですね
無理っす!

一行入力する間に
会社に着いてしまいますー!
2019/12/28(土) 16:05:03.52ID:B6iJd+jca
なんでスマホで開発するのか……。
実行だけでいいじゃん!(いいじゃん!)
2019/12/28(土) 16:21:52.98ID:juxLPSGV0
そこに開発環境があるからさ!
2019/12/28(土) 16:43:31.74ID:/9L9K2QSr
BlackBerryやCosmo Communicator等に機種変すればいい
それか引っ越し
2019/12/28(土) 16:47:56.49ID:i5ZlQFui0
新幹線の座席に座っておもむろにMacを開いてドヤリング
無論スタバのコーヒーも持ってく
そうすると朝の数十分を優雅に過ごせる
新幹線の雑音によって集中力も上がる

Macであることが重要なので年季の入った中古品でも構わない
2019/12/28(土) 16:56:44.14ID:DiNbgbe70
開いてみているのが5ちゃんねるなことは、秘密だ
733デフォルトの名無しさん (ブーイモ MM5e-5DXC)
垢版 |
2019/12/28(土) 17:16:06.32ID:7pTky8ziM
>>731
大変、申し訳無いのだが
mac使ってる奴は
むかしから馬鹿ばっか

低脳でFランの性格悪いクズばっか

しかし自分では天才だと
思われていると
思い込んでるみたいで、
マジ迷惑な馬鹿

mac使ってる奴を
見てもそうとしか思わない
734デフォルトの名無しさん (ワイーワ2 FF7a-v1fK)
垢版 |
2019/12/28(土) 17:30:14.38ID:5Cng//AmF
>>733
+1
ほんそれ
自分で評価出来ないから他人の評価に乗っかるタイプも多い
735デフォルトの名無しさん (ワッチョイ c033-M7II)
垢版 |
2019/12/28(土) 17:34:17.92ID:IV+pxUJ+0
実行環境であって開発環境ではねーだろ
2019/12/28(土) 17:52:18.56ID:EYxHjYjG0
>>735
2系しかなかったころは
デフォルトで入ってるMac便利いいいい と
もてはやされていたことも
ありました
2019/12/29(日) 09:20:52.44ID:k3T+0Ot70
マカーに虐められてたのかな
738デフォルトの名無しさん (ラクッペ MM4b-f88z)
垢版 |
2019/12/29(日) 10:48:46.08ID:Z1BNUsP5M
マカーは悪質だからな
2019/12/29(日) 12:38:05.57ID:x97pb1MEM
733をいじめたマカーは氏ね!
2019/12/29(日) 16:47:39.25ID:Uu0KGf2R0
遠回りに733が虐げられてて草
2019/12/29(日) 17:01:05.07ID:Zatvbj7h0
マカーに虐められた奴ってこんなにいるんだ
2019/12/29(日) 17:08:59.11ID:1xfCUAk50
今でもマカーって言うんだな
久しぶりに聞いたw
2019/12/29(日) 17:10:40.71ID:inLneFLyM
マカーは陰湿だからな
2019/12/29(日) 17:10:43.92ID:aEuj8e67d
ただし、マカーとアップラーは区別されてる
745デフォルトの名無しさん (ラクッペ MM70-f88z)
垢版 |
2019/12/29(日) 19:04:00.03ID:LyJy0BXZM
まともなサポートのあるPOSIX環境(だった)として嫌々使ってる層もいるだろう
2019/12/29(日) 19:19:45.02ID:52+mfY8r0
その手のサポートを必要とする用途ならふつうRedHat使うだろ。
747デフォルトの名無しさん (ラクッペ MM70-f88z)
垢版 |
2019/12/29(日) 19:44:36.06ID:LyJy0BXZM
ガイジは反応するな
2019/12/29(日) 19:51:33.19ID:UBJCWBbp0
オラクルがマトモなサポートするだろうか
749デフォルトの名無しさん (ブーイモ MM5a-5DXC)
垢版 |
2019/12/29(日) 20:49:52.30ID:Ft0iT9KzM
金をむちゃくちゃ払うと
まともなサポートしてくれるゆよ。
2019/12/29(日) 20:59:13.97ID:2GmPR76J0
何をもってまともなサポートというのか知らんけどとりあえずOracleに調べさせてますので当面しのげるのはでかい
751デフォルトの名無しさん (ブーイモ MMfb-5DXC)
垢版 |
2019/12/29(日) 21:49:18.43ID:+Aq6bfnbM
oracleはどうでもいいけど、
Pythonがムズイ!
ムズカシすぐる!
752デフォルトの名無しさん (ワッチョイ 0101-Nxir)
垢版 |
2019/12/29(日) 22:46:08.50ID:NwgzU6xK0
北海道のグラサンスーパーハゲザーはここにはこないのー?
753デフォルトの名無しさん (バッミングク MMe1-pIXJ)
垢版 |
2020/01/01(水) 21:42:56.90ID:pWVCoBVWM
ちょっと教えて下さい。
https://www.macrotrends.net/2593/nikkei-225-index-historical-chart-data
このページの赤いボタンを押してデータをダウンロードしたいんだけど、
ページのソースを見るとその部分は別フレーム(iframe)になっていて、urlは
https://www.macrotrends.net/assets/php/chart_iframe_comp.php?id=2593&;url=nikkei-225-index-historical-chart-data
となっています。ボタンはid=dataDownload という名前なので、seleniumでfind.element_by_id して
click()を呼んだんだけど、無反応。
実際、ブラウザでそのページを表示してボタンクリックしてもダウンロードできません。
どうも最初のページからじゃないとボタンが反応しないみたい。
でも、最初のページのソースにはボタンの定義がありません。こういう場合、どういう
プログラムにしたらいいんでしょうか?
2020/01/02(木) 00:30:46.51ID:LMKXwhriM
>>753
switch_to_frameしてみて
755デフォルトの名無しさん (バッミングク MMe1-pIXJ)
垢版 |
2020/01/02(木) 01:22:29.85ID:P2pnZexoM
ありがとうございます。switch_to.frame を下記のようにやってみましたが、
無反応です。ボタンは取得できているのですが・・

#coding: shift-jis
from selenium import webdriver
import webbrowser

options=webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--disable-gpu')

driver=webdriver.Chrome(options=options)

driver.get('https://www.macrotrends.net/2593/nikkei-225-index-historical-chart-data')

iframe=driver.find_element_by_id('chart_iframe')
driver.switch_to.frame(iframe)
button=driver.find_element_by_id('dataDownload')

print("button=",button)
#buttonは取得できている

button.click()
#click()には反応しない。
756デフォルトの名無しさん (バッミングク MMe1-pIXJ)
垢版 |
2020/01/02(木) 01:32:50.46ID:P2pnZexoM
あれー、試しに headless モードをコメントアウトしてブラウザを表示してみたら
無事、ダウンロードできてました!
何が違うんですかね。(まぁ表示させても不都合はないかもですが・・)
2020/01/02(木) 01:36:27.83ID:S2gemlf+0
>>756
近頃headlessを検出して弾いてる・・・?
と思うようなサイトがあるようなないような
2020/01/02(木) 01:39:21.62ID:P2pnZexoM
そうなんですか。とりあえずDLできるようになってよかったです。ありがとうございました。
759デフォルトの名無しさん (ワッチョイ 06e9-olRn)
垢版 |
2020/01/02(木) 01:53:12.42ID:FIc9SW3O0
元旦からpython(3.8.1)を触り始めた者ですが、windowsでopencvを使いたくサンプルを漁り以下のプログラムを実行したところ
import cv2
face_cascade_path = "C:\pyprogram\haarcascade_frontalface_default.xml"
face_cascade = cv2.CascadeClassifier(face_cascade_path)

以下のエラーが出ました
cv2.error: OpenCV(4.1.2) C:\projects\opencv-python\opencv\modules\core\src\persistence.cpp:719: error: (-49:Unknown error code -49) Input file is invalid in function 'cv::FileStorage::Impl::open'
何を解決すればエラーが取れるでしょうか?
2020/01/02(木) 03:14:29.75ID:G3T6LOef0
多分

face_cascade_path = r"C:\pyprogram\haarcascade_frontalface_default.xml"



face_cascade_path = "C:\\pyprogram\\haarcascade_frontalface_default.xml"

詳細は 「python 文字列リテラル エスケープ」とかでググってください
761デフォルトの名無しさん (ワッチョイ 4261-BfT8)
垢版 |
2020/01/02(木) 07:51:59.90ID:zQHitxNE0
face_cascade_path = "C:/pyprogram/haarcascade_frontalface_default.xml"
backslashを普通のslashに。
762デフォルトの名無しさん (ワッチョイ 06e9-olRn)
垢版 |
2020/01/02(木) 08:25:00.45ID:FIc9SW3O0
エラーは相変わらずですが、エスケープの方法が解りました。
一歩前進です。ありがとうございます。
2020/01/03(金) 14:55:08.12ID:hATKQL5q0
エディタはvscode入れとけば間違いないない?
2020/01/03(金) 15:01:16.95ID:uRouTW8ia
良いんじゃね
pycharmの方がもっと良いけど
2020/01/03(金) 16:26:39.78ID:HxgvTVlya
pycharmって何がいいん?
2020/01/03(金) 16:30:06.11ID:HxgvTVlya
pycharmってDjango特化した使い方できるんか……ちょっと試そうかな……
2020/01/03(金) 20:11:57.03ID:YHOBOrFJM
Djangoサポートのあるpycharmのエディションは有償だよ
2020/01/03(金) 20:34:35.59ID:RlTNqe2YM
プロジェクト作る時にプロジェクト毎のvenvを同時に作れるとか、Rのプロジェクトも作れるとか便利は便利かな。
2020/01/03(金) 20:47:59.52ID:1QSwQP8U0
有償版使うならpycharmに分があると思う
2020/01/03(金) 21:26:30.27ID:hATKQL5q0
pycharmってそんなにいいのか
2020/01/03(金) 23:30:15.81ID:gZ4KpQGFa
pycharmのDjangoサポートのページ見てるとプロの人が気になってそうなところが羅列されてて普通に勉強になった。
2020/01/04(土) 01:19:00.83ID:+4JyXMQaM
>>770
年2万払うならな
金出さないならvscodeの方が上
2020/01/04(土) 23:12:32.88ID:lHkWE/iU0
>>772
職場でpycharmの有料版、家で無料版使ってるが違いがあるのは分かるがそこまで違う気がしない
vscodeは使ったことない
2020/01/04(土) 23:43:29.83ID:iSDAM2Sw0
>>772
個人用なら年1万円〜6千円(継続利用割引)
2020/01/05(日) 00:37:06.79ID:Q3EjVbhD0
ビジュアライズはsearbornだけ覚えればmatplotは不要だよね?
2020/01/07(火) 20:12:24.97ID:os019MebM
時系列データをmatplotlibでグラフ化して、Sliderウィジェットで横にスクロールさせてるんだけど、スライダーの右に737000くらいの数字が表示されてます。西暦1年からの日数らしいけど、これを消す方法はないですか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況