Pythonのお勉強 Part63
■ このスレッドは過去ログ倉庫に格納されています
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに増やすこと。
★当スレにRubyのソースコード類を書くことを禁ず★
☆Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
☆「Ruby では」「Rubyでは」をNGワード登録推奨
★エラーを解決したいときはエラー文(勝手に省略禁止、スクショうp等の横着も禁止)と
環境(Pythonのバージョン+OS名IDE名と夫々のバージョン)をシッカリ書くこと
◆Pythonのソースコードを5ちゃんにコピペするとインデントが崩壊するので
↓等のソースコードうp用サイトに貼ってきてくだしあ
(スクリーンショットをimgur等にうpる「横着」禁止)
ttp://ideone.com/ デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Pythonオフィシャルサイト http://www.python.org/
◇まとめwiki ttp://python.rdy.jp/
●関連スレ●
くだすれPython(超初心者用) その46【Ruby禁止】
http://mevius.5ch.net/test/read.cgi/tech/1577948214/
〇前スレ
Pythonのお勉強 Part62
http://mevius.5ch.net/test/read.cgi/tech/1568531160/
次スレの建立は>>985あたりが挑戦する。 [EOF]
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured >>308
Pythonスレで聞くような話しか?
そりゃPythonで作ったらええやん
まあPythonでSeleniumとか、場合に応じてheadless chromeとか使えばいいのでは やるならインスタAPI使わないといけないんじゃないかな
インスタは確かスクレイピングは規約でNGされてて数日でアクセス禁止にされるぞ kivy使いたいんだが古い記事しかない
Tkinterにした方がいいのかな?
おすすめのkivy記事とかありますか?
古い記事でも大丈夫なのかな 英語読めないとかじゃなければ問題ないけど今のところkivyでの開発は趣味の領域かと個人的には思う >>314
恥ずかしながら英語が読めないんですよね
英語ってどうやって勉強すればいいんですかね?
学校だと適当に歌を歌って音読して終わりって感じなので家で学習したいんですけど、やり方がわからないです。 興味のある分野の英語をどんどん読む
分からない単語は片っ端から辞書で引く 実用英語技能検定の4級から勉強しる
そして試験に挑め >>315
英語でコメントが書いてあるプログラムを読めば良い。英語もわかるし、プログラムもわかる! プログラミング初心者です。FlaskでWebアプリの開発に挑戦しました
AWSのLightsailでApacheを使ってデプロイするところまでは出来たんだけど、変数関連でたまにエラーが起きる。ログには変数の定義が出来ていないと言われる。でもページをリロードすると問題なく動いたりする。もう一度リロードするとまたエラーが出たりする。
グローバル変数で問題が起きてるっぽいんだけど、原因が分からない
def hoge()
global hoge
hoge = huga
return hoge
書き方はこれであってますよね?
あと、一番安いプランで契約してるんで、メモリが512MBしかなくカッツカツです。これが原因で変数が自動で解除されてる可能性ってあります?memory errorは出てないです。環境はUbuntu 18.04でPython3.6.9です
また開発はローカルのWin10で行い、こっちでは問題なく動いています。ただPythonのバージョンが違い、こちらは3.8.3です。バージョンの違いでこういったエラーは起きるものですか? グローバルを返す意味が分からん。そもそも:がないけどそれは? >>323
hogeは関数なのか変数なのかどっちなんだよ すいません>>323です。実際のコードは
@app.route('/start',methods=['POST','GET'])
def start():
〜中略〜
global present
present = request.form.get("present")
〜中略〜
@app.route('/confirm',methods=['POST','GET'])
def con():
sql = "select * from plist where list='{0}'"
cur.execute(sql.format(present))
〜中略〜
としたところ
NameError: name 'present' is not defined
が表示されます。requestで受け取れていないのかな?と思い別の方法で確認しましたが、受け取っていることは確認しました。 >>329
con()の中で使ってる’present’はどこで定義されてるの? >>330
start()内のglobal presentではだめなんですか?ここ以外の箇所では同じような書き方でエラーも起きないのですが >>331
start()が呼ばれてはじめてpresentが定義されるということ?
/confirmでアクセスした時に/startでアクセスした時に生成されたのと同じインスタンスに接続される保証ってあるのかな? >>332
そうですね。start()が呼ばれないとpresentは定義されません。しかし設計上、いきなりconfirmにアクセスすることはないと思います
start以外からアクセスするにはURLを直に入力しないといけませんし、ユーザー側がそうするような状況にはならないと思います
それに今はstartからconfirmにアクセスした時でも、presentが定義されていないとエラーが出るので困っています
しかもローカルの開発機だと、全く同じ書き方でエラーは起きず、しっかりとcon()の中でもpresentが定義されており、本番環境でのみこのエラーが発生しているので困っています >>333
例えば/startでアクセスした時と/confirmでアクセスした時で
サーバー上の違うプロセスに接続されたらどうなるの?
HTTPはstatelessだからどこかに永続化しておいてそれを読み込んだり
クライアントから情報を渡し直したりしないと
前回アクセスした時の情報がそのまま残ってる保証はないよ 本番・テスト環境は、セキュリティーが異なる
本番では、簡単にアクセスできないように制限しているのかも >>334
そこまでは考えていませんでしたね…startからそのまますぐにconfirmに移動したときにでも別のプロセスにつながる可能性があるのですか?
>>335
セキュリティの問題もあるんですかね…?セキュリティに関してはまだまだ勉強不足でよく分かっていない点も多いです クラウドなんだからバックグラウンドも単一プロセスが保証されるわけじゃないもんなぁ >>337
勉強不足でした…だから同じ操作をしてもエラーが起きたり起きなかったりしたんですね…起きなかったのはたまたま同じプロセスに繋がっただけってことで
理解出来ました。ありがとうございます。設計を見直してみますね Atom使っているんですけど、実行した時にターミナルで表示させる方法ありますか? もう、google先生なしにはプログラム書けない。
「あれhashで存在しないkeyを指定するとプログラムが止まる?何故?」
そんな時にはgoogle先生 。
なんでも教えてくれる 。
素人には心強いw >>341
Atomは今すぐやめてVSCodeに乗り換えよう
VSCodeに敗北し開発元もMSに買収されて事実上開発終了
完全に死んだエディタ VSCode では、マークダウンファイルにも、syntax highlight が効く
```Ruby
ここに、Ruby のソースコードを書くと、カラフルに表示されて、ワロタ
``` >>342
気がつかないか
既に君はAndroid 「 関数とかif文をカッコ{}で囲まないのはダメだ」って散々言ってたけど。
実際書いてると無い方が楽かもw カッコを付けるとエディタが助けてくれるという
メリットがある スレチだったら本当に申し訳ないんですけど
selenium IDEを使って毎日特定のページからダウンロードしている
作業を自動化したいんですけど、selenium IDEだとファイル保存することまでは
自動化できないんでしょうか?
ファイル名を指定するポップアップが出るだけで
保存までは行ってくれません。 >>348
ポップアップを出さずにダウンロードするようブラウザを設定するか
selenium経由でurlを取得したらurllibとかで直接ダウンロードするか 例えば、Ruby, Selenium WebDriver なら、
以下のコードを、script.rb に書いて、
ruby script.rb > a.txt
と入力すれば、a.txt に、Example Domain と書かれる
require "selenium-webdriver"
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--headless')
options.add_argument('--disable-gpu')
driver = Selenium::WebDriver.for :chrome, options: options
driver.navigate.to "http://www.example.com/"
puts driver.title #=> Example Domain
driver.quit >>349
早急にありがとうございます!!
>ポップアップを出さずにダウンロードするようブラウザを設定するか
この方法で覚えさせてら一個ダウンロードすることが出来ました!!!!!
ただ一個ダウンロードし終わったらそこで行程が終了してしまうのですが、
連続でファイルダウンロードを覚えさせることはIDEでは難しいのでしょうか。。
>>350さんも大変ありがとうございます!!
pythonそのもの、seleniumそのもののコードを書くことは
絶賛勉強中でして右も左もといった感じで。。。
中々難しいですね。。 >>351
必要な箇所をループさせればいい
python関係なくてスレチなので続きはWebProg板かどっかで聞いて iMacros などで、ブラウザ操作を自動化できないか? > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw 難しい処理をサーバーで行って簡単な処理や入力画面の表示をラズパイで行いたいんですけど、どうすればできますか? Webアプリ作ってAWSかGCPにでもデプロイしてラズパイのブラウザで開け >>355
まずはAWS、Azure、GCPのどれかの書籍を買って読んでみたらどうかね。
サーバーを自前で用意するにしても何をしないといけないかはわかると思うよ Ruby on Rails とか、AWS Lambda とかは? perl信者だったが、pythonに乗り換えようかとw
pythonで書くとなぜかコンパクトになる。 pipでインストールしたモジュール一覧を表示してみたら
知らないモジュールもいつの間にかインストールされてた
その中でtqdmというのを調べてみたら
for文のコンテナに指定するだけでプログレスゲージを表示してくれるモジュールだった
こんな便利なものがあるならもっと早くに知りたかった > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw だぼークォーテヒーションと
シングルクオ-ティーションは意味が同じでぃすか? 唐突にsubprocessでpythonのインタプリタモード呼び出して、自動的にreturn helloを入力するってプログラムを作りたくなったんだが
インタプリタモードの時にreturn helloを自動的に入力する方法が重いつかない
何かいい手はありませんか >>367
ふつーに標準入力渡してやるのでいいんでない youtubeの特定の時間のスクリーンショットを取得するライブラリはありませんか?
pytubeは動画全体をダウンロードするしかできないみたいなので ここの人はIDEを使って書いてます?
おすすめあります?
今の所、同時に複数のソースを見れる便利さでvimを使ってるんですけどw vscode一択だろう
pycharmも人気だが、vim使いならvimキーバインドのプラグインが超優秀なvscodeの方が圧倒的に使いやすい vscode Remoteが最強すぎるんだがリモート先のlinuxが32bit 対象外なのが悲しすぎる >>372
きみpycharmのIDEA vimつかったことないなさては? お前らvscodeのvimプラグイン何使ってる?
俺は「Vim」使ってるんだがマルチカーソルが微妙で使いづらい VScodeのリモート、リアルタイムのlintも出来ない時代遅れのエディタだった記憶しかない 仕事で50モジュールぐらいのPJを作成しているけど、PyCharm一択かな
VScodeの評判がいいから試してみたけど、構文解析が役に立たなくて逆にビックリした
1モジュールとかだったら、何使っても一緒だろうけど vscodeのコンソールでコード書くときにインテリセンスが効かないのは仕方がない? Tkinterって発音はキンター?ティーキンター? tkライブラリのinterfaceだからティーケーインターなのだそう たぶん、Tcl ToolKitの略じゃないかと。本当のところは不明 0.099を0.1にしたり99を100にしたり
使ってるけた数を自動推定して四捨五入してくれる関数ないですか Decimal使えばいける気がしたが、Decimal値の有効桁数求める方法がないのな。 Pycharm重くないか?vscodeは一瞬で起動するから使ってる 起動なんか一回やったら開きっぱなしだからどうでもいいpycharm使っちゃうとVScodeショボすぎて使う気にならんロックインされちゃうね プィッションは読み方がどれも難しい。
Tキンターとか、何かを意識してしまうよ。
メカブ?、ナンピーとか。
日本人向けの発音じゃ無いですよね。
頭に入ってこないもの。 質問です。環境はpython3.7.6(anaconda3 2020.02)でwindows10
import urllib.request
urllib.request.urlopen('https://www.yahoo.co.jp')
上のコードを書いたファイルをコマンドラインから実行すると問題ありませんが、
PHPのexec()から実行すると、
urllib.error.URLError: <urlopen error unknown url type: https>が出ます。何が理由でしょうか?
ssl化されていないページならエラーは当然でません。
phpスレのがよかったかな...すみません、よろしくお願いします。 「python3 urllib.error.urlerror urlopen error unknown url type https」で検索! うーん、検索しまくったんですけどね。どうしてコマンドラインだと問題なくてexec()からだとエラーになるのかの理由に辿り着けませんでした!
でもありがとうございます 実行してるpythonの環境が違うんじゃないの?
sys.path出力して同じかどうか確かめればいい 未確認だが、PHP側でPYTHONPATHを設定するとたぶんexec()でもいけるんじゃないかな http はOK で、https だけエラーになるのだろ
たぶん、PHP 内から、curl, wget, ruby などで、https へアクセスしてもOK になるだろ。
Python だけは、SSL の設定が厳しいのだろう
/usr/bin/ruby -e "$(curl -fsSL https://git何々)"
みたいに、インストールスクリプトをダウンロードして、
実行するようなコマンドをよく見るけど、
Ruby プログラム内で、curl から、https を呼べる sys.pathじゃなくて、LD_LIBRARY_PATH(Windowsで相当するものがわからん)じゃないかな?
理由はなんにしても、PHP exec() から python urllibごときを呼び出すってのが、激しく疑問なわけだが。 本当に必要な情報は海外サイトで見つかる。
マメだよね。
やっぱ、海外の人のがプログラム作りは盛んなのかね? 日本人とそれ以外で分けるってんならまず人数が圧倒的に違う >>405
ちょっとpythonから離れちゃうけど、
このソースのこのコンパイルエラー、みたいな狭い範囲の問題が見つかるんだよ。
アメリカを中心とした海外サイトだと。
「あ、同じ問題で悩んでるヤツいたんだ」みたいなw >>404
日本人のは入門系が多いからってのも理由なんじゃないかな?
細かい内容やエラー系とかは海外のが多い 英語は全世界のプログラマーほとんどわかる
日本語は日本人のプログラマーしかわからない
ってだけでしょ。英語の情報が多いのは。 ■ このスレッドは過去ログ倉庫に格納されています