■ このスレッドは過去ログ倉庫に格納されています
くだすれPython(超初心者用) その37
- 1 :デフォルトの名無しさん:2018/03/17(土) 16:32:25.91 ID:S1lkLDnv.net
- このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。
エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで
前スレ
くだすれPython(超初心者用) その36
http://mevius.2ch.net/test/read.cgi/tech/1514805522/
- 2 :デフォルトの名無しさん:2018/03/17(土) 17:20:52.13 ID:apINGZdL.net
- 1乙
- 3 :デフォルトの名無しさん:2018/03/17(土) 22:54:10.59 ID:71uTBaAx.net
- >>1乙
やっぱこのスレがないとな
- 4 :デフォルトの名無しさん:2018/03/18(日) 01:10:06.02 ID:1gnxon3r.net
- >>1
乙ぱいそん
- 5 :デフォルトの名無しさん:2018/03/18(日) 08:16:22.54 ID:5YCBO0rZ.net
- >>1乙!!!
- 6 :デフォルトの名無しさん:2018/03/18(日) 14:40:54.55 ID:gweQjn0m.net
- O2
- 7 :デフォルトの名無しさん:2018/03/20(火) 16:48:16.51 ID:UQThoPnt.net
- てst
- 8 :デフォルトの名無しさん:2018/03/20(火) 21:57:11.58 ID:4r2XpJ0O.net
- pythonで変数を単にprintで出力等でなく、for文の中の引数のあたりで用いたいのですが
正しい表示の仕方が分からない状態です…。
【NO.1】
driver.execute_script("window.open('about:blank', 'tab0')")
driver.execute_script("window.open('about:blank', 'tab1')")
driver.execute_script("window.open('about:blank', 'tab2')")
driver.execute_script("window.open('about:blank', 'tab3')")
driver.execute_script("window.open('about:blank', 'tab4')")
以下tab3,tab4・・・・・、その都度変わる。
と、例えばこれは上手く動くのですが、こういうプログラムを 'tab0'の部分がいくつまで増えるかわからないので
for文を用いたいです。
そこで以下のようにしました。
【NO.2】
for aa in range(5):
bbb = 'tab' + str(aa)
print(bbb)
driver.execute_script("window.open('about:blank', bbb)")
これで5回ループしてwindow.openを繰り返したいのですが、エラーとなってしまいます。
('about:blank', bbb)") を ('about:blank', 'bbb')")としても ('about:blank', '{bbb}')")
としてもうまく動かないのですが、NO.1のように書いていると長い時はどれだけでも長くなってしまうので、
NO.2のようにしてうまく動いてほしいのですが、教えて頂きたいです。すみません…。
- 9 :デフォルトの名無しさん:2018/03/20(火) 22:03:32.55 ID:CB6mEnFT.net
- >エラーとなってしまいます
こんなふうに使いたいたいけどエラーになるのは激糞ってことで、
"window.open('about:blank', bbb)"
のbbbを文字列ではなく変数扱いにしろと
Pythonを作っているところに激しくクレームすればOK
- 10 :デフォルトの名無しさん:2018/03/20(火) 23:41:50.62 ID:qVb9KqM8.net
- Method: Selenium::WebDriver::Driver#execute_script
http://www.rubydoc.info/gems/selenium-webdriver/0.0.28/Selenium%2FWebDriver%2FDriver%3Aexecute_script
execute_script(script, *args)
Ruby では、第1引数に、JS のソースコード、
第2引数に、様々な型のオブジェクトの配列だけど
- 11 :デフォルトの名無しさん:2018/03/20(火) 23:44:43.85 ID:8h2nHQPc.net
- Rubyスレに書き込めばいいのに
- 12 :デフォルトの名無しさん:2018/03/21(水) 00:29:22.31 ID:e7ByloC5.net
- window.open('about:blank', 'tab{:d}'.format(aa))
0埋めや桁指定したかったら、{:04d}とかにすればおk
- 13 :8:2018/03/21(水) 09:16:16.57 ID:+xAnIYdW.net
- 有難うございました。
色々試させて頂きましたがなぜか出来ずに、
調べてみた>>12の似たようなケースのもので
'tab{%d}'%(aa
など数パターンをしてみましたが駄目でした。
window.open('about:blank')
のみでもタブは開きますが、>>8のように開いたタブを指定しないと
色々操作できないようなので…
引き続いて調べてみようと思います。
- 14 :デフォルトの名無しさん:2018/03/21(水) 10:08:37.83 ID:9aBHV4ji.net
- javascriptスレ逝け
- 15 :デフォルトの名無しさん:2018/03/21(水) 10:12:09.46 ID:MTE55bx9.net
- for aa in range(5):
bbb = 'tab' + str(aa)
print(bbb)
driver.execute_script(f"window.open('about:blank', '{bbb}')")
- 16 :デフォルトの名無しさん:2018/03/21(水) 10:16:50.03 ID:wxFTzoek.net
- 最も最近に起動した、タブを取得する、というような関数は無いのか?
- 17 :デフォルトの名無しさん:2018/03/21(水) 10:20:58.28 ID:UHcPczyP.net
- pythonってプログラミング言語なの?
- 18 :デフォルトの名無しさん:2018/03/21(水) 10:21:00.65 ID:9aBHV4ji.net
- >>16
javascriptスレ逝け
- 19 :デフォルトの名無しさん:2018/03/21(水) 10:50:33.68 ID:wxFTzoek.net
- Python は、Ruby みたいに、
文字列内に、変数が埋め込めないのか
"some sentence...#{変数}..."
Python は、不便・ややこしい
- 20 :デフォルトの名無しさん:2018/03/21(水) 11:10:28.98 ID:4NRc1cWQ.net
- 多分ネームスペースの問題だけど詰まった…
myMod内に既製パッケージをインポートしてmyFunc内で既製Modを呼んでる
myMod内の砂場からmyFuncを呼ぶとちゃんと動く
しかし別ファイルのmainにmyModをインポートしてmyFuncを呼ぶと動かない
エラーメッセージは"既製パッケージに既製Modという属性は有りません"
(今手元に無いので概要)
インポートの仕方を色々変えてみたり、(import pkg, import pkg.mod, from pkg import mod…)
呼び方もフルパス、省略…
終いにはmain内にも既製パッケージをインポートしてみたりしても駄目
抽象的だけどなんか詰まりやすいポイントあればエスパーな人教えてください
- 21 :デフォルトの名無しさん:2018/03/21(水) 11:15:59.51 ID:4NRc1cWQ.net
- 取り敢えず既製パッケージはちゃんとmainから呼べるように出来てるんだから、既製パッケージに習って__init__.py置いてパッケージに纏めてみるかな…
- 22 :デフォルトの名無しさん:2018/03/21(水) 11:35:22.45 ID:9aBHV4ji.net
- >>19
馬鹿には無理
- 23 :デフォルトの名無しさん:2018/03/21(水) 11:45:31.65 ID:+xAnIYdW.net
- >>15
有難うございました!これで出来ました!
このパターンもどこかのサイトにあった記憶はありますが
結局投げ出し気味でしっかり試さず来ていたと思います…
tab0、tab1と指定して開いていて、あとでタブ切り替えもしっかり行ってくれました。
ありがとうございました!
- 24 :デフォルトの名無しさん:2018/03/21(水) 11:47:06.86 ID:wxFTzoek.net
- >しかし別ファイルのmainにmyModをインポートしてmyFuncを呼ぶと動かない
myModをインポートしても、myMod内のコードが実行されていないとか?
それにより、myFunc内で既製Modを呼んだタイミングでは、
既製パッケージはインポートされていないので、既製Modが見つからないとか?
import とは、ソースコードを実行するのか?
また、どの部分を実行するのか、しないのか?
まあ、具体的なソースコードが無いと、回答するのは難しい
- 25 :デフォルトの名無しさん:2018/03/21(水) 12:17:35.83 ID:4NRc1cWQ.net
- >>24
手元に無いのですまん、そりゃ分からんよね
でも取り敢えずタイミングというのは手掛かりになりそう、ありがとう
printとdir置いてトレースしてみる
- 26 :デフォルトの名無しさん:2018/03/21(水) 14:24:13.65 ID:F7vjZmd4.net
- >>19
3.6からできなかったっけ
- 27 :デフォルトの名無しさん:2018/03/21(水) 15:18:06.81 ID:MTE55bx9.net
- 2.5からできてますが
- 28 :デフォルトの名無しさん:2018/03/21(水) 19:39:40.24 ID:II1JNNPJ.net
- 3.6から文字列内に直接変数名を埋め込めるようになったんだよなあ
format()が余りにも不評だったんだろう
これだけで8文字取るからな
書籍でも従来の%を使っているものが多い
- 29 :デフォルトの名無しさん:2018/03/21(水) 19:59:57.38 ID:ZIWF0mlj.net
- loggerがformatに対応しないから俺もレガシーなフォーマットに戻った
変数展開はきっと使うと思うけど
- 30 :デフォルトの名無しさん:2018/03/21(水) 22:59:14.27 ID:iE0+8PVB.net
- ubuntuでpython 2.x と 3.xを使い分けるにはどうするのが一番いいですか?
- 31 :デフォルトの名無しさん:2018/03/21(水) 23:28:46.60 ID:120kxtjS.net
- Linuxを使っていないWinユーザーの俺でも
Linuxではそう言うのはシバンでやると知っているが.
次の質問はutf-8とかの文字コードを使い分けるにはどうするのが一番いいですか?
かな
- 32 :デフォルトの名無しさん:2018/03/22(木) 00:02:13.59 ID:tdHViWJs.net
- >>20-21
1. function print(){ };
2. (function print(){ })();
JavaScript では、1. のように、ただ関数を定義しても、実行されない。
2. のように関数を( ) で囲んで、式にしてから、( ) を付けて実行する
Python はよく知らないけど、
何かのスコープ内の関数・モジュールは、import されても実行されないのかも?
スコープ外に出してみれば?
つまり、ファイルスコープ
それか、あちこちに、print 文をばらまいて、
どこが実行されるか、チェックしてみれば?
>>30
Windows10・WSL のUbuntu シェルで、実行すると、
$ python3 --version
Python 3.5.2
$ python2 --version
プログラム 'python2' はまだインストールされていません。
次のように入力することでインストールできます:
sudo apt install python-minimal
- 33 :デフォルトの名無しさん:2018/03/22(木) 02:54:23.14 ID:6YcPw3Wb.net
- python3でreqieatsモジュールについてなのですが、postでパラメータを送る際のurlエンコードの文字コードを指定する方法はありますか?
- 34 :デフォルトの名無しさん:2018/03/22(木) 04:28:32.50 ID:tdHViWJs.net
- 「python3 requests post 文字コード」で検索!
- 35 :デフォルトの名無しさん:2018/03/22(木) 06:40:32.12 ID:nTB8AQAc.net
- >>34
取得したレスポンスの文字化けに関する記事ばっかで、postのパラメータについてのものが見つけられません…
requestsでパラメータが英数のものは動くのですがurllibだとできなかったのでできればrequestで行いたいです。
dataにurllibでurlエンコード済みのstring文字列入れても駄目でした。
- 36 :デフォルトの名無しさん:2018/03/22(木) 07:33:15.74 ID:tdHViWJs.net
- form 送信か
元々、そのform があるHTML に、文字コード・地域を指定しているはず
- 37 :デフォルトの名無しさん:2018/03/22(木) 08:57:23.33 ID:+wYf8aa1.net
- 黙れ統失Rubyカス
>>35
requests.postのdataにurlencodeした結果を指定する、であってる
それでも化けるならContent-Typeヘッダーにcharsetつける
それでも化けるならおま環問題である可能性が高い
- 38 :デフォルトの名無しさん:2018/03/22(木) 09:10:10.92 ID:MSVR+REx.net
- >>35
最近プログラム板に来た人かな?
ID:tdHViWJsは、この板の全域に出没して適当な回答を繰り返す問題のある人物なので、
時間を無駄にしたくないのなら相手にしないほうがよい。
この人物は文章が特徴的なので、何度か目にすれば察せるようになるだろう。
- 39 :デフォルトの名無しさん:2018/03/22(木) 09:46:12.22 ID:Q2/ylW7b.net
- 迷ったらMIME
- 40 :デフォルトの名無しさん:2018/03/22(木) 13:27:14.07 ID:8yaQ1Td9.net
- pythonの勉強のためにAnacondaを導入しました
webサイトを見ながら触ってみたのですが、Anaconda promptでconda update condaと入力するとSolving environment:failedと表示されCondaHTTPErrorと続いてアップデートが完了していないと思われる現象が起こります
検索してみたのですが英語が読めず原因が分かりません
プログラム以前の問題で申し訳ないのですが原因と考えられる要素を教えてください
- 41 :デフォルトの名無しさん:2018/03/22(木) 13:30:22.51 ID:Q2/ylW7b.net
- net繋がってないだけとか
- 42 :デフォルトの名無しさん:2018/03/22(木) 14:49:30.96 ID:8yaQ1Td9.net
- >>41
ありがとうございます
インターネットには接続は問題ないようです
- 43 :デフォルトの名無しさん:2018/03/22(木) 14:55:21.42 ID:WC+ROiY7.net
- プロキシサーバーを経由してるとか
- 44 :デフォルトの名無しさん:2018/03/22(木) 14:56:15.47 ID:Z8Y+8YFX.net
- >>37 >>38
ありがとうございます。
今手元にないので後でもう一度試してみます。
- 45 :デフォルトの名無しさん:2018/03/22(木) 15:14:14.52 ID:+AIswhSt.net
- あいやー
おちぃんちんサーバに接続
ぴぃーーーー。小5ロリ以外を粛清せよ
- 46 :デフォルトの名無しさん:2018/03/22(木) 15:36:21.99 ID:8yaQ1Td9.net
- 発生しているエラーはこの人と同じ現象だと思います
英語は分かりませんが
conda config ―set ssl_verify no
をやってみろみたいな記述があったので試してみたのですが状況は変わりません…
https://github.com/conda/conda/issues/6007
- 47 :デフォルトの名無しさん:2018/03/22(木) 15:38:27.86 ID:o6o53GFc.net
- 証明書のクリアしてみるか?
- 48 :デフォルトの名無しさん:2018/03/22(木) 15:39:41.97 ID:o6o53GFc.net
- あ
そもそも windows の firewall でブロックかな
ウィルス対策ソフトとか firewall とか一時的に無効でもだめか?
- 49 :デフォルトの名無しさん:2018/03/22(木) 16:53:47.05 ID:8yaQ1Td9.net
- >>48
ありがとうございます
ファイアウォールは切ってみてもダメでした
社内のPCを使っているのですが、ネットワークの知識もないのでどこが影響してるのかも追えなくてすいません…
- 50 :デフォルトの名無しさん:2018/03/22(木) 18:42:33.32 ID:/vagzVD7.net
- 配列aの要素が配列bにすべて含まれていればTrue、そうでなければFalseとしたい
配列a、bの要素数は可変(ただしlen(a)>=len(b))
また配列内で各要素は重複しない
例えば以下のような形です
#True
a=(1,2,3,4)
b=(2,1,3)
#False
a=(1,2)
b=(4,3)
こういうテストを大量に繰り返したいので、早い書き方を考えています
test=[num for num in a if num in b]
if len(test)==len(b)
みたいなのを考えてみたんですが、たぶんもっとスマートな方法があると思うので、教えてください
- 51 :デフォルトの名無しさん:2018/03/22(木) 19:00:38.71 ID:rLoCj1aX.net
- >>50
aにないものが見つかったところでbreak→False判定 ってして
ループまわす
- 52 :デフォルトの名無しさん:2018/03/22(木) 19:22:38.90 ID:MSVR+REx.net
- setにすれば集合演算が使える
- 53 :デフォルトの名無しさん:2018/03/22(木) 19:59:16.77 ID:RnvqqGyo.net
- 同じ配列に対して繰り返しその比較するならあらかじめソートしておくと良いことあるかもしれない。
- 54 :デフォルトの名無しさん:2018/03/22(木) 20:38:40.26 ID:RnvqqGyo.net
- ん、繰り返さないとしてもソートしたほうが速いのか?
よくわからん…
- 55 :デフォルトの名無しさん:2018/03/22(木) 20:38:51.79 ID:+AIswhSt.net
- a,bをinで粛清せよ
- 56 :デフォルトの名無しさん:2018/03/22(木) 20:48:12.70 ID:+AIswhSt.net
- 同士諸君、赤
- 57 :デフォルトの名無しさん:2018/03/22(木) 21:17:50.10 ID:rLoCj1aX.net
- Happiness is Mandatory. Citizen,are you happy?
- 58 :デフォルトの名無しさん:2018/03/22(木) 21:41:09.52 ID:mUCyPZ6U.net
- >>49
>社内のPC
会社のネットポリシーにひっかかって会社のファイアウォールがブロックしているんじゃないのか?
このせいで俺のところなんかでもアクセスできないところが色々ある
5chも行っちゃだめよだし
- 59 :デフォルトの名無しさん:2018/03/22(木) 22:06:01.51 ID:/EkTHIgP.net
- >>51
よく考えたら内包表記でもifしたら速度出ないですね
これで試してみます
- 60 :デフォルトの名無しさん:2018/03/22(木) 22:14:23.56 ID:+AIswhSt.net
- 要素が含まれてるか検知するのに、lenやifを使うなんて
頭が悪すぎる。
粛清せねば成らない。
- 61 :デフォルトの名無しさん:2018/03/22(木) 22:15:25.38 ID:+AIswhSt.net
- ifは必要だ
- 62 :デフォルトの名無しさん:2018/03/22(木) 22:17:04.96 ID:+wYf8aa1.net
- おまえは何をいっているんだ
- 63 :デフォルトの名無しさん:2018/03/22(木) 22:17:06.65 ID:RnvqqGyo.net
- んあ、パイソンってループより内包表記のほうが速いってマジ?
- 64 :デフォルトの名無しさん:2018/03/22(木) 22:23:11.07 ID:+wYf8aa1.net
- 内包表記でリストを作る場合は専用命令を使うので、微々たる物だが速くなる
- 65 :デフォルトの名無しさん:2018/03/22(木) 23:35:44.33 ID:q/Ja7+Ba.net
- >>50
> 配列aの要素が配列bにすべて含まれていればTrue
> 例えば以下のような形です
> #True
> a=(1,2,3,4)
> b=(2,1,3)
???
4が配列bに含まれていないようだが?
なぜにTrue???
- 66 :デフォルトの名無しさん:2018/03/23(金) 00:03:52.46 ID:qUw1cRZJ.net
- え?
- 67 :デフォルトの名無しさん:2018/03/23(金) 00:22:49.84 ID:i31Fn5mw.net
- うーんまあ
配列aの要素が配列bの要素をすべて含んでいる場合
あるいは
配列bの要素が配列aにすべて含まれている場合
と書くのが正確ね
- 68 :デフォルトの名無しさん:2018/03/23(金) 00:53:01.08 ID:0pO3RnAr.net
- >>65
このスレの質問者は超低脳が多い。
そんな奴の質問は辻褄が合うことはあまりない
そんなもんだから回答者は真の質問を見抜ける高脳でないと駄目
len(a)>=len(b)なら、配列aの要素が配列bにすべて含まれている可能性あるのは....
- 69 :デフォルトの名無しさん:2018/03/23(金) 00:57:09.20 ID:0pO3RnAr.net
- >>67
a,bが逆になっているだけじゃないのか
- 70 :デフォルトの名無しさん:2018/03/23(金) 04:01:48.52 ID:NfdpbbfG.net
- 誰かアプリ作れる人いませんか?
- 71 :デフォルトの名無しさん:2018/03/23(金) 07:22:27.94 ID:qUw1cRZJ.net
- このスレでアプリ作れるのは俺くらいのもんだろ
- 72 :デフォルトの名無しさん:2018/03/23(金) 11:51:11.90 ID:L1wsKiud.net
- pythonでアプリ(実行ファイル)作るのは難しいよな
俺もスクリプト作るのが限界だわw
- 73 :デフォルトの名無しさん:2018/03/23(金) 12:22:07.12 ID:kM32haS5.net
- わざわざ()してくれたとこ悪いんだけど.pyも実行ファイルなんだよね
- 74 :デフォルトの名無しさん:2018/03/23(金) 12:33:36.05 ID:dRbnJSq+.net
- Windowsみたいなオモチャだと難しいよなw
- 75 :デフォルトの名無しさん:2018/03/23(金) 18:11:07.27 ID:OUYN8NdW.net
- class NewClass:
hoge = "hoge"
class NewClass:
def __init__(self):
self.hoge = "hoge"
この2つに違いってありますか?
- 76 :デフォルトの名無しさん:2018/03/23(金) 18:43:03.09 ID:GtydX90K.net
- あるよ
- 77 :デフォルトの名無しさん:2018/03/23(金) 19:37:01.46 ID:ZnDm/A5o.net
- >>64
それってジェネレータに勝てるの?
- 78 :デフォルトの名無しさん:2018/03/23(金) 19:42:15.36 ID:OUYN8NdW.net
- >>76
なるほど継承するときに違いが出るということですね
ありがとうございました
- 79 :デフォルトの名無しさん:2018/03/23(金) 21:21:46.68 ID:9yghwvRE.net
- >>78
違うよ
総レス数 992
262 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200