くだすれPython(超初心者用) その34 [無断転載禁止]©2ch.net

レス数が900を超えています。1000を超えると表示できなくなるよ。
2017/05/28(日) 20:34:15.87ID:7AoJbiyO
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで

前スレ
くだすれPython(超初心者用) その33
http://echo.2ch.net/test/read.cgi/tech/1490424742/
2017/07/05(水) 09:48:37.32ID:YU7DsXGL
そう…(残念)
803デフォルトの名無しさん
垢版 |
2017/07/05(水) 11:05:10.43ID:BRC1acOi
>>779
秀丸にはインデントをスペースにする設定があるのに何でしないの?
2017/07/05(水) 11:59:26.25ID:W7p06HKZ
タブで書いた方がいい。
git か実行時に、タブを空白に変換すればいい

そういう処理を、シェルスクリプト・PowerShellスクリプト・バッチファイル、
またはタスクランナー、gitの前処理に書いておいて、自動実行すればいい
2017/07/05(水) 12:28:17.60ID:z5aRqQvk
pep8も、1行の文字数制限は気になる。
いくらなんでも16:9ではもっと書ける。
あのルールだけエディタではオフにしてる。
2017/07/05(水) 12:32:16.73ID:Qpg00Afa
space2で書いてる
2017/07/05(水) 12:50:48.75ID:eFHntyyq
ボッチ開発だしハードタブ4で書いてる
808デフォルトの名無しさん
垢版 |
2017/07/05(水) 13:15:44.80ID:P2VGXh8m
pep8とか言語関係なしに、ある程度で抑えた方が読みやすい
巻物の使い方が横書きと縦書きで違うのはそういうところから来てるのではと思ってる
それに、Pythonで長くなる時って大抵がネストが深くなってるか、一行に詰め込みすぎてることが多いでしょ
関数定義とかでも、引数が多いときは適度に改行してる

あと、モニタが16:9になったのって、文字を書くんじゃなくて映像を見る方に特化した結果だと思うんだよね
だから、文字数制限を設けることは可読性を保つ上で有効だと思う

でも、pep8の一行の文字数制限は自分もオフにしてる
2017/07/05(水) 14:54:41.44ID:cUuA0iqJ
コードを改行する必要がある時、Python3を書くようになってからは、
バックスラッシュじゃなくカッコで括るようになった。
ただ、カッコ(関数含む)で頭を揃えようとすると、うまく収められない(かえって可読性が落ちる場合など)時は、
仕方なく行先頭から1インデントのところで妥協することも多いな。
2017/07/05(水) 15:47:23.00ID:XUcgmELe
別に妥協はしてもいいんだよ
PEP8PEP8言ってる奴ほど
PEP8の序文読んだことがあるのか?と思う
2017/07/05(水) 17:14:25.98ID:igf3nAKM
ピップエレキバン
2017/07/05(水) 18:28:15.86ID:Cs6uf46S
>>763
脳みそを使えよ、お前。
2017/07/05(水) 19:22:49.67ID:cUuCWP6n
>>812
勉強しろよ
2017/07/05(水) 19:39:05.56ID:L/UJyhWt
薬飲んで寝ろデブ
2017/07/05(水) 21:30:03.36ID:a2JYI5La
並行処理用のライブラリはいくつかありますが、どれがオススメですか?
2017/07/05(水) 21:53:10.95ID:k74tei78
タブガイジはプェチピィかプェ〜ルでも使ってろゴミ
2017/07/05(水) 22:03:42.30ID:uTn2RlgN
>>816
日本語でおk
2017/07/05(水) 22:04:21.16ID:uOGWwv8x
multiprocessing.Pool が簡単にマルチプロセス
2017/07/05(水) 22:43:57.51ID:+4iFZrIp
タブガイジ
2017/07/05(水) 22:49:17.45ID:wG6YXXxV
ログインが必要なWebページにマルチプロセス?でhtmlを取得するにはどんな方法が考えられるでしょうか?
それぞれのプロセスでログイン処理をするのは無駄なのですが、ログイン情報?を共用する方法がわかりません
2017/07/05(水) 22:56:17.66ID:n6J1aua5
>>820
フレームワークは何?
2017/07/05(水) 23:03:18.78ID:wG6YXXxV
>>821
すいません、フレームワークが何を指すのかよく分かりません
2017/07/06(木) 09:14:44.86ID:PkUzDJSz
multiprocessingモジュールを使う方法が考えられる
プロセス間共有データの機能も当然ある

あれ読んで理解できないなら100年はえーよ
今の君にできる手段を取る方が賢いね
2017/07/06(木) 09:57:45.48ID:rcbDiRMU
超初心者用板やぞ
2017/07/06(木) 12:38:59.11ID:PZBpqnTG
a=1
b=2
c=[a, b]
とした時に、リストcとして、a,bの要素はコピーされてまた新たにメモリが確保されますか?それともa,bを参照になるのですか?
2017/07/06(木) 12:57:25.03ID:PZBpqnTG
リストは効率悪そうなので質問変えさせていただきます
3次元配列(要するに画像データ)x,yがあって
z = np.array([x,y])
のように、リストのように使えますか?
一旦まとめた後、xとyを元の画像として取り出したいです
2017/07/06(木) 12:59:13.13ID:UZxglvCD
>>825
参照です
pythonは基本全部参照コピー
a=1
b=a
これすら値のコピーではなく参照の代入だから
2017/07/06(木) 13:30:43.94ID:tGfEmR+Z
>>825
変数への再代入は新しい参照が変数に割り当てられるので気をつけて

a = 12
b = 34
c = [a, b] # => c[0]==12, c[1]==34
a = 100 # => c[0]==12, c[1]==34のまま
c[1] = 56 # => b==34のまま
# a += 1 や c[0] *= 2 などの代入もaやc[0]が新しい参照になる
829デフォルトの名無しさん
垢版 |
2017/07/06(木) 22:28:56.26ID:0T2UvbzF
お前らに参照の話題はまだ早い
って言おうと思ったらもう混乱しとるやんけw
2017/07/06(木) 23:05:04.24ID:L8j5rxy6
>>820
Selenium WebDriver, Selenium IDE, PhantomJS などでの、
ブラウザの自動実行だろ

Ruby だろ。
Python は知らね
2017/07/06(木) 23:11:52.56ID:xNE5wZt1
質問です
公式サイトでPython3.6の32ビット版をダウンロードしてインストールしたのですが
Anacondaとういものがあるのを知って、インストールしたいんですが
公式サイトのPython3.6をアンインストールせずにAnacondaをインストールしても問題は出ないでしょうか?
OSはWin10の64ビットです
2017/07/06(木) 23:29:35.44ID:SgqT1Iyq
頭悪すぎだろ、普通にx64入れろや
2017/07/06(木) 23:34:49.65ID:xNE5wZt1
うむ、公式サイトの目立つボタンでダウンロードしたら32bit版になってしまったのです
そこまで問題は出ないようなのでそのまま使ってます
2017/07/07(金) 00:19:26.94ID:JoJfvIqW
>>830
seleniumはpythonにもあるよ
2017/07/07(金) 00:20:17.58ID:JoJfvIqW
>>833
アンインストールしたほうがいいです
2017/07/07(金) 00:44:57.87ID:tuAsaSiH
>>835
ありがとう、32ビット版のはとりあえずアンインストールしました
2017/07/07(金) 01:28:21.87ID:HRVWihAA
Anaconda 64ビット版を、一般ユーザーでインストールすると、
環境変数PATHも書き換えるから、

端末から、python コマンドを入力すると、
AnacondaのPython3 が起動するようになり、
以前にインストールしていた、Python を呼び出せなくなる

つまり、python コマンドを、PC内から探す際、
環境変数PATHの順番で、起動するアプリを探すから、
同じコマンド名で、順番が後ろのものは起動できなくなる

例えば、コマンドプロンプトで、
where notepad
と打ち込むと、メモ帳を起動する、PATHの順番を表示する

試しに、PowerShell, PowerShell_ise で、以下を打ち込んでみ。
環境変数PATHは、; で区切る。
$env:Path.split(";")
(または、コマンドプロンプトで、path と打ち込む)

windows コマンド 検索順序
https://technet.microsoft.com/ja-jp/library/cc753427.aspx

環境変数PATHを書き換えずに、Anacondaをインストールするなら、
Anacondaの起動時に、明示的に起動したい、Pythonへのパスを与える

また、複数のPythonのバージョンを切り替えて使う、pyenv と言う仮想環境もある
2017/07/07(金) 03:34:06.79ID:tuAsaSiH
>>837
調べてみたところ、PATHが通っていなくて、
今まではファイルのダブルクリックで実行、Anaconda入れても実行ボタン押して実行
とかいう超初心者レベルで、どうも自分がやりたい事に必要なものは全てAnacondaに入ってるそうで
こんなレベルだと全く影響無い感じなのでしょうか
2017/07/07(金) 05:02:29.41ID:HRVWihAA
コマンドプロンプトで、
where python
と打ち込むと、PATHの順番が表示される?

表示されないのなら、環境変数PATHは更新されていない
2017/07/07(金) 09:18:31.73ID:SZgf6Ov2
問題が起きてから言ってくれ
2017/07/07(金) 11:38:05.24ID:avjxADi0
>>839
そのコマンドはエラーで何も表示されないです
システムの環境変数PATHのところを見ても該当のものが無いので、PATHは通っていないようです
ありがとうございます
842デフォルトの名無しさん
垢版 |
2017/07/07(金) 19:21:51.29ID:bti4Si71
退屈なことはパイチンくんにやらせればいいじゃん
パイチンくんにw
2017/07/07(金) 20:52:20.52ID:8CZskrNj
UnixのシェルスクリプトをWindowsに移植しないとダメなんだけど、Windowsのバッチファイルの変数まわりと文字列操作がクソ過ぎてPythonで書こうと思ってます。
具体的には外部のテキストファイルを読み込んでforとかでグルグル回しながらそれをコマンドラインのパラメタとして渡していって実行させたいだけなんですが。(パイプとかで複数コマンド繋げたりディレクトリからファイル名引っ張ってきて変数に入れるとかしたい)
StackOverflow読んでたらargvとかあるし簡単そうっぽいんですけど簡単でしょうか。
なんでPythonかというとそのマシンがdosプロンプトとPythonしか入ってないいにしえのマシンだからという理由だからなんですけど。
2017/07/07(金) 20:56:18.49ID:fpfCGWE6
素直にPowerShell使えよw
845デフォルトの名無しさん
垢版 |
2017/07/07(金) 20:59:20.71ID:eVPhxI3P
Cygwinじゃあかんのか?
まあPythonでも難しく無いだろうけど。
2017/07/07(金) 22:52:20.68ID:eky1cNPP
pythonのsubprocessか何かで呼んだ先のDOSのシェルが馬鹿過ぎてコマンド実行成功/不成功(エラーレベル)が返らないとか、pythonの問題でなく、ポーティングに耐えられないWindowsの愚かさに苦労させられた憶えが。
847デフォルトの名無しさん
垢版 |
2017/07/07(金) 23:23:17.38ID:tdv0VtnU
超初心者がwindowsに文句つけてるのって傍から見て決してみっとも良いものじゃないよ
2017/07/07(金) 23:56:26.31ID:306a0YtN
窓のコンソールが腐ってるのは今に始まった話じゃない
今はLinuxがそのまんま動くからいいよな
2017/07/08(土) 01:27:55.43ID:U3WHqCD/
pygameのゲームパットについて、
調べても思ったより資料が有りません。

どのボタンが連動しているか、
分かりやすいサイトとか有りませんか?
2017/07/08(土) 02:52:33.69ID:DtvYnY/5
超初心者の質問するけど
absって関数の役割が絶対値を返すだけならどの用途でこんなの使うんだよw
プログラミングでなんの訳にも立たないだろ

と思ってしまうんだが実際どうなの?
2017/07/08(土) 03:06:30.25ID:+VXBkwGC
え、めちゃくちゃいっぱい使うだろw
2017/07/08(土) 03:13:06.00ID:DtvYnY/5
>>851
えっどんな時に使うのか教えてくれ
2017/07/08(土) 04:23:54.74ID:+VXBkwGC
2つの座標間の距離を測る場合とか…
ごめんそれしか浮かばないや!
詳しい方お願いしますw
2017/07/08(土) 06:18:53.37ID:AQJwZpAA
(a if a>0 else -a)
って書くよりも
abs(a)
って書くほうが簡潔だし意味も明瞭。

こんなの要らないだろう界の王者はpass。全く何もせず、ただそこにある為だけの存在。
構文的に必要だからとか、借り置きのプレースホルダとかで使われる。
そんな pass にすら使いどころがあるのだからabsなんて有用すぎる。
passが価値のない石ころなら absは輝くダイヤ
855デフォルトの名無しさん
垢版 |
2017/07/08(土) 07:21:57.25ID:GWGAvT8e
早朝から質問の答えになってない長文書いちゃうやつw
2017/07/08(土) 07:35:17.60ID:LFCUi1Tz
待機時間を正規分布にのせたいとき。
平均0分散1、かつ待機時間は正だからabs使ったなあ。
2017/07/08(土) 09:38:19.72ID:HUvrGmd2
>>854
passの代わりにことごとくNoneを使ってしまったことがあったが、
何事も無く終了してたから気づいたのはだいぶ後だった。
858849
垢版 |
2017/07/08(土) 10:32:03.85ID:U3WHqCD/
ゲームで、
 absはステータスの 追加要素の管理でマイナスにならない様に使った。

passはユーザー側の操作ミスの時に何もしないって、書いてる。

absはpaizaで使う所が有った様な気がする。
計算上、マイナス値が帰ってくるから、プラスに置き換える。見たいな作業。
2017/07/08(土) 12:09:16.40ID:pgGJ402T
absは複素数でも使える(math.fabsだと複素数はTypeErrorになる)
>>> abs(1+1j)
1.4142135623730951
2017/07/08(土) 12:11:02.61ID:U3WHqCD/
記述の質問

x=[12, 6, 2, 7, 3, 11, 1, 4]
correction=0
Fixed=x[0:5]
correction+=1

print(x[0:5+correction])
上記風に、抜き出す数をFixed+correctionの様に表記したい

おねがいします。
2017/07/08(土) 13:46:50.03ID:c6P8qLwK
バイナリファイルから0.5バイトだけreadで読み取りたいとき、どうすればよいでしょうか?
numpyでビットを扱えるとは見たのですが,readは整数バイトでしか読み取れず互換性がわからないです
2017/07/08(土) 16:08:29.92ID:Fv/VLC2u
CPUですらなにもしないって命令があるしな

存在するものにはそれぞれそれなりの意味がある
2017/07/08(土) 16:17:03.75ID:lUvEvZ3o
>>861
1バイト読んで0.5バイト捨てるんじゃだめなの?
2017/07/08(土) 17:15:11.49ID:U3WHqCD/
pygameでゲームパットを使った入力ゲームが作りたいです。
ゲームパットのキー読み込みが解らないので、教えて頂けませんか?

Git使ってないです。すません。

コード URL
https://ideone.com/UhwqyM
2017/07/08(土) 18:13:40.71ID:zB/Wb29i
0.5バイトとか新しいな
2017/07/08(土) 18:16:25.59ID:DtvYnY/5
このスレ本当に勉強になるわ
ありがとう
プログラミング系はググっても情報が出てこないんだよなぁ
2017/07/08(土) 18:19:34.12ID:l277hrw6
じゃあ、1/2バイトで。
2017/07/08(土) 18:20:15.48ID:U3WHqCD/
>>866
検索の時に、[プログラミング] って付けてるから出て来ないんだよ。
アフェとか役に立たない自己○○とか、ヒットしない。

[言語名]+[やりたい事] で出てくる。
python 配列
とか、ネタ発言だったら、マジレスしてごめん。┌(_Д_┌ )┐
2017/07/08(土) 18:24:22.71ID:l277hrw6
0.5バイトのことをニブルって言うらしいぜ。おまえら知らなかっただろ。
2017/07/08(土) 18:37:59.96ID:rnwsxGun
上位下位4ビットずつならシフト演算やビット演算じゃね?
なんでそういう事したいのか不明だけど
2017/07/08(土) 18:42:18.50ID:AQJwZpAA
>869
今日児童書のプログラミングの絵本を子供と読んでいて
ニブルの説明があって初めて知ったわ。
2017/07/08(土) 18:43:51.67ID:BPlXEDNj
>>866
出来れば英語検索も視野に入れるといいぞ
英語があんまり分からなくても プログラミングの文法さえ分かっていれば
コードみればなんとなくわかることが多いからな
2017/07/08(土) 19:07:04.71ID:DtvYnY/5
>>868
プラグラムにおいて絶対値の役割とかググってもでてこないやん
>>872
まだその域まで達してない
関数を一通り覚えてる感じ
2017/07/08(土) 19:38:37.45ID:rnwsxGun
まあ数学の素養とかはある事を前提に語られることが多いよね

関数を全部覚えようとしても使わない記憶は忘れられるからあまり効率よくなさそう
最初はこういうのあるんだ、ぐらいのチラ見だけしといて
出来るだけ多くのサンプルコード読みながらわからないのが出てきたら都度調べた方がいいんじゃないかな?
2017/07/08(土) 19:59:34.96ID:l277hrw6
プログラムにおいて絶対値の役割ってのが斬新な発想だな。素質を感じる。
絶対値が何かを知ってたらまずこんな疑問が出ないからな。

絶対値返すのがabs()の役割だよ!!! ってふつう思うもんな。
2017/07/08(土) 20:01:32.54ID:ICTsGxtb
>>869
乳首に張る奴か
2017/07/08(土) 20:03:08.03ID:U3WHqCD/
pythonでC#用DXライブラリのゲームパット
<module>
dxlib.dx_ClearDrawScreen()
OSError: exception:access violation reading 0x0000000000000246


OSError:例外:アクセス違反の書き込み0x00000000?

ctypes.create_string_bufferを使用して初期化して下さい?
https://translate.googleusercontent.com/translate_c?depth=1&;hl=ja&prev=search&
rurl=translate.google.co.jp&sl=en&sp=nmt4&u=https://stackoverflow.com/questions/37973033/ctypes-python3-5-oserror-exception-access-violation-writing-0x00000000&;usg=ALkJrhix1xB_WYTfbf2IXdAk8Wu6KqQr8A

誰かエスパーして、解決法教えて下さい。 ┌(_Д_┌ )┐
2017/07/08(土) 20:06:20.38ID:fIuXTSpk
>>860
>Fixed=x[0:5]
開始インデックスの、0は省略できるから、
Fixed=x[:5]

>print(x[0:5+correction])
endIndex = 5+correction
print(x[:endIndex])

>>861
ビット演算で、4ビット取り出せばいい
879デフォルトの名無しさん
垢版 |
2017/07/08(土) 20:09:34.39ID:GWGAvT8e
わかってねえなw
無駄に読んでしまった4ビットはどうすんだよw
2017/07/08(土) 20:10:49.81ID:l277hrw6
線香でも立てて供養するんだな!!!
2017/07/08(土) 20:11:10.50ID:fIuXTSpk
ゲームエンジンなら、
Godot は、Python風の言語。
Unity の、Boo も、Python風の言語

Pythonなら、Pygame, Kivy とか
2017/07/08(土) 20:13:46.56ID:QkNdjw+7
>>876
それを言うならニップルだろ
2017/07/08(土) 20:19:10.76ID:U3WHqCD/
>>878
ありがとう。

試しけど、文字描写の時点で
NameError:name 'DrawFormatString' is not definde
って出てる。訳分からん。

DXライブラリの描写はそのまま使えないとか?

Booスレって有ったけ?
覚えた方が良いとか? それなら、素直にC#覚えたいな。┌(_Д_┌ )┐
2017/07/08(土) 20:21:22.56ID:rnwsxGun
>>877
元の原文貼ってくれなきゃわからないよ
恐らくはpythonにはCのmallocみたいなメモリ確保命令が無いので
それで代用しろって事かな?
2017/07/08(土) 21:29:33.31ID:U3WHqCD/
>>884
それだ!

ありがとう!

駄目だったら、もぅ一度聞きに来る。 ┌(_Д_┌ )┐
2017/07/09(日) 00:44:31.26ID:QVaY8wyL
駄目でした。
問題も理解してないです。はい。

pygameのゲームパットの方向で調べて行きます。
また、何か有りましたら、お願いします。
2017/07/09(日) 00:46:38.30ID:olFNX3ws
>>886
当然ここのサンプルコードは試したんだよね?
https://www.pygame.org/docs/ref/joystick.html
888俺が遊園地だ! ◆ExGQrDul2E
垢版 |
2017/07/09(日) 02:07:10.10ID:QVaY8wyL
>>887
はい、試しました。
通常のボタン(○□△✘L1R1L2R2L3R3)では、指定した入力ができますが
矢印キーを受け取る仕組みが分かりません。

使用しているパットにはL3R3のボタンが有り、
左側のボタンがL3と同じだと言う事が分かってます。

私はどのようにして、矢印キーが押されたか調べれば良いのでしょうか?
なぉ、私の環境にはpand3Dがインストールされてます。
pand3Dを使えば入力が楽になるとか、ネットに書いて有ったのですが本当でしょうか?

頼りきって申し訳ないですが、
宜しくお願いします。
2017/07/09(日) 08:16:45.24ID:olFNX3ws
?そのサンプル動かせばボタン押したら何らかの反応あると思うが?
キーボードのカーソルキーじゃないよな?
2017/07/09(日) 08:55:12.63ID:iCzPmO29
脳障害の雪風の相手してる奴もやっぱり脳障害なんだろうな
高野豆腐頭に突き刺して死ねばいいのに
いや、死ね
2017/07/09(日) 09:14:42.99ID:QVaY8wyL
すいませんでした。
DXライブラリのエラーと混同して、pythonではメモリやポインターが何処に有って
それ等を扱う記述の仕方が分かりませんでしたが、pygameのゲームパットでは
それらは扱う事は無かった用です。

みなさん、ありがとうございました。
2017/07/09(日) 09:54:31.98ID:PF9MLQv5
>>873
チートシート(カンニングペーパー)使えば?

最初に全部暗記するより
「いちいち調べるのが面倒臭くなって調べずにコード書く」
のほうが プログラマーとしては自然な流れだぞ
2017/07/09(日) 11:39:54.70ID:QVaY8wyL
>>890
3ヶ月ぐらい前から、ずっと俺を攻撃してるけど
ネットストーカなの?

俺を攻撃しても、何も出てこないよ。
それとも、ゲ板から2年前の復讐に来てるとか?
2017/07/09(日) 11:44:04.50ID:vvtk1U94
>>892
そして始まる車輪の
2017/07/09(日) 11:44:36.92ID:vvtk1U94
>>893
糖質か?
2017/07/09(日) 11:52:43.41ID:olFNX3ws
>>893
そんな事より矢印キーは上手くいったのかよ?
2017/07/09(日) 11:54:16.99ID:olFNX3ws
それと過去に何があったのか知らんが素直に謝罪しないと
35歳と同じだぞ
2017/07/09(日) 11:56:05.20ID:ZNtTDJre
なんでPhthonでゲーム作るんだろう。
2017/07/09(日) 12:43:30.27ID:PF9MLQv5
ゲームプログラミングなんてもともとそんなもんだろ

わざわざ工学研究用コンピュータで ブラックホールに吸い込まれながら宇宙船が撃ち合うゲーム作ったりな
2017/07/09(日) 12:45:21.31ID:q5NjTKAa
>>894
再発明
901遊園地
垢版 |
2017/07/09(日) 13:46:06.33ID:QVaY8wyL
上手くいかない、今は保留で良いや。
次に行くんで、どうもでした。


特に気にする程でも無いな。



ケツにマヨネーズ突っ込んで開発したら、
  完成する頃にはビビっとキてるわwww┌(_Д_┌ )┐
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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