[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 07/30 11:11 / Filesize : 305 KB / Number-of Response : 1055
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだすれPython(超初心者用) その45【Ruby禁止】



1 名前:デフォルトの名無しさん mailto:age [2019/10/16(水) 10:17:12.96 ID:dCHq3Ix4.net]
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
☆「Ruby では」「Rubyでは」をNGワード登録推奨

このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

◆エラーを解決したい場合は、表示されてるエラー全文(勝手に省略禁止)と
  実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。

◇Python公式サイト◇ www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/

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

2 名前:デフォルトの名無しさん [2019/10/16(Wed) 12:39:03 ID:dmmazo8P.net]
O2

3 名前: mailto:sage [2019/10/16(Wed) 17:42:35 ID:dCHq3Ix4.net]
>> mevius.5ch.net/test/read.cgi/tech/1563969768/999
C++ (ビープ音でドレミの歌とか、表示文字色を部分変更とかできたころの)
R
Python 2 → 現在3への適応に自分・ソースコードともに苦しんでいる
アセンブラ

>> mevius.5ch.net/test/read.cgi/tech/1563969768/1000
そもそもが50GBくらい(64GBに届いてないのはリカバリ用隠しドライブのせい)で
今、空きが11〜12GBくらい。

そういえば、Cygwinとかトートイズとか
おれさまのMP3コレクションとかがんがって泣く泣く消したから
ちょっとあいている状態なんだな。。。

で、
メモリが2GBしかない(拡張できねえ!仕様)し、
CPUも1コア×1.33GHzだから、
のそのそしている。

4 名前: mailto:sage [2019/10/16(Wed) 18:01:35 ID:9ut2IWOv.net]
>>3
確かにそのスペックでインストールできるIDEは無いのかも。

5 名前: mailto:sage [2019/10/16(Wed) 18:36:03 ID:dCHq3Ix4.net]
>>4
どっちもこのマシンと、その前に使ってたもうちょいましなやつで
インストール&初回起動までなら、したことがある。

どっちにせよ起動するまでが糞激重くて数分かかってしまって
('A`)ってなってあきらめた。

6 名前: mailto:sage [2019/10/16(Wed) 20:07:16 ID:z9QsUJdG.net]
サクラエディタやnotepad++でも充分でしょう

7 名前: mailto:sage [2019/10/16(Wed) 20:25:05 ID:dCHq3Ix4.net]
>>6
ちょっとやってるぞー
くらいのレベルなら、
んだべな。

8 名前: mailto:sage [2019/10/16(Wed) 23:06:29 ID:X7lVhgtr.net]
つxyzzy

9 名前:デフォルトの名無しさん mailto:sage [2019/10/17(木) 00:39:00.91 ID:OIw2LILw.net]
ちょっとした入門練習ならそれでも良いかもしれないが、本格的にプログラミングをするなら、しっかりした環境を作らないとダメだよ。

1年間の時間のロスがいくらの金になると思ってるんだ?
入門練習でも上達度が違ってくるぞ。

例え今時間はタダだと思っていても、貴重な人生の時間を使ってるんだからよくよく考えた方が良い。

10 名前:デフォルトの名無しさん mailto:sage [2019/10/17(木) 05:01:36.98 ID:Yoq2/Gj4.net]
tensorflowjsをインポートするだけでエラーが出るんだが(´;ω;`)
確実にライブラリは入ってるのに
一応、pipやってもalreadyって出てるし



11 名前:デフォルトの名無しさん [2019/10/17(Thu) 10:34:14 ID:ewN8FeZ7.net]
20年くらい前のPC使ってる人が居るようだが
それだとpython使っててもpipすら出来ないだろ

12 名前:デフォルトの名無しさん [2019/10/17(Thu) 10:35:18 ID:ewN8FeZ7.net]
>>9
来年は死んでる鴨試練な

13 名前: mailto:sage [2019/10/17(Thu) 16:28:04 ID:sQPbdVOJ.net]
もしかしてpythonって++とか--できないんですか?

14 名前:デフォルトの名無しさん mailto:sage [2019/10/17(木) 17:14:31.09 ID:ucUV19VT.net]
はい
現代言語では非常に奇特なことにインクリメント演算子は存在いたしません
それをもって欠陥言語と評する派閥も少なくないです

15 名前:デフォルトの名無しさん mailto:sage [2019/10/17(木) 17:20:44.72 ID:K9wPxQ06.net]
>>11
Win8→8.1の頃に買った
タブレットとノートパソコンどっちつかずのヤツなんだ・・・

pipはできる
でも機械学習やらせようとか思っちゃうとチヌ

16 名前:デフォルトの名無しさん [2019/10/17(Thu) 17:31:40 ID:TwA5RghT.net]
>>13
エラー吐いてくれればまだ良いんだけど
黙ってシレっと動いたフリするから困るよなω

17 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 08:59:27.85 ID:HFflmsgq.net]
プログラム自体初心者なんですがこのサイトは学習に向いてると思いますか?
https://automatetheboringstuff.com/chapter1/
日本語ので良いサイトありますか?英語はできますが日本語でいい教材があるならそっちのほうが好ましいです
ちなみにテンプレのwikiはページがありませんでした

18 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 09:01:00.05 ID:HFflmsgq.net]
https://nostarch.com/sites/default/files/styles/uc_product_full/public/automate_frontcvr_final.png
教材はこれです。

19 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 09:03:55.64 ID:YuWkr+rI.net]
1ページあたりの内容が薄すぎてページめくりの回数多くて非効率
また学習に関係ない Youtube Logo がいくつか邪魔

20 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 09:10:44.76 ID:Z0V6+Dq2.net]
>>1 まとめwikiのリンクは変更しないと開けない。

python.rdy.jp/wiki.cgi
に変更した方が良い



21 名前: mailto:sage [2019/10/18(Fri) 09:25:09 ID:Z0V6+Dq2.net]
教材はここが纏まってる。

Pythonの学び方と,読むべき本を体系化しました2018〜初心者から上級者まで
https://shinyorke.hatenablog
.com/entry/python2018

中村勝則も無料の教材としては良いと思う。
https://qiita.com/KatsunoriNakamura/items/b465b0cf05b1b7fd4975

22 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 09:42:18.09 ID:HFflmsgq.net]
ありがとうございます。

23 名前:デフォルトの名無しさん [2019/10/18(Fri) 16:23:11 ID:Zsy+Oz1Z.net]
同じファイルを違うPCで実行したときの挙動が異なって困ってます。
pythonなどのバージョンは同じです。
具体的にはseleniumでchromeを起動する際に画像非表示オプションを設定しているのですが、
macbookair2013では画像が非表示になってもmacbookpro2017は画像非表示になりません。
クリーンインストールしても変わらなかったです。
まったく意味不明です��何か見当つきませんか?

24 名前: mailto:sage [2019/10/18(Fri) 16:39:19 ID:6zLZDVSS.net]
>>20 おkはあく

25 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 17:40:01.12 ID:eYccVr4w.net]
気になるんで教えてください

import numpy as np
lx = np.arange(0.0,6.28,0.01)
ly = np.sin(lx)

この場合
lyはnp.sinクラスのインスタンスを生成
   npのメソッドsinの実行により生成
   npモジュールのsin関数により生成
のどれと考えるのが筋がいいですか
この辺、テキストによって説明がまちまちな気がします

26 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 17:41:55.08 ID:6zLZDVSS.net]
>>23
>pythonなどのバージョンは同じです
Macのバージョンや設定がちょっとでも違ってたらチネ!!!(・∀・)なんだが。

27 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 17:43:09.18 ID:6zLZDVSS.net]
>>26 追記
Chromeのサブバージョン番号まで完璧に一緒か
Macのサブバージョン番号まで完璧に一緒か
設定もまったくもって完全一致なのか

28 名前:デフォルトの名無しさん [2019/10/18(金) 17:50:11.58 ID:f2FG8XiO.net]
python3.8はWindowsストアからインストールできるんだけど、pybind11に対応してないのでおススメできない。
なので従来通りのやり方でインストールしたほうがいいね。

29 名前:デフォルトの名無しさん [2019/10/18(金) 19:02:27.62 ID:q3nDEEoA.net]
>>25
Python 3.7.4 (default, Sep 7 2019, 18:27:02)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.7.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import numpy as np

In [2]: type(np)
Out[2]: module

In [3]: type(np.sin)
Out[3]: numpy.ufunc

ということなので、「npモジュールのsin関数により生成」が最も近いんじゃないかな
ufunc自体はそれ自身にメソッドやメンバを持つオブジェクトで、
カッコつきで呼び出されたら関数として振る舞うみたい。
sinはそのオブジェクトのインスタンスの一つだね。
https://numpy.org/devdocs/reference/ufuncs.html?highlight=ufunc

30 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 20:38:55.49 ID:yMA2qaS5.net]
>>29
ありがとうございます
VBAを少しいじったことがある
程度の初心者なんですが、当面
>>25 のような形式ではでは判断
できない違い(概念の違い?)がプログラム組むに
あたって影響することはあるでしょうか?
とりあえず名前つけて生成の過程はどうであれ
インスタンスができた程度の認識を持っていればよいのでしょうか?



31 名前:デフォルトの名無しさん mailto:sage [2019/10/18(金) 20:54:26.20 ID:2g/GJrKd.net]
javaのMathのような、staticでシングルトンな何か
……と思い込んで使う

32 名前:デフォルトの名無しさん [2019/10/18(金) 21:06:02.29 ID:q3nDEEoA.net]
>>30
プログラムを書く時間をなるべく短く、速く効率よく開発したい、と思うのであれば、
意識してモジュールとはなにか、クラスとはなにか、関数とはなにかということは区別をつけたほうがはまりにくいと思う。
関数を指定すべきところ、インスタンスを指定すべきところがあって、だいたいモジュールは指定できないかな。

試行錯誤する時間が十分にあって、かつ、モジュールやクラスや関数の違いについてまだ慣れていないのなら、
あまり深く悩まず、色々触ってみるのがいいんじゃないかな。

33 名前:デフォルトの名無しさん [2019/10/18(金) 21:52:28.45 ID:Zsy+Oz1Z.net]
>>26
>>27
chromedriver, macosは同じですmacの設定は違うところもあると思います。

今気づいたけどwebdriverでchrome出すまでをpythonにやってもらって、その後手動でurl打ち込んで遷移すれば画像非表示有効でした。
なにこれ、こんなことあります?
以前このmacbookpro2017はキーボード問題で修理出して中身総替えしたみたいなのでそれで何かがおかしくなったとか…他のpcではいけてるし何かがおかしい…

34 名前:デフォルトの名無しさん mailto:sage [2019/10/19(土) 07:49:09.51 ID:fDUUZQql.net]
>>23
ブラウザのコンソールに、エラー表示されていないの?

漏れは、Ruby で作っているけど、

chrome のselenium webdriver のオプションは、しょっちゅう変わるから、
画像非表示オプションは、昔はあったけど、今は無くなったのかも?

35 名前: mailto:sage [2019/10/19(Sat) 09:05:02 ID:tUw9vx0/.net]
>>33
だから
Macの設定がどっかちがっつるんじゃねーの

36 名前:チて。
ルートレスみたいな「余計なお世話」を
デフォルトON状態でモリモリ盛り込んでくるのがMacクォリティだからな。
[]
[ここ壊れてます]

37 名前:デフォルトの名無しさん mailto:sage [2019/10/19(土) 19:50:04.12 ID:vT6AuI0/.net]
>>32
時間は十分あるんで
気にせず、やってみます

38 名前:デフォルトの名無しさん mailto:sage [2019/10/19(土) 23:18:45.68 ID:3tMMez23.net]
https://i.imgur.com/mLwF5kR.jpg
すみませんPycharmでmatplotlibというライブラリをインストールしたいのですが画像のようなエラーを吐いて失敗します
pipのバージョンが古いみたいなことを言われていますが、おそらく最新のを使っていると思うので困惑するばかりです
解決方法を教えていただけたら幸いです

39 名前:デフォルトの名無しさん mailto:sage [2019/10/19(土) 23:24:32.22 ID:3tMMez23.net]
OSはwin10でPycharm community Edition 2019.2.30(おそらく最新)
Python3.8.150です

40 名前: mailto:sage [2019/10/20(Sun) 00:47:56 ID:QqNIfpUF.net]
なぜ1文字列目を無視したのか面白おかしく言い訳してください



41 名前:デフォルトの名無しさん [2019/10/20(Sun) 00:54:24 ID:fpGN22wj.net]
>>37
> https://i.imgur.com/mLwF5kR.jpg
エラーメッセージとProposed Solutionがありますが、それは試したましたか?
その結果はどうなりましたか?

42 名前: mailto:sage [2019/10/20(Sun) 01:04:03 ID:Em7ZfaYJ.net]
system terminalの意味がよくわからなかったのでスルーしてました
ありがとうございます。
ググってやってみた結果次のようなエラーを吐きました
ERROR: Command errored out with exit status 1:
ERROR: Command errored out with exit status 1:
command: 'c:\users\*\untitled\scripts\python.exe' -u -c 'import sys, setuptools, tokenize; s
ys.argv[0] = '"'"'C:\\Users\\*\\AppData\\Local\\Temp\\pip-install-jv9zguo4\\matplotlib\\setup.py'
"'"'; __file__='"'"'C:\\Users\\*\\AppData\\Local\\Temp\\pip-install-jv9zguo4\\matplotlib\\setup.p
y'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"
'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\*\A
ppData\Local\Temp\pip-record-gi1t32x6\install-record.txt' --single-version-externally-managed --compi
le --install-headers 'c:\users\*\untitled\include\site\python3.8\matplotlib'
cwd: C:\Users\*\AppData\Local\Temp\pip-install-jv9zguo4\matplotlib\
Complete output (505 lines):

エラーメッセージのどこを貼ればいいのかわからないので、関係ないとこを貼っているかもしれません
そうでしたら申しわけありません

43 名前: mailto:sage [2019/10/20(Sun) 01:04:56 ID:Em7ZfaYJ.net]
BUILDING MATPLOTLIB
matplotlib: yes [3.1.1]
python: yes [3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:37:50) [MSC
v.1916 64 bit (AMD64)]]
platform: yes [win32]

OPTIONAL SUBPACKAGES
sample_data: yes [installing]
tests: no [skipping due to configuration]

OPTIONAL BACKEND EXTENSIONS
agg: yes [installing]
tkagg: yes [installing; run-time loading from Python Tcl/Tk]
macosx: no [Mac OS-X only]

OPTIONAL PACKAGE DATA
dlls: no [skipping due to configuration]

44 名前: mailto:sage [2019/10/20(Sun) 01:11:04 ID:Em7ZfaYJ.net]
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\cl.exe
' failed with exit status 2
ここが原因ということでしょうか?
すみません、ズブの素人なのでイラつかせるかもしれません

45 名前: mailto:sage [2019/10/20(Sun) 01:14:33 ID:Em7ZfaYJ.net]
src/checkdep_freetype2.c(1): fatal error C1083: Cannot open include file: 'ft2build.h': No such f
ile or directory
ft2build.hがないとからかもしれません
少し調べてやってみます。

46 名前:デフォルトの名無しさん mailto:sage [2019/10/20(日) 07:07:10.82 ID:Em7ZfaYJ.net]
visual studio 入れ直してもダメでした。

47 名前: mailto:sage [2019/10/20(日) 08:37:35 ID:QqNIfpUF.net]
freetypeのインストールと環境変数CL,LINKの設定がされてないと思われ
https://matplotlib.org/users/installing.html#building-on-windows

48 名前: mailto:sage [2019/10/20(日) 08:37:42 ID:+KWnMamE.net]
>>45
>system terminalの意味がよくわからなかったのでスルーしてました
どーせAdministrator権限が足りテナイとかジャネーノ

>>42
REQUIRED DEPENDENCIES AND EXTENSIONS
の欄が
まるっと抜けてる気がするんだが

49 名前: mailto:sage [2019/10/20(日) 09:16:37 ID:Em7ZfaYJ.net]
回答ありがとうございます。
freetypeをインストールしようとしたところ次のエラーは吐きました。
ERROR: Could not find a version that satisfies the requirement Freetype (from versions: none)
ERROR: No matching distribution found for Freetype
環境変数CL,LINKの設定はMSVCのコマンドラインを使うという感じのやつでしょうか?
>>47
管理者として実行しているので権限が足りないということはないと思います

50 名前:デフォルトの名無しさん [2019/10/20(日) 13:03:41.74 ID:9lZC9vgy.net]
ズブの素人なら黙って Anaconda 入れろ



51 名前:デフォルトの名無しさん mailto:sage [2019/10/20(日) 17:27:42.65 ID:Em7ZfaYJ.net]
まあそのほうがいいかもしれないですね。
ありがとうございました。
他の言語の勉強も含め色々検討したいと思います。

52 名前:デフォルトの名無しさん [2019/10/20(日) 23:50:17 ID:njFFTJVf.net]
cmd から v8 という javascript をインストール中に
pythonコード内で利用されているファイルディスクリプタの read() 使用時に
UnicodeDecodeError: 'cp932' codec can't decode
というエラーが出ました。

文字コード関係のエラーというのはわかるのですが、
これを治すためにインストールファイルを直接触るのはためらっております。

コードを触ること無く、エラーを解消する方法はないでしょうか?

環境
windows10 Pro 64-bit
python2.7.17

53 名前: mailto:sage [2019/10/21(月) 01:15:50 ID:GPq28qXA.net]
このご時世に2.x使ってるとか奴隷制の犠牲者か何か?

54 名前: mailto:sage [2019/10/21(月) 01:48:47 ID:sLtezmPz.net]
ファイルを、BOM 無しUTF-8(UTF-8N)で、保存しなおすとか、

Ruby の場合は、
ファイル読み込み時に、オプションで文字コードを指定するとか、

OS のユーザー環境変数、RUBYOPT に、--encoding=UTF-8 を追加するとか

55 名前:デフォルトの名無しさん [2019/10/21(月) 02:34:20 ID:W7vxtZcq.net]
>>53
死ね

56 名前:デフォルトの名無しさん mailto:sage [2019/10/21(月) 08:18:59 ID:fOBpkiG2.net]
>>50ですが、whlファイルを使うことで無事matplotlibのインストールに成功しました。
ありがとうございました。

57 名前:デフォルトの名無しさん mailto:sage [2019/10/21(月) 16:45:45.94 ID:KfBM+v02.net]
>>51
あるあるパターンとしては
Windowsのユーザー名に2バイト文字が入ってる件・・・

58 名前:デフォルトの名無しさん mailto:sage [2019/10/21(月) 21:19:55 ID:cifrZUYa.net]
>>51
cmd> chcp 65001
をしてからインストールを試してみたら?

59 名前:デフォルトの名無しさん mailto:sage [2019/10/21(月) 21:36:16 ID:KfBM+v02.net]
>>55
まじかよ
whlすげーな!

60 名前:デフォルトの名無しさん mailto:sage [2019/10/22(火) 22:50:56.34 ID:DJm76Xqy.net]
プログラミング自体初心者です

配布することも考えた小規模の自動化ツールを作る場合、GUIアプリにするか、Webアプリにするか、選ぶ基準はありますか?
どちらを選んでも、希望の機能の実装自体は実現できるとします

個人的な意見で大丈夫なので、考え方とかあれば教えていただきたいです



61 名前:デフォルトの名無しさん [2019/10/22(火) 22:59:56.89 ID:rCatO9ZB.net]
CUIのWebアプリって存在価値ある?w

62 名前:デフォルトの名無しさん mailto:sage [2019/10/22(火) 23:00:59.51 ID:DJm76Xqy.net]
すみません、一応補足すると、
Python で作ることが前提
小規模→社内で使い回す程度
です
連投すみません

63 名前:デフォルトの名無しさん mailto:sage [2019/10/22(火) 23:03:24.46 ID:DJm76Xqy.net]
違った、GUIアプリじゃなくてネイティブアプリです…
本当にすみません

64 名前:デフォルトの名無しさん mailto:sage [2019/10/22(火) 23:14:29.44 ID:6erEu/jt.net]
基本的にWebを選ぶべき。なぜなら配布が楽だし、環境に依存しにくいし、Pythonでのクライアント(GUI)アプリ開発などという
国内ではほぼ誰もやっていないであろう無価値な技術を習得する壮大な時間の無駄をしなくて済むから。

65 名前:デフォルトの名無しさん mailto:sage [2019/10/22(火) 23:17:39.16 ID:3XGI/6ag.net]
おっ、業務支援スクリプトだな
pythonは業務支援スクリプトに最適な言語だからな

66 名前:デフォルトの名無しさん mailto:sage [2019/10/22(火) 23:19:24.23 ID:HZuwqM+d.net]
何言ってるのかわからん。GUIアプリなんてググればたくさん出てくるし、
Webはwebでサーバー環境立てる手間が居る。

67 名前:デフォルトの名無しさん mailto:sage [2019/10/22(火) 23:24:10.97 ID:lomrvhbn.net]
クライアントアプリはインストールや更新を完全に利用者側の自己責任にできる場合にのみ使っていい
開発者自身が面倒見なきゃいけないなら確実に地獄を見ることになるから絶対にやめておけ

68 名前:デフォルトの名無しさん mailto:sage [2019/10/23(水) 00:00:05.37 ID:Nn7/Oh6s.net]
俺も自分一人かもしくはもう一人くらいならGUIでやるかもしれないけど
>>66の言うような理由でWebだなあ。運用保守面だよな問題は

69 名前:デフォルトの名無しさん mailto:sage [2019/10/23(水) 00:57:42.17 ID:PJFf5aTc.net]
>>65 何をとち狂ってるんだよ。 Webアプリってローカルで動かして何ら問題ない。

70 名前:デフォルトの名無しさん mailto:sage [2019/10/23(水) 01:01:44.17 ID:LHz3zTm6.net]
JavaScript込みならwebアプリ選ぶけど
Python決め打ちなら普通にローカルアプリ作るのが早い



71 名前:デフォルトの名無しさん mailto:sage [2019/10/23(水) 08:27:11.64 ID:CVEfmxxh.net]
つかうやつらにアプデを告知し、アプデさせるのがくそめんどうだから
Webアプリできる状況だったらWebのほうが断然おすすぬ
1個でWinだけじゃなく
MacやLinuxの連中にも使えるようになる品

72 名前:デフォルトの名無しさん [2019/10/23(水) 11:02:35.47 ID:6YqEyJGa.net]
>>23ですが解決しました。
macbookairでできてproでできないのはdGPUが関係してました。
proの設定>省エネルギーの"グラフィックスの自動切り替え"をオフにすれば画像非表示が適用されました。
↑の設定の他にchomeoptionに"--disable-gpu"を加えることでも解決しましたのでこれを適用させています。
>>26,34-35ありがとうございました。

73 名前:デフォルトの名無しさん mailto:sage [2019/10/23(水) 14:50:28.88 ID:CVEfmxxh.net]
>>71
解決おめ!
報告乙!

そういえば近年のchromedriverって、
積んでても積んでなくてもgpuの設定はちゃんとしないと、文句いうよね。

74 名前:デフォルトの名無しさん [2019/10/23(水) 22:20:55.46 ID:trzfY3Jq.net]
>>72
そうなんですね。解決しないと諦めてましたけど良かったです。
ちなみにdisable-gpuを設定しなくても
https://www.yahoo.co.jp/の様なdgpuを必要としないサイトでは画像非表示ができて
例えばtaotajima.jp/の様ないかにも画像が重たそうなサイトではdgpuを使用して画像非表示ができなかったみたいです。

75 名前:デフォルトの名無しさん mailto:sage [2019/10/24(木) 11:46:29.45 ID:SwAS1ouY.net]
seleniumでchrome起動して、あるページのログインフォームにsend_keysしたいのですが、
開いたchromeのウィンドウがアクティブになっているとelement not interactableでエラーになります
ただchromeのウィンドウを非アクティブ(起動してすぐ別のウィンドウを操作する等)にすると
問題なくsend_keysされます

どのような原因が考えられますでしょうか

76 名前:デフォルトの名無しさん [2019/10/24(木) 11:50:01.50 ID:ABhN6CSm.net]
https://www.google.com/search?q=selenium+chrome+send_keys+element+not+interactable

77 名前:デフォルトの名無しさん [2019/10/24(木) 12:34:28.28 ID:+/4nwafU.net]
>>74
formによってはたまにありますね
xpathをフルパスで指定すればいけたりすることもありました。
あとはexecute_scipt使ってjavascriptで入力はどうでしょうか

78 名前:デフォルトの名無しさん mailto:sage [2019/10/24(木) 21:27:38.63 ID:vNmHB0bV.net]
>>69
儂もそう思う。儂はWEBアプリも興味あったけど挫折した。ということはローカルならpythonの方が多分かんたんだと思ふ。
tkinter使えば追加のライブラリ不要なのでGUIアプリも簡単に配布できるだろう。
もっとも、儂はPyQt5派だけど...

Qtにしてもtkにしてもwxにしてもgtkにしても使いやすいguiデザイナがあるから楽だよ。

79 名前:デフォルトの名無しさん mailto:sage [2019/10/24(木) 21:34:29.17 ID:YSSlcTBS.net]


80 名前:74 mailto:sage [2019/10/24(木) 21:47:10.35 ID:WGoKVguQ.net]
フルパスXpathもJavaScriptも試したけどダメでした

泥臭いっていうか泥そのものみたいなコードですが
そのフォームにsend_keysするときだけウィンドウを最小化するというクソみたいな方法で回避することにしました
悔しいけど自分が使うだけのツールなので我慢します



81 名前:デフォルトの名無しさん mailto:sage [2019/10/24(木) 22:12:49.03 ID:myfSxx3G.net]
ヘッドレスモードでやればどうかな?

82 名前:デフォルトの名無しさん [2019/10/27(日) 01:33:19.77 ID:xWRzEG7S.net]
モザイク除去ソフトのDeepCreamPyを使うためにPythonの勉強を始めました(正直)。
https://github.com/deeppomf/DeepCreamPy/releases

Ubuntu 18.04でv1.3.0-beta win64のソースコードを取得して実行したのですが下記エラーが出ます。
Traceback (most recent call last):
File "decensor.py", line 8, in <module>
from libs.pconv_hybrid_model import PConvUnet
ImportError: No module named libs.pconv_hybrid_model

なお8行目はこんなです。
from libs.pconv_hybrid_model import PConvUnet

libsディレクトリはあるし、その中にpconv_hybrid_model.pyもあります。
.bashrcにexport PYTHONPATH="libsへのパス:$PYTHONPATH"と加えて再起動してもダメでした。
多分すごく簡単に治ると思うのですが、治し方が分かりません……。どなたか教えていただけないでしょうか。

モザイク外したい……

83 名前:デフォルトの名無しさん mailto:sage [2019/10/27(日) 05:13:00 ID:hJUpCTqv.net]
Pythonでimportの対象ディレクトリのパスを確認・追加(sys.pathなど)

https://note.nkmk.me/python-import-module-search-path/

84 名前:デフォルトの名無しさん mailto:sage [2019/10/27(日) 06:40:09.03 ID:3qApEzfh.net]
sympyで連立方程式をといて、その解の値を抜き取る方法が知りたいです。
例えば

import sympy

a = -1/2
b = 3
c = 1/2
d = -1

x = sympy.Symbol('x')
y = sympy.Symbol('y')

eq1 = y - a*x - b
eq2 = y - c*x - d

ans = sympy.solve([eq1, eq2], [x, y])
print(ans)

とすると
{x: 4.00000000000000, y: 1.00000000000000}
となりますが、4.0, 1.0それぞれの値を変数ans1, ans2に
代入する方法がわかりません。教えてください。

85 名前:デフォルトの名無しさん [2019/10/27(日) 06:55:29.34 ID:Qb9Ns76Y.net]
>>83
ans1=ans[x]
ans2=ans[y]

86 名前:デフォルトの名無しさん mailto:sage [2019/10/27(日) 08:00:47.68 ID:tjnCis8i.net]
>>84
ありがとうございます。できました!

87 名前:デフォルトの名無しさん [2019/10/27(日) 11:32:01.32 ID:CbvQpcn+.net]
>>> M = numpy.matrix([[-1/2,-1],[1/2,-1]])
>>> M
matrix([[-0.5, -1. ], [ 0.5, -1. ]])
>>> numpy.linalg.inv(M) * numpy.array([[-3],[1]])
matrix([[ 4.], [ 1.]])

88 名前:デフォルトの名無しさん [2019/10/27(日) 11:34:00.06 ID:wW7bp+s+.net]
anacondaとcolabってaiにおいて何がちゃうんですか?

89 名前:デフォルトの名無しさん mailto:sage [2019/10/27(日) 12:26:01.35 ID:eoJi3rMN.net]
venvでの仮想環境を他のpcでも共有したい時どうすれば良いのでしょうか
家にpcが2つあり、両方で作業出来たら良いなと思っています
ソースコードはgithubで共有しているのですがvenvをpycharmで読み込もうとすると参照パスにpythonインタプリタが無いとかで面倒くさい,何かいい方法がないかと考えております

90 名前:デフォルトの名無しさん mailto:sage [2019/10/27(日) 14:11:47.08 ID:hJUpCTqv.net]
>>74
漏れは、Ruby, selenium webdriver で、yahoo に自動ログインしてる

require "selenium-webdriver"

options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--begin-maximized')

driver = Selenium::WebDriver.for :chrome, options: options
driver.manage.timeouts.implicit_wait = 10 # default timeout

driver.navigate.to "https://login.yahoo.co.jp/config/login_verify2?.src=ym"

driver.manage.window.maximize # 画面最大

element = driver.find_element(:id => "username")
element.send_key "ユーザー名"

driver.find_element(:id => "btnNext").click

element = driver.find_element(:id => "passwd")
element.send_key "パスワード"

driver.find_element(:id => "btnSubmit").click



91 名前:デフォルトの名無しさん [2019/10/27(日) 14:59:38.34 ID:IkTaChA0.net]
【社会】Tポイント詐取容疑で逮捕 キャンペーンを悪用 9300万円相当を不正取得か 埼玉県警
https://asahi.5ch.net/test/read.cgi/newsplus/1571896897/

92 名前:デフォルトの名無しさん mailto:sage [2019/10/27(日) 18:37:36.53 ID:9RmN7s/E.net]
>>79
クリップボードに文字列をコピーして、フォームにペーストするってのはどう?

93 名前:デフォルトの名無しさん mailto:sage [2019/10/27(日) 20:36:53.36 ID:c8KMWt1C.net]
>>88
いろいろ既に揃ってる方のPCのvenvを読み込む

好みの階層で
pip freeze > requirements.txt

でてきたtxtを、
何らかの手段で
もう1台のPCにもっていく。
(方法はメールでもgithubでもなんでもいい)

揃ってない方のPCでvenvをはしらせる

もってきたtxtがある階層にて
pip install -r requirements.txt

94 名前:デフォルトの名無しさん [2019/10/28(月) 21:14:12.43 ID:pIVzkmar.net]
PythonのKivyっていうライブラリでGUIを作ってるのですが
コンパイル前のコンソールからの起動だと、GUIが立ち上がるまでに4秒
コンパイルしてexeファイルを実行すると起動に10秒かかってしまってます。

コンパイル前から遅いのでコード自体が悪いんだと思いますが
せめてコンパイル後の起動の遅さをなんとかしたいです。
どうやったらexe化後の実行時間を短縮できますか?

95 名前:デフォルトの名無しさん [2019/10/28(月) 21:15:59.10 ID:pIVzkmar.net]
>>93
pyinstallerを使ってコンパイルしました。
WindowsとMacで配布するつもりです。

96 名前:デフォルトの名無しさん [2019/10/28(月) 21:19:36.88 ID:pIVzkmar.net]
すみません、自己解決しました
py2exeを使ってみます

97 名前:デフォルトの名無しさん mailto:sage [2019/10/29(火) 00:31:41.83 ID:VG5cqFbl.net]
pythonで後ろに隠れたウィンドウのスクリーンショット取りたいんですが、可能でしょうか?

win32guiは使える状態です

98 名前:デフォルトの名無しさん [2019/10/29(火) 05:21:39.92 ID:mquQcKIH.net]
The conda.compat module is deprecated and will be removed in a future release.
Collecting package metadata: done
condaというのは廃止されるのですか?

99 名前:デフォルトの名無しさん mailto:sage [2019/10/29(火) 09:34:33.42 ID:W5nVn27E.net]
>>96
inactive capture win32gui

100 名前:デフォルトの名無しさん mailto:sage [2019/10/29(火) 10:11:28 ID:lK4VsX8B.net]
GUIライブラリのKivyを使えばAndroidやiOS向けに作れるんだろ。



101 名前:デフォルトの名無しさん [2019/10/29(火) 12:10:42.30 ID:CRHJ60op.net]
Pyinstallerを使うとクソ遅いし、py2exeはPython3.4までしか使えない上に開発終了してるっぽいし
もしかして、Pythonってコンパイラ全部死んでんじゃね

102 名前:デフォルトの名無しさん mailto:sage [2019/10/29(火) 12:28:22.53 ID:+tztyvy6.net]
cx-Freeze は? Python3.6まで対応してる
https://pypi.org/project/cx-Freeze/#data

一部に手を入れれば Python3.7でも動くらしい

103 名前:デフォルトの名無しさん [2019/10/29(火) 14:54:36.58 ID:CRHJ60op.net]
>>101
コレは行けるのでは…と思ったらKivyに対応してないみたいで詰んだ

104 名前:デフォルトの名無しさん [2019/10/29(火) 14:59:59.78 ID:CRHJ60op.net]
今更Kivy以外のライブラリで書き直すのもつらいし、もっと慎重に使うライブラリ考えとけばよかった…
GUIライブラリではどれが1番強いんだろ…

105 名前:96 mailto:sage [2019/10/29(火) 15:03:43.96 ID:VDvTDAYx.net]
自己解決しました

106 名前:デフォルトの名無しさん mailto:sage [2019/10/29(火) 16:21:02.65 ID:kXn8AUyn.net]
>>103
つぶしがきく的にTkinterだとおもう

107 名前:デフォルトの名無しさん [2019/10/29(火) 17:11:38.77 ID:CRHJ60op.net]
tkinterはさすがにダサすぎるからQtとか使っとくべきだった

108 名前:デフォルトの名無しさん mailto:sage [2019/10/30(水) 09:32:36.92 ID:p/MVkdCG.net]
>>103
MacとLinuxしか使ってないのでWinでどうかはわかりませんが、日曜趣味プログラミングの自分の経験上ではこんなかんじ。
結局、pyQtに落ち着いてます。Kivy再挑戦しようかな...。皆さんは何使ってるんですかね?

tkinter:標準ライブラリなので他の人に配るなら楽。GUIビルダーが探しにくいけどフリーでいくつかある。見た目が野暮ったいと言われるけど嫌いじゃないな。
wxPython:意外と日本語資料が多い。割と使いやすかった記憶があります。
PyQt:GUIビルダーが使いやすい。見た目がカッコイイ。なんだかGPLなので市販ソフトはだめらしいけど、個人使用なら良いらしい。
PySide:PyQtのLGPLライセンス版とのこと。使ったことない。
Kivy:挫折した。GUIビルダーが私の知る限りではあまり多くない(Linuxで動くのはひとつ?)。
PyGTK:使ったことない。でもGladeは使いやすそう。
PyFLTK:使ったことない。日本語の資料が少ない。

並べると意外と

109 名前:GUIの選択肢が多いですね。 []
[ここ壊れてます]

110 名前:デフォルトの名無しさん mailto:sage [2019/10/30(水) 10:01:19.61 ID:ijBQBJyE.net]
Python始めた時にセットでkivy使い始めた
機能的にも使いやすさ的にも満足してるがコンパイル成功したことない、デバック実行で十分だけど



111 名前:デフォルトの名無しさん mailto:sage [2019/10/30(水) 10:05:02.59 ID:PFJwOjFS.net]
要するに最後の最後でフラストレーションが溜まるんだろ
単体で動くネイティブアプリに出来ないから

112 名前:デフォルトの名無しさん [2019/10/30(水) 14:40:59.13 ID:Jt7N9BVB.net]
GTKは糞
PyQtも糞
Qt(C++)はセーフ
wxPythonはgood
wxWidgetsはgood
tkinterはgood
tcl/tkはgood

113 名前:デフォルトの名無しさん mailto:sage [2019/10/30(水) 15:12:34.93 ID:p/MVkdCG.net]
>>109
まぁ、そうなんですよね。一時期(当時はMac使ってた)、PyQtでアプリ使って、Pyinstallerとかで
なんとか単体アプリの体をつくろうとしたけど、バカバカしくなってやめました。
どっちにしてもアイコン用のpngファイルとか置くこともあるし、gui部分の表記は別の.pyファイルに
してメイン側から呼び出すのは、tkinterでもQtでもWxでも同じだと思うので、フォルダ単位の配布で良いかと...。

受け取った側が、どこにフォルダを置いても動くように、ファイルの呼び出しには
os.path.abspath(__file__)使ってます。
Winではアプリ化するのってpy2exeで簡単にバンドル化できるんですか?

114 名前:デフォルトの名無しさん mailto:sage [2019/10/30(水) 15:58:36.16 ID:GWmaMiFl.net]
>>111
py2exeよりpyinstallerのほうが、遅いが確実なう。

115 名前:デフォルトの名無しさん [2019/10/30(水) 16:03:24.98 ID:bv6PVv2A.net]
exeにするメリットデメリットについて教えろ
macの実行ファイルでも同じか

116 名前:デフォルトの名無しさん [2019/10/30(水) 16:08:10.42 ID:xzUJqyuR.net]
>>113
・メリット
pythonがインストールされてない環境でも実行出来るので他人に配布するのが楽。
コードが盗み見られづらくなる。

・デメリット
起動が遅い

117 名前:デフォルトの名無しさん [2019/10/30(水) 16:14:28.44 ID:bv6PVv2A.net]
python.dll を呼ぶ exe を C で書く
そこから hoge.py (main) を呼ぶ
これでインストールしなくても使える

118 名前:デフォルトの名無しさん [2019/10/30(水) 16:32:23.63 ID:xzUJqyuR.net]
>>115
Nuitkaっていうコンパイラがそれっぽいことをしてくれるみたいだけど
使い方がよく分りません><

119 名前:デフォルトの名無しさん [2019/10/30(水) 16:36:51.26 ID:bv6PVv2A.net]
C の知識あるなら module だけでも tutorial 通りに造ってみ
main じゃなくても良い

120 名前:デフォルトの名無しさん mailto:sage [2019/10/30(水) 16:41:01.00 ID:SPJ86W8H.net]
exeの方法の一つとして、Nuitka を使ってCのソースを作り出してCをコンパイルして実行ファイルを作る方法が有るみたい、
Nuitka の話題はあまり聞かないけど良さそうなのにどうして?

ま、それができればかなり美味しそうなのにあまり話題にならないという事はそれなりに問題もあるんだろうけど。



121 名前:デフォルトの名無しさん mailto:sage [2019/10/30(水) 16:51:06.42 ID:SPJ86W8H.net]
https://github.com/Nuitka/Nuitka

Nuitka

Nuitka は Python コンパイラの1つです。
Python を C にトランスパイルし、libpython とリンクすることで実行可能ファイルにします。
2018年3月現在、最終更新は2018年です。

Windows、macOS、Linux および FreeBSD に対応しています。
また、x86/x86_64 だけでなく arm にも対応しているようです。

――-
動的型付を静的型付のCでコンパイルするという事は、頻繁に型変換を自動でやるのかな? 結構な重労働に感じる

122 名前:デフォルトの名無しさん [2019/10/30(水) 17:15:50.40 ID:iACLsVPd.net]
全部 PyObject やで

123 名前:デフォルトの名無しさん [2019/10/30(水) 17:20:19.70 ID:iACLsVPd.net]
https://github.com/lava/matplotlib-cpp

124 名前:デフォルトの名無しさん mailto:sage [2019/11/01(金) 13:49:05.86 ID:kRVs1Mzo.net]
初級者なんだけどこれくらい読んどけって本ありますか
とりあえずEffective Pythonは候補にありますがこれで

125 名前:良いのか他にもっと良いのあるか迷ってます []
[ここ壊れてます]

126 名前:デフォルトの名無しさん mailto:sage [2019/11/01(金) 13:50:17.06 ID:qXpzbz+z.net]
本・・・?

127 名前:デフォルトの名無しさん [2019/11/01(金) 15:22:06.95 ID:4VV6x0Mu.net]
ネタにはネタで返す
あま
dp/4839965250

128 名前:デフォルトの名無しさん [2019/11/01(金) 15:30:40.25 ID:OaT/+tjP.net]
徳丸本

129 名前:デフォルトの名無しさん mailto:sage [2019/11/02(土) 10:11:29.90 ID:wdMk8lAB.net]
pythonは標準でastモジュールが用意されているけど、そこからpythonコードを
生成するのには何を使うのがいいのかなあ。
pypiで探してみても古かったりあまり使われてなさそうなものばかり。

130 名前:デフォルトの名無しさん [2019/11/02(土) 11:52:33.14 ID:DuRHh2CY.net]
>>118-119
pybind
https://qiita.com/benikabocha/items/5ec6b471de0d10aaf2df



131 名前:デフォルトの名無しさん mailto:sage [2019/11/07(木) 10:47:12.65 ID:aP7RW2Ns.net]
seleniumでchrome動かす用途でしかほぼ使ってないんですけど、
chrome自体はもちろんとして、pythonのインストール先も
SSDなど高速なドライブにした方が、動作は早くなりますか?
それともほとんど関係ないでしょうか

132 名前:デフォルトの名無しさん [2019/11/07(木) 10:51:05.58 ID:dB1QBGXo.net]
常駐してほぼ無限ループするようなやつならメモリ増やした方が良い

133 名前:デフォルトの名無しさん mailto:sage [2019/11/07(木) 16:22:26.99 ID:4Fl79lQn.net]
selenium自体高速動作じゃだろ
ドライバ自体がボトルネックだからよっぽどなハードじゃない限り...

134 名前:128 mailto:sage [2019/11/07(木) 16:43:18.28 ID:aP7RW2Ns.net]
なるほど、ではpythonのインストール先はHDDでも良さそうですね

実は無駄にRAMdisk上にインストールしてしまったのですが
インストールした後にインストール先の変更(移動)ってできますかね…

135 名前:デフォルトの名無しさん mailto:sage [2019/11/07(木) 17:16:00.20 ID:i5KqlsP0.net]
>>131
Macだったらかなりアキラメロン
Winだったら普通にアンインストールしてから再起動かけて再インストールで、いんじゃね?

136 名前:128 mailto:sage [2019/11/07(木) 18:23:51.91 ID:luP40erd.net]
すいませんWindowsです
いろいろpipでインストールしたものもあるのでめんどくさいなーと思ったのですが仕方ないですね
ありがとうございます

137 名前:デフォルトの名無しさん mailto:sage [2019/11/07(木) 19:05:01.58 ID:i5KqlsP0.net]
>>133
ちょっとまて
「一旦アンインストール」をする前に
pip freeze > hogehoge.txt
みたいなコマンド(正確なのは
ぐぐるか、このスレか初心者用じゃないほうのPythonスレにこないだ書いたから、
検索してくれ)で
pipしてたもののリストをだしておいて
入れなおしのあとは
そのリストをpipに食わせて連続インスコって
楽ができるはずだ

138 名前:128 mailto:sage [2019/11/08(金) 10:22:58.23 ID:a+/GHk6R.net]
>>134
うまくいきました、ありがとうございます

実はpywin32を使ってエクセルを操作していたのですが、
pywin32のインストールの時に、インストーラーでインストールして
そのままでは動かなくて、Python\Lib... 内の何かのファイル2つを
上層のディレクトリにコピーしたら動くようになった記憶があるのですが
その記事がいくら検索しても出てこなくて、困ってます

上記の説明でわかるでしょうか…

139 名前:128 mailto:sage [2019/11/08(金) 10:28:32.51 ID:a+/GHk6R.net]
自己解決しました
1時間くらい探して見つからなかったからこちらに書いたのに
書いた直後に発見した…

>copy pywintypes26.dll and pythoncom26.dll
>from C:\Python26\Lib\site-packages\pywin32_system32
>to C:\Python26\Lib\site-packages\win32

スレ汚し失礼しました

140 名前:デフォルトの名無しさん [2019/11/08(金) 11:45:58.57 ID:3E1/z7K0.net]
そのやり方は間違ってる
おかしなやり方を広めないように



141 名前:デフォルトの名無しさん mailto:sage [2019/11/08(金) 12:33:36.60 ID:QLJ5OLdG.net]
転職したくてpythonの勉強始めて約1ヶ月弱・・・
文法の綴りミ

142 名前:X多かったり
ルールとか少しづつしか理解出来てなくて悔しい
今までやったこと無い事ばかりでどうすればちゃんと理解しながら勉強出来ますか?
[]
[ここ壊れてます]

143 名前:デフォルトの名無しさん [2019/11/08(金) 12:54:44.88 ID:3E1/z7K0.net]
一度に多くのことをやりすぎない
細かく分けて一つ一つ理解する
その積み重ねでしかない

144 名前:デフォルトの名無しさん mailto:sage [2019/11/08(金) 14:20:41.44 ID:JHJDYmIb.net]
>>138
基礎がそもそも出来てないだろうからとりあえず入門書的な本を買う
詰まったら本見て調べる。出て来なければググる
あとはひたすら書いて慣れるのみ。ゲームと同じで攻略本読みまくるよりプレイして経験積むほうが成長できるしね

145 名前:デフォルトの名無しさん [2019/11/08(金) 14:32:26.25 ID:3E1/z7K0.net]
最近の入門書は基礎書いてないからなぁ

146 名前:デフォルトの名無しさん mailto:sage [2019/11/08(金) 15:04:10.78 ID:QLJ5OLdG.net]
レスありがとうございます。
本は二冊買っていてチュートリアルのサイトも見ながらもう一度初めの基礎からしっかり覚えて行こうと思います。

147 名前:デフォルトの名無しさん mailto:sage [2019/11/08(金) 16:55:32.83 ID:HH11ynhJ.net]
>>135-136
コピーして解決☆彡じゃなくてだな

オリジナルのファイルがある階層に
PATH(環境変数)が通ってないのが原因だろうから
site-packagesへのパスを通せ

というか
2系はもうすぐ終了するので、使うと後ですごい苦労するぞ。
最初から3系使え。

148 名前:128 mailto:sage [2019/11/08(金) 17:17:29.97 ID:a+/GHk6R.net]
>>143
詳しくありがとうございます
なるほどPATH通せばいいだけだったんですね…
こんな初歩的なことに気づかずお恥ずかしい限り

後出しになってしまって申し訳ありませんが
上に貼った英語の記事は26になってますが、自分はPython3.8です
ご助言ありがとうございます

149 名前:デフォルトの名無しさん mailto:sage [2019/11/08(金) 17:24:50.12 ID:uZmDoP6Q.net]
うちもPATHおかしくなってるっぽいけどなんか問題なく動いてるから調べてないや
VScodeのターミナルから全部入れて普通に使えてたがAnaconda入れてからターミナルでpip出来なくなった、AnacondaPromptからなら入る

150 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 03:50:38 ID:FjA6FVDT.net]
環境変数は書く順番で通るパス変わるからな。bashなら実行環境でwhich pythonて打ったら自分の使ってるのがどれかわかるよ。
Anacondaは依存を最高に管理してくれてるから、基本conda使うんだよ。pandas のこのversionには依存してるnumpyはこのちょっと古いversionまでしか上げないとかな。
何でも最新入れればいんじゃないんだよ。condaになければpipだけど。使うときpip install numpyとか使わないでAnacondaのpipがあるフルパス スペースinstallスペースnumpyとかって使うんだよ。
そうじゃないとwhich pip で通ってるMacでいうとpython2.7にnumpy入れるだけだからな。
Anacondaは使えないとかいうバカをたまにみるけども。



151 名前:デフォルトの名無しさん [2019/11/09(土) 11:17:23.29 ID:BZG37V3w.net]
pathに2と3のpathが混ざってるとかありえないんだが

152 名前:デフォルトの名無しさん [2019/11/09(土) 11:26:40.59 ID:thUc1KqM.net]
2ヶ月目くらいの初心者ですが 図書館で子供向けのPython入門本と
コーリー・アルソフの「独学プログラマー」ってPython本借りて
基礎からやっています この本はなかなかいいかもしれません 

153 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 11:45:11.23 ID:06f/2UDZ.net]
>>147
Winユーザーだけど、
まぜてるよ?

まだ2系時代の遺産をリメイクし終えてないから、
ふだんは2優先起動で、

3優先にしたいときだけは、
「3を優先するようにするバッチ」からコマンドプロンプト出してる。


Macを使わされてた時期もあるけど(当時は

154 名前:Qしかなかったけど)
システムのPythonと自分のいじるPythonわけてたから
環境変数に書く順番はジッサイトテモダイジだった
[]
[ここ壊れてます]

155 名前:デフォルトの名無しさん [2019/11/09(土) 11:50:44.57 ID:BZG37V3w.net]
windows だけど
2 しか使わない console と
3 しか使わない console に
分けてる

156 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 11:56:43.77 ID:jdniA0Oi.net]
Winユーザーだけど混ぜてないなあ
pylauncherだけパス通してある

157 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 11:57:21.86 ID:jdniA0Oi.net]
んで2と3のどっちを起動するかはシバンに書いてある

158 名前:デフォルトの名無しさん [2019/11/09(土) 12:05:12.44 ID:2CZWzZ9R.net]
プロジェクトごとに仮想環境作ってそこを使うようにしてるわ
ごっちゃにならないし、補完もできるし楽
グローバルな環境でpipとかまず使わん

159 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 12:25:29.79 ID:+gucf0S5.net]
>>151-152
Windowsだとそれが一番楽だよね。

あと、2、3ともにPATHを通して(一応3が優先にしてる)
あと、python.exe、pythonw.exe をそれぞれ、
python2.exe、pythonw2.exe、python3.exe、pythonw3.exe のようなシンボリック・リンクを作っておいて、
これでコンソールというか実行するインタープリターを使い分けしてる。

同様に、py2.exe py3.exeっていうシンボリック・リンクで楽ちん呼び出しもしてるな。

pip.exeがそんな感じになってるのでその真似なんだけど。

160 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 12:33:58.85 ID:L15kxdpx.net]
pylauncherとvirtualenv/venvの併用だな。ディスクをモリモリ喰うのが難点だが。



161 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 13:29:21.58 ID:gfwYwMk7.net]
classをはじめて触ってるのですが
class Test :
__def __init__(self):
____pass

みたいに書くと思うんですが、インスタンスを作成するときにtes=Test()としないとエラー吐くのはどうしてですか?
class Test() :
__def
と書いていくのではないのですか
classの()はどうして書かないの?
書かないのにインスタンス作成するときは書くのはなぜ?

162 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 13:31:12.22 ID:thUc1KqM.net]
>>156
書いても書かなくても大丈夫なのです
試してみて

163 名前:デフォルトの名無しさん [2019/11/09(土) 13:42:43.23 ID:BZG37V3w.net]
class Test(object):

164 名前:工学部生 [2019/11/09(土) 14:50:22.61 ID:+vhC4kuU.net]
ガッコで画像処理の勉強やったりしている工学部生ですが、
すばらしい画像処理やPythonのサイトがあったのでご報告します。
工学全般に説明されているので、お気に入り登録をおすすめします。
またいつか、質問があったりしたら来ますね。

https://algorithm.joho.info/image-processing/digital-imaging/

165 名前:デフォルトの名無しさん [2019/11/09(土) 15:13:06.37 ID:BZG37V3w.net]
GJ

166 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 15:16:50.65 ID:gfwYwMk7.net]
>>157-158
ふーむ…(object)で調べたらなんとなくわかったような分からないような

もうひとつ聞きたいのですが
いまデータベースにアクセスして各種パラメータを取る関数?を作ってます

get_ids():
__なにかの処理
return ids

get_names():
__なにかの処理
return names

という感じです
これはclass化するべきものではないのかなと思ったので
class GetItemParamsを作成し、配下に各メソッドを作ろうかなと思ってるのですが
これって考え方として合ってるんですか?
なんか
get = GetItemParams()
get.names()とかって冗長な気がします

167 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 15:18:34.27 ID:gfwYwMk7.net]
GetItemParams.pyファイルにコンストラクタがわりのグローバル変数と各関数書いて、importする方が適切なんでしょうか?

なんかよくわからなくなってきました
こういうシチュエーションのときはどう書いてったらいいんでしょうか

168 名前:デフォルトの名無しさん [2019/11/09(土) 15:20:01.73 ID:BZG37V3w.net]
変数名を get にするのは混乱の元だから辞めた方が良い
クラスにするのが抵抗あったらモジュール

169 名前:ノするだけでも良い
db とのコネクションをどうするかとかも一緒に考えて
[]
[ここ壊れてます]

170 名前:デフォルトの名無しさん [2019/11/09(土) 15:51:17.74 ID:/O8nGewy.net]
>>156
classの()は継承する時に親クラスを書くためのもので引数とは違う
何も継承しないならわざわざ()だけ書かなくても良くなってるだけ



171 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 15:57:58.96 ID:thUc1KqM.net]
>>156
僕も初学者なのでアレですが…
クラスを定義する時の class Test(): の括弧のなかにはselfが入っていて、
それは a = class() とした時に第一引数self = a は
Pythonが自動的に渡してくれるから省略できるのだと思います

172 名前:デフォルトの名無しさん mailto:165 [2019/11/09(土) 16:00:34.70 ID:thUc1KqM.net]
>>164
そうなんですね... 勉強になります...

173 名前:デフォルトの名無しさん [2019/11/09(土) 16:24:23.82 ID:q4QDxUWz.net]
>>165
それは>>148で学んだ知識なのか?

174 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 16:26:16.39 ID:thUc1KqM.net]
>>167
ちょっとうろ覚えで書いています...
あとで見直してみますね

175 名前:165 mailto:sage [2019/11/09(土) 18:58:21.31 ID:thUc1KqM.net]
>>165 の話ですが..ちょっと認識違いのようでした
>>164 さんの言うとおり 既存のクラスを継承する時には class(): で使い、
通常は書いても書かなくても良い 
何も書かなければ object型を継承したとみなされるようです 
失礼しました

176 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 19:49:26.66 ID:mZ1z6c9X.net]
Qiitaで初心者が書き散らしてるやべー文章みたいだな

177 名前:デフォルトの名無しさん mailto:sage [2019/11/09(土) 20:03:25.85 ID:thUc1KqM.net]
うわぁあああん 頑張る。。。

178 名前:デフォルトの名無しさん [2019/11/09(土) 21:51:52.29 ID:K6bHYoyh.net]
まぁ、そういうこともあるよね
ドンマイ

179 名前:デフォルトの名無しさん [2019/11/10(日) 06:20:36.34 ID:ywjUItB+.net]
>>159
そこは超初心者用だ
Pythonに慣れたらいち早く引っ越せ
さっさと卒業しろ

180 名前:デフォルトの名無しさん mailto:sage [2019/11/10(日) 08:57:54.88 ID:vAvO6oJv.net]
>>159
おお
覚えた事が右から左にすぐ抜ける自分にはぴったりのサイトだwww



181 名前:デフォルトの名無しさん [2019/11/10(日) 13:27:12.34 ID:hRll0rFL.net]
>デジタル画像の画素を数式で表現する場合、一般的には行列を用います。

はぁ?

182 名前:デフォルトの名無しさん mailto:sage [2019/11/10(日) 13:48:08.23 ID:94cuzmld.net]
DataFrameの末行に1次元リストを行方向に結合したい
dfの列数とリストの要素数は合ってる
この場合はどう書くのが早いですか?

183 名前:デフォルトの名無しさん [2019/11/10(日) 13:54:18.58 ID:hRll0rFL.net]
>>176
https://gist.github.com/anonymous/48f9a7af62af4133e04e0bd19f3f4264

184 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 00:22:53.96 ID:SNdbBvwP.net]
ひと月、本見ながらコード書いてて余り理解出来てなかったけど
ここで聞いて基礎復習しながら作ってみたい物を調べながら書きだして3日だけど全然頭に入ってくる感じが違って楽しい!
どうしても分からない事が出てきたら聞きにきますのでその時はどうか宜しくお願いします。

185 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 06:45:13.21 ID:KETh1A50.net]
とりあえずGUI表示させてボタンつけたりできて
敷居が超低いことがわかって興奮したけどそれで終わってしまった
ガチ系じゃなくて、ちょっとした作業って具体的に何ができるの

186 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 12:32:22.90 ID:AkEZ67b9.net]
>>179
ご質問の趣旨に沿っているか分からないけど、私も趣味でPyQtでちょいちょいツール作っていますよ。
最近作ったもの↓
・子供が迷路たくさんやりといと言うので、迷路作成プログラム(PyQtでプリンタ使う練習)
・車のO2センサー電位を表示するプログラム(マイ

187 名前:コンで測定回路を自作。matplotlibとPyQt組み合わせ)
・子供がひと桁の足し算の練習をやりたいというので、足し算ドリル
・物理現象で乱数作る実験したくて、その検証プログラム(トランジスタの電子雪崩回路自作、matplotlibとPyQt組み合わせ)
・フラクタル画像の実験で雪の結晶ぽい画像を描画するプログラム
・車のCAN-BUSをモニターするプログラム
・USBシリアルのモニタ
[]
[ここ壊れてます]

188 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 13:02:26.42 ID:CtpC3PM8.net]
>>179
業務支援スクリプト

189 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 13:56:26.96 ID:Gps+nt/a.net]
レフ機から画像のインポート
クリップボードのスタック
端末出力の特定の語の着色
辞書
写真の露出からEV値に変換(現場の明るさの数値化)
フラクタル図形の描写
素因数分解
素数判定
imgur のバグの簡易対処

等等

190 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 14:28:26.43 ID:AkEZ67b9.net]
>>182
素数判定ってどうやりました?
私は2から与えられた数の平方根(または半分:mathをimportしない場合)までをひたすらforループで%して
判定するプログラムを作ったのですが、もっとスマートな方法ってありますか?



191 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 14:28:30.33 ID:5hP294qc.net]
git系プログラムのプロセス通信を使ったgitクローンのタイムスタンプ同期

192 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 14:34:57.32 ID:6h6HwMDb.net]
素数判定ってIF文並べていけばいいだけじゃないの?

193 名前:デフォルトの名無しさん [2019/11/14(木) 14:56:48.60 ID:c3Z653za.net]
メモリとかファイルアクセス可なら
エラトステネス

194 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 15:10:56.35 ID:Gps+nt/a.net]
>>183
素数出したやつキャッシュしておけばもっと早くとかはあるけど
ルートまで単純にチェックするのが簡単なので C言語で書き直した
wolfram などの判定は異常に速いから素数判定の数学の術を知れば
もっと早くなるとおもうので数学の板でそこの住民に聞いてくれ
あいつら素数大好き

195 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 15:24:29.50 ID:1CVvHcAw.net]
sympy に素数の関数が沢山有るよ。

196 名前:179 mailto:sage [2019/11/14(木) 15:50:22.34 ID:KETh1A50.net]
>>180,181,182
おぉめちゃくちゃ沢山ありますね
主にPC上での補助ツールの想定しかしていませんでしたが
データさえインポートできれば、ちょっとしたIoTみたいなことができるのですね

JavaScriptのときは実用する機会が多かったのでモチベが続いていたのですが
Pythonで表現できることも多そうなので同じ感じのモチベでやろうと思います
ありがとうございました

197 名前:デフォルトの名無しさん [2019/11/14(木) 18:27:10.81 ID:Vty2Vo6K.net]
var y=0

func main():
for y in range(4):

y += 1
print(y)

4まで表示したら終了したいのですが、どのようにして処理を終了するのでしょうか
1
2
3
4
1
2
3
4
とメイン関数内で繰り返されます

198 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 18:37:15.62 ID:pNqcUeAa.net]
>>190
   >>1

199 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 19:39:30.62 ID:zR2SGApq.net]
それよりスレタイだ
スレタイ読め

200 名前:デフォルトの名無しさん mailto:sage [2019/11/14(木) 19:50:22.85 ID:pNqcUeAa.net]
>>192
おお
それも そうだなwww



201 名前:デフォルトの名無しさん [2019/11/14(木) 22:48:41.07 ID:JLcgFUDX.net]
ソケットプログラミングの実験なんかもPythonでできるし、速度や並行性を要求されないものだったら
大抵Pythonで書いて楽してるな。

その辺を要求されたらC#になる感じだな。
あとはブラウザ上でなんか動かすときのためにJavascriptを知っておけば、
PC上でのプログラミングは

202 名前:大体カバーされる感ある。 []
[ここ壊れてます]

203 名前:デフォルトの名無しさん mailto:sage [2019/11/15(金) 07:42:51.96 ID:1PuPU5S7.net]
>>190
これ言語何?

204 名前:デフォルトの名無しさん mailto:sage [2019/11/15(金) 09:43:06.08 ID:gWMbHCLD.net]
if((i%FIZZ)==(i%BUZZ)==0):
上記を含むコードを動かしたところ、意図する動作にはなるのですが
こういう書き方、して良いんでしょうか
(言語によってokだったりngだったりしたような)
この書き方の名称が解らないので調べられません

205 名前:デフォルトの名無しさん mailto:sage [2019/11/15(金) 12:05:31.28 ID:lOWMbTFc.net]
>>195
https://mevius.2ch.net/test/read.cgi/tech/1568531160/442

206 名前:デフォルトの名無しさん [2019/11/15(金) 14:13:50.84 ID:76R0IrhI.net]
>>196
andの省略で条件の連結が可能
10 < a < 30 みたいに書ける

207 名前:デフォルトの名無しさん mailto:sage [2019/11/15(金) 17:13:38.60 ID:gWMbHCLD.net]
>>198
ありがとうございます

208 名前:デフォルトの名無しさん mailto:sage [2019/11/15(金) 18:34:18.36 ID:7pVJDIaJ.net]
ほんとに初歩の初歩でごめんなさいなんですけど、今電卓を作っていて、ボックスをからにしてから結果を表示したいのですがreturn.self.Box.delete(0,tk.end)と
return self.Box.insert(tk.end,eval(self.Box.get()))
を順番に実行したいのですがどうやっても同時になってしまいます、順番にやる為にはどうすればいいですか?

209 名前:デフォルトの名無しさん [2019/11/16(土) 05:52:53 ID:bkZ6TXWU.net]
ループってなんで難しいんですか(´;ω;`)

210 名前:デフォルトの名無しさん mailto:sage [2019/11/16(土) 09:02:05.13 ID:VdtmVMT7.net]
>>201
loopyだから



211 名前:デフォルトの名無しさん [2019/11/16(土) 10:06:59.16 ID:bkZ6TXWU.net]
基礎は大事ですか?

212 名前:デフォルトの名無しさん [2019/11/16(土) 10:14:55.78 ID:t6zcY+AG.net]
初心者はこんなコードを書きやすい
典型的な糞コード

ループ {
sum = _mm_add_ps(sum, data[i]);
}

213 名前:デフォルトの名無しさん mailto:sage [2019/11/16(土) 10:18:14.83 ID:GIYj0orb.net]
フォンノイマン型のコンピュータの効率の良いメモリ活用ために
変数を使ったり代入をするのが
数学的ではない奇妙に見える方法だから

214 名前:デフォルトの名無しさん mailto:sage [2019/11/16(土) 10:37:59.07 ID:wNtItu5d.net]
mp3をvlcから再生するとまともな音質なのにpygame.mixerから再生すると音割れ酷いんですけどどういう違いが考えられますかね?

215 名前:デフォルトの名無しさん [2019/11/16(土) 10:49:12.07 ID:t6zcY+AG.net]
事前に windows media player 立ち上げて(こっちは立ち上げるだけで何もしない)から実行したら?

216 名前:デフォルトの名無しさん [2019/11/16(土) 11:54:36.89 ID:QixdnrUX.net]
pythonって何?

217 名前:デフォルトの名無しさん [2019/11/16(土) 13:29:03.42 ID:EoZMxBL0.net]
オッパイソン。

218 名前:デフォルトの名無しさん mailto:sage [2019/11/16(土) 13:41:51.01 ID:OsJC49HI.net]
>>208 男性器、大蛇。
パイソン= 錦蛇

219 名前:デフォルトの名無しさん mailto:sage [2019/11/16(土) 14:32:13.94 ID:IV2YvwIv.net]
>>204
どうして糞コードなんですか?
sumを使いまわすなってことですか?

220 名前:デフォルトの名無しさん mailto:sage [2019/11/16(土) 15:47:44.42 ID:wNtItu5d.net]
>>207
書き忘れてました。実行環境はラズパイ3です。
vlcプレイヤーを立ち上げた状態でpygameで鳴らしてみましたがやはり同じ曲でも音割れしますね・・・スピーカーを替えても同じでした。
init時のパラメータを調整してみるしかないのかな



221 名前:デフォルトの名無しさん [2019/11/16(土) 15:52:13.18 ID:MmPHNC45.net]
ぐぐればいっぱい出る

222 名前:デフォルトの名無しさん mailto:sage [2019/11/16(土) 15:56:19.86 ID:wNtItu5d.net]
自己解決しました

223 名前:デフォルトの名無しさん [2019/11/17(日) 15:41:37.34 ID:1Qw6RGLV.net]
ゲームプログラミングでも上達するなりか?

224 名前:デフォルトの名無しさん mailto:sage [2019/11/17(日) 15:57:25.83 ID:+usv6kar.net]
>>215
名作はもちろん、
つきぬけた糞ゲーをつくるのも、
なかなかにむずかしいと学べるだろうよ。

225 名前:デフォルトの名無しさん [2019/11/17(日) 17:20:28.54 ID:1Qw6RGLV.net]
テトリスでもかなり

226 名前:むずいよ []
[ここ壊れてます]

227 名前:デフォルトの名無しさん mailto:sage [2019/11/17(日) 17:21:54.63 ID:+usv6kar.net]
>>217
HATETRIS・・・

228 名前:デフォルトの名無しさん [2019/11/18(月) 08:06:17.10 ID:Z0XWPK/5.net]
r1 = "6x/im-name-5kg/10.x"
r1b = "6x/im-na-me-5kg/10.x"
r2 = "7x/im-250g-name/20.x"
r2b = "7x/im-250g-na-me/20.x"
r3 = "8x/im-1kg-name-1kg/30"
r3b = "8x/im-1kg-na-me-1kg/30"

name部分にはランダムな英語文字列(大文字/小文字のみ)が入ります
na-me は apple -> app-le みたいなパターンです.その他記号や数字は入りません
このname部分だけ抽出したいんですが,正規表現だとどう書くのでしょうか
if使って不格好にやることはできるのですが,遅いです

229 名前:デフォルトの名無しさん [2019/11/18(月) 09:45:18.79 ID:ahZzeXy3.net]
[A-Za-z\-]+

230 名前:デフォルトの名無しさん mailto:sage [2019/11/18(月) 10:26:30.32 ID:yOEY+vW5.net]
>>219
name以外の部分はそこで列挙したパターンのみなのか、数字や桁数などが可変なのか?
最初に正確な仕様を出さないと、後から五月雨式に追加すると非難されるぞ



231 名前:デフォルトの名無しさん mailto:sage [2019/11/18(月) 11:06:23.31 ID:Z0XWPK/5.net]
そうですね、いままとめるので少々お待ちください…

232 名前:デフォルトの名無しさん mailto:sage [2019/11/18(月) 11:41:25.16 ID:CjfZ5YZK.net]
>>219
im-(?:¥d+k?g-)?(.*?)(?:-¥d+k?g|/)
とか
im-(?:[¥d]+.+-)?([^¥d][A-Za-z]+-?[^¥d][A-Za-z]+)
とか

233 名前:デフォルトの名無しさん [2019/11/18(月) 12:19:53.85 ID:Z0XWPK/5.net]
可変長文字列/im-名前-重量/2桁の数字 可変長文字列
可変長文字列/im-重量-名前/2桁の数字 可変長文字列
可変長文字列/im-重量-名前-重量/2桁の数字 可変長文字列
という3種類がテンプレートで,重量と名前の表記には揺れがあります
名前ブロックを抽出するのが目的です
例えば~/im-1.5kg-name/xx~のときはnameが欲しい
~/im-100g-n-a-m-e-100g/xx~のときはn-a-m-eが欲しい

234 名前:デフォルトの名無しさん [2019/11/18(月) 12:22:23.33 ID:Z0XWPK/5.net]
def gen_objects(elems):
____import random,string
____name_pattern = ["name","n-ame","n-a-me","n-a-m-e"]
____weight_pattern = ["100g","1kg","1.5kg"]
____temp = []
____for i in range(elems):
________rand_strings = "".join([random.choice(string.punctuation + string.ascii_letters + string.digits) for i in range(random.randint(4,7))])
________rand_name = random.choice(name_pattern)
________rand_weight = random.choice(weight_pattern)
________rand_footer_num = random.randint(10,99)
________n_w = f"{rand_strings}/im-{rand_name}-{rand_weight}/{rand_footer_num}{rand_strings}"
________w_n = f"{rand_strings}/im-{rand_weight}-{rand_name}/{rand_footer_num}{rand_strings}"
________w_n_w = f"{rand_strings}/im-{rand_weight}-{rand_name}-{rand_weight}/{rand_footer_num}{rand_strings}"
________obj = random.choice([n_w,w_n,w_n_w])
________temp.append(obj)
____return temp

testlist = gen_objects(10)

こういう感じのテストユニットをループで回して正規表現でnameを抽出していってnamelistを作成しようとしています

235 名前:デフォルトの名無しさん [2019/11/18(月) 12:24:29.75 ID:ahZzeXy3.net]
>>224
>>219 には浮動小数点入ってないな
曖昧過ぎて話にならん

236 名前:デフォルトの名無しさん [2019/11/18(月) 12:29:41.86 ID:Z0XWPK/5.net]
今は3種類の正規表現パターンでtryとtypeErrorを重ねて抜き出してます
もう少し早くて上手いやり方がないかなと考えています

237 名前:デフォルトの名無しさん mailto:sage [2019/11/18(月) 12:53:59.47 ID:OXFmVxDx.net]
https://ideone.com/VVB

238 名前:2r0 []
[ここ壊れてます]

239 名前:デフォルトの名無しさん mailto:sage [2019/11/18(月) 14:00:40.82 ID:CjfZ5YZK.net]
>>224
im-(?:¥d+¥.?¥d*k?g-)?(.*?)(?:-¥d+¥.?¥d*k?g|/)
とか
im-(?:[¥d]+.+?-)?([A-Za-z]+(?:-?[^¥d][A-Za-z]+)*).*/
とか

どっちも微妙なところがあるから用途に合わせて組み合わせるなり最適化するなりしてどうぞ

>>225 本題と関係ないけど:
- 名前パターン x 重量パターンは12種類しかないから全部テストしたほうがいいんじゃ?
- 入力値のバリエーション増やして品質あげたいならHypothesisとか使うといいかも
- elemsという名前で数を渡されるのはちょっと…

240 名前:デフォルトの名無しさん mailto:sage [2019/11/18(月) 14:28:30.73 ID:kC9nbpJq.net]
>>224
(?<=im¥-).*?k?g?(?=¥/)で抜き出して、^[¥d¥.]+k?g¥-|¥-[¥d¥.]+k?g$で削除したら?



241 名前:デフォルトの名無しさん [2019/11/19(火) 07:49:22.12 ID:XrW2V/V1.net]
あーこれケツのランダム文字列にも/が出てくると破綻するんか。死ね
pat = r''im-(\d.*?k?g?-)?([a-zA-Z-]*)"
pick = re.search(pat,i)
pix = pick[2].rstrip("-")
これでダメかな

242 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 08:32:39.89 ID:kFNJ3nbu.net]
なるほ堂

243 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 09:27:15.87 ID:iaQaZOOq.net]
.+?\/im-(?:\d+k?g-)?([a-zA-Z-]+)(?:-\d+k?g)?\/.+
で$1でnameだけ取り出せるかな
jsでしか確認してないけど

244 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 09:33:08.37 ID:iaQaZOOq.net]
小数点入ってんのか
.+?\/im-(?:[\d\.]+k?g-)?([a-zA-Z-]+)(?:-[\d\.]+k?g)?\/.+
に修正

245 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 10:04:52.27 ID:oTxEUlYH.net]
numpyに入ってる画像をkivyのパネルにtextureにして貼ってるんだけどサイズが合ってない
numpyの時点で指定サイズに縮小とかできませんか

246 名前:デフォルトの名無しさん [2019/11/19(火) 11:14:53.81 ID:JtEhgFhM.net]
https://www.youtube.com/watch?v=aeWmdojEJf0
遺伝的アルゴリズムとニューラルネットワークの違いはなんですかね

247 名前:デフォルトの名無しさん [2019/11/19(火) 12:22:53.03 ID:9syUGbcK.net]
遺伝的アルゴリズムは最適化法
ニューラルネットはモデル

248 名前:デフォルトの名無しさん [2019/11/19(火) 12:53:12.56 ID:8naC8O/U.net]
>>235
numpy だけでは無理
numpy -> PIL Image -> resize -> numpy

249 名前:デフォルトの名無しさん [2019/11/19(火) 16:38:25.85 ID:JtEhgFhM.net]
>>237
わかんない

250 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 21:18:34.28 ID:kpg8RS9X.net]
>>239
遺伝的アルゴリズムは、生命の進化過程を基にした、より良いデータを生み出す手法
ニューラルネットワークは、脳の仕組みを基にした、AND回路やOR回路の組み合わせのような、処理するための回路



251 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 21:37:12.77 ID:5cAUjifH.net]
遺伝的アルゴリズムは、集団の中で殺し合ってくださいと言うバトルロワイヤルな世界、最後に生き残った者たちで生きて行こうぜと言う殺伐とした世界

ニューラルネットワークは、集団に役割を持たせて、みんなに狩や料理や建築などを割り振って、上手くできるヤツを育てて専門家を作って、出来ない奴もいるけど取り敢えず置いとけと言う優しい世界

252 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 23:04:25.84 ID:gXqTBZ4g.net]
別にニューラルネットワーク同士を遺伝的アルゴリズムで殺し合わせて学習させてもいいんだぞ

253 名前:デフォルトの名無しさん mailto:sage [2019/11/19(火) 23:06:06.45 ID:FKsBQDds.net]
ニューラルネットワークの遺伝的アルゴリズム選抜ェ

254 名前:デフォルトの名無しさん [2019/11/20(水) 04:16:18 ID:MuZ0V3fT.net]
GANがまさにそうだと思うんだけど…

255 名前:デフォルトの名無しさん mailto:sage [2019/11/20(水) 06:23:13.95 ID:K+IlI0F5.net]
癌はまさにそうだ…

256 名前:デフォルトの名無しさん [2019/11/20(水) 08:56:34.21 ID:F9Zb1c/g.net]
いや敵対的生成ネットワークのことだって。

257 名前:デフォルトの名無しさん [2019/11/20(水) 09:04: ]
[ここ壊れてます]

258 名前:02.02 ID:BMlssBJW.net mailto: 遺伝的アルゴリズムとニューラルは技術的に関連があるの?
遺伝的アルゴリズムのほうが簡単ですか?
[]
[ここ壊れてます]

259 名前:デフォルトの名無しさん mailto:sage [2019/11/20(水) 09:11:29.60 ID:2AIX148z.net]
お前さ、お勉強スレで

> glslとpytorchでの画像認識は似ているのですか?
> pytorchとtesorflowlってなにがちゃうんですか?
> どちらからはじめたらいいです?

とか聞いてた奴だろ
二度とプログラミングするなと言っていたはずだが、もう一度言わないと分からないか?

260 名前:デフォルトの名無しさん [2019/11/23(土) 09:43:22.24 ID:EZrHMol+.net]
tkinterで線を描くと線がギザギザしてしまいます
フォトショップのようななめらかな線を引く方法を教えて下さいませ><
アンチエイリアス?って言うんでしたっけ?助けてください



261 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 09:47:17.98 ID:TgM3Aq9p.net]
GANって遺伝的アルゴリズムだったんだ。知らないで調律してた
ただの普通の敵対的生成じゃん。駄目だなあ、技術から入ると背景の理論の壮大さを
まったく感じ取れない

262 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 10:01:47.45 ID:rr4WRS2d.net]
>>249
フォトショでもおまえのマウスさばきが糞ならギザギザの線になるんだが。

あと、みためは同じような「なめらか感」でも
自動で手振れによるぎざぎざをなかったことにする派と
手の動きを、近似の数式にすることで、どこまでもなめらかに表現している(ベクタ)派
があるんだが。

263 名前:デフォルトの名無しさん [2019/11/23(土) 10:04:35.49 ID:EZrHMol+.net]
>>251
アンチエイリアスのやり方を教えて下さい。お願いします。
tkinterだと斜め45度の直線でもギザギザしてしまいます><

264 名前:デフォルトの名無しさん [2019/11/23(土) 10:10:17.81 ID:cBKKqL2b.net]
canvasの解像度替えろ

265 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 10:11:06.63 ID:rr4WRS2d.net]
>>252
wikiれ
そもそも白黒2値ワールドとかだったら( ゚Д゚)イッテヨスィ

266 名前:デフォルトの名無しさん [2019/11/23(土) 10:13:12.68 ID:EZrHMol+.net]
>>254
白黒2値じゃない白黒の境界を灰色にする方法をお願いします><

267 名前:デフォルトの名無しさん [2019/11/23(土) 10:15:03.84 ID:EZrHMol+.net]
>>253
解像度を変えても治りません。。。

268 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 10:34:30.18 ID:rr4WRS2d.net]
>>255
灰色とひとくちにいうが
こいのとうすいの くらいは作っておかないと
コレジャナイ感が出そうなんだが。

tkinterの色指定についての説明を読めよ。
「How to change the colour of everything in a tkinter GUI」とかでぐぐるもよし。

英語アレルギーなら
端末を窓から投げ捨てろ

269 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 10:54:16.58 ID:3WxMvOwa.net]
きっとブレゼンハムのアルゴリズムか何かで線を引いてるだけだろ
ならアンチエイリアスを自前で実装すればいい

270 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 12:14:52.78 ID:B0RgWWc8.net]
pyautoguiでchromeの操作を自動化したいんだけど、chromeでリンクをクリックしたあと、ページの完了が終わるまで待つには、sleep使う以外にはどうしたらええんやろか



271 名前:デフォルトの名無しさん [2019/11/23(土) 13:01:09.50 ID:MYL7zca4.net]
var array =[
[0,1,0,1],
[0,1,0,0]
]
var array2 =[
[0,0,0,0],
[0,0,0,0]
]


配列がすべてゼロだったら、という条件はどう書くんですかね

272 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 13:11:12.94 ID:rr4WRS2d.net]
>>259
セレニウムだと「クリックできる状態か否か」を判定できるんだが
pyautoguiにあるかどうかはシラネ

273 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 13:13:50.16 ID:rr4WRS2d.net]
>>260
中身全部を0かどうか順番にチェック
0じゃないものを発見した時点で0以外をみつけたフラグをおっ立

274 名前:ててチェックを抜ける(break)

チェックする部分の次のところでは
0以外発見!のフラグがたってるかどうかで
処理をわける
[]
[ここ壊れてます]

275 名前:デフォルトの名無しさん [2019/11/23(土) 13:58:42.54 ID:Lev/ciM6.net]
そういえばwindwosのminesweeperをポチポチするプログラムを
pythonで書いて自動化して完成させた途端
msがminesweeperのデザイン変更しやがって糞な思いした
画面ポチポチするプログラムは仕様変更に対して効率悪い

276 名前:デフォルトの名無しさん [2019/11/23(土) 14:00:46.78 ID:Lev/ciM6.net]
>>260
var 付いてるからスレチだが
python の話と仮定して答えると
numpy 使えば一発

277 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 14:04:58.22 ID:rr4WRS2d.net]
>>263
ボタンの上からn番目みたいなアッタマワルイ指定方法とか、
画面上の座標指定とかじゃなく、
クリックできるようになってるもの固有の何かを指定しておいたとしても、
大幅デザイン変更に遭遇したら泥縄になるのは
さけられない。
あきらメロン

マインスイーパみたいに
マス目があるの絶対な!みたいな
なにがしかの決まりがあるものならば、
マス目の区切りを自動検出して
チェス盤や将棋盤のごとくx軸y軸順番にマス目番号を振っちゃう
みたいなのを作っておけば、
色合いとかかえられた際は
マス目の自動検出をちょいちょい手直しするだけで済むが。

278 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 14:05:28.41 ID:rr4WRS2d.net]
>>264
しらんかった
すごいなnumpy

279 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 14:09:23.86 ID:pGKd1Nh3.net]
サイズ固定でいいなら if array == [[0]*4]*2: とか。

280 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 14:18:32.96 ID:8xX8HZu8.net]
>>260
all([not any(x) for x in array])

そこはかとなくダサいけどall()やany()使うのが普通だと思われ



281 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 14:20:07.06 ID:B0RgWWc8.net]
>>261
ありがとう
seleniumで次クリックする要素が出るまで待つのが王道なのか

282 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 14:25:20.39 ID:rr4WRS2d.net]
>>269
「要素が出た」≠「クリックできる状態」

283 名前:デフォルトの名無しさん [2019/11/23(土) 15:43:49.14 ID:EZrHMol+.net]
>>257
英語はわかりません><

>>258
アンチエイリアスは自前するしかないのですか?

284 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 15:48:30.46 ID:rr4WRS2d.net]
>>271
じゃあPythonどうこうより先に
Google自動翻訳あたりをなんとか使えるように勉強しろ
あと
無知を誇るな

285 名前:デフォルトの名無しさん [2019/11/23(土) 16:20:50.22 ID:EZrHMol+.net]
>>272
英語から日本語への翻訳はまだ学習が進んでなくて使い物になりません。
お前のようにw

286 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 16:28:27.88 ID:6kdTmmEk.net]
>>273
プログラマ向いてないよ

287 名前:デフォルトの名無しさん [2019/11/23(土) 17:03:55.37 ID:EZrHMol+.net]
>>274
プログラマは目指してません><
趣味でPythonの勉強をしてます。
どなたかアドバイスお願いします。

288 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 17:10:04.04 ID:lLsY3+nO.net]
アドバイスくれと言う割に、挑戦する前から自分には出来ませんって
やる気すら無いやつに誰も教えてくれるわけ無いじゃん

289 名前:デフォルトの名無しさん [2019/11/23(土) 17:13:09.06 ID:EZrHMol+.net]
>>276
挑戦はしてます。。。
英語を翻訳機にかけてみましたが日本語になりません。。。

290 名前:デフォルトの名無しさん [2019/11/23(土) 17:23:00.52 ID:EZrHMol+.net]
おすすめの翻訳機はありますか?



291 名前:デフォルトの名無しさん [2019/11/23(土) 17:37:34.31 ID:EZrHMol+.net]
僕は昔フラッシュのアクションスクリプトを勉強してたんですが
フラッシュではジャギはかからずにアンチエイリアスが自動でかかりました
パイソンはできないのですか?

292 名前:デフォルトの名無しさん [2019/11/23(土) 18:00:42.08 ID:Lev/ciM6.net]
気になるならPILでお絵描きしてtkのcanvasに貼れ

293 名前:デフォルトの名無しさん [2019/11/23(土) 18:06:19.44 ID:EZrHMol+.net]
>>280
ありがとうございます。
別のライブラリに頼るしかないのですね。
その方法を採用させて頂

294 名前:きます! []
[ここ壊れてます]

295 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 18:26:54.09 ID:B0RgWWc8.net]
>>270
とりあえずpyautogui.locateOnScreenメソッドで次クリックするアイコンの画像が出てくるまでループしてsleepする形にしたわ

pyautogui.locateOnScreenは画像がなかったら、ImageNotFoundExceptionの例外を上げるとドキュメントに書いてあるのに、noneを返してくるわ(´・ω・`)

296 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 19:21:19.90 ID:rr4WRS2d.net]
>>282
力技解決報告とりまおつ

297 名前:デフォルトの名無しさん [2019/11/23(土) 21:06:40.36 ID:MYL7zca4.net]
var array2 =[
[0,0,0,0],
[0,0,0,0]
]

func _ready():
for i in array2.size():
for j in array2[i].size():
if array2[i][j] != 0:
print("true")
else:
print("false")

配列にゼロが含まれるかどうかチェックしたいんですが、これだとfalseが8回帰ってきますよね
あるかないか 1度のみの結果を返すように出来ますか
ちなみにgodotです
ありがとう

298 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 21:16:54.64 ID:rr4WRS2d.net]
>>284
スレチ&板違いだ
延々ここで続けるんじゃない
gamedev板へ(・∀・)カエレ!!!

299 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 21:17:51.31 ID:rr4WRS2d.net]
近頃
あっちのスレでもこっちのスレでも
GodotをPythonだと思って湧いてくるあふぉが多すぎるから

次からは
1に
「godotはスレチ&板チ (・∀・)カエレ!!!」を
明記した方がいいとおもう件。 >>980あたりの人へ

↑についてどうよ? >>all

300 名前:デフォルトの名無しさん [2019/11/23(土) 21:22:39.07 ID:MYL7zca4.net]
帰ります(´・ω・`)



301 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 21:24:36.78 ID:rr4WRS2d.net]
>>287
出て逝く前に
>>262はちゃんと読んだか?
もまえ>>260だろ?

302 名前:デフォルトの名無しさん [2019/11/23(土) 21:26:50.79 ID:NPpi8aJ+.net]
まあ、冗談だけど
x=sum(array2,[])
x.sort()
x[0]==x[-1]==0

303 名前:デフォルトの名無しさん mailto:sage [2019/11/23(土) 21:30:52.40 ID:fygFNKSM.net]
>>269
Ruby で、Selenium WebDriver なら、

driver.manage.timeouts.implicit_wait で、要素の検索のタイムアウト秒数を設定できる。
何も設定しなければ、10秒でタイムアウト

options = Selenium::WebDriver::Chrome::Options.new
options.add_option(:detach, true) # ブラウザを操作しない
options.add_argument('--start-maximized') # 画面最大

driver = Selenium::WebDriver.for :chrome, options: options
driver.manage.timeouts.implicit_wait = 30 # 要素の検索の timeout

304 名前:デフォルトの名無しさん [2019/11/24(日) 09:31:23.38 ID:oYE0zbvZ.net]
>>288
ええ、読みました
変数を加算していって合計が0以上だったら、という条件でもいいのでしょうか?

305 名前:デフォルトの名無しさん mailto:sage [2019/11/24(日) 09:38:13.39 ID:s1tpy+px.net]
>>291
値が非負だという前提があるのならそれでもいいんじゃね?
コメントなどで明示しとかないとバグの元になるが。

306 名前:デフォルトの名無しさん [2019/11/24(日) 09:39:25.68 ID:oYE0zbvZ.net]
>>292
どうも
配列の長さが同じなら、比較用の配列用意するのもいいみたいですね
上のやり方試してみます

307 名前:デフォルトの名無しさん mailto:sage [2019/11/24(日) 23:49:11.18 ID:Qx41XXLY.net]
すまん誰かエスパーしてぇ………
anacondaでpython3入れたんだけどコマンドプロントでpython3 --versionやっても何も結果が返されない……
anacondaのインストールフォルダに行けばpython3いるしjupyter notebookとかは普通に使えるのん…
なんで…なんでぇ……コマンドプロントのいじわるぅ……

308 名前:デフォルトの名無しさん mailto:sage [2019/11/24(日) 23:55:59.64 ID:Qx41XXLY.net]
ごめんね…自己解決したよ
スレ汚してごめんね…!

309 名前:デフォルトの名無しさん [2019/11/25(月) 12:30:19.00 ID:pjJu ]
[ここ壊れてます]

310 名前:ONFZ.net mailto: 書き込む前に考えろ []
[ここ壊れてます]



311 名前:デフォルトの名無しさん [2019/11/25(月) 13:12:54.83 ID:TS/Fak3X.net]
いや書き込むと解決するんだよ

312 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 14:06:00.42 ID:MglL2GPD.net]
書き込む前にテディベアに相談しろ

313 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 14:41:48.11 ID:p8g7UnzP.net]
なんでこの言語は
オブジェクト指向なのに
関数で属性を所得することがあるんだ?
なんか意図があるのか?

314 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 14:55:04.98 ID:meWbd2fX.net]
関数で属性を取得したい、という意図があるんだろ
それ以上のどういう説明が欲しいんだ

315 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 14:56:32.15 ID:r/eYGe8L.net]
オブジェクト指向じゃなくマルチパラダイム言語だぞ

316 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 15:00:10.38 ID:oN5ryHTE.net]
後付けOOPだからしゃーない
さらに作者は関数型も嫌いだから中途半端なサポートになってる

317 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 15:24:30.38 ID:p8g7UnzP.net]
初心者に最適みないな煽り
で解説書でてるが
宣言いらないし、見た目はシンプルだからこそ
易しい言語ではないな 

318 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 15:36:06.86 ID:6PZ0TCvi.net]
日本語でおk

319 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 16:21:52.74 ID:MOiXV6c7.net]
>>299
開発中に変数の型をコードで確認できると便利だろ
あとSQLやPandasの各列をfor文で操作する時に、型チェックして分岐をつけることもある

320 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 19:28:04.23 ID:WAjfk16n.net]
この引数受け取って < 又は > を関数側で判断したいんだけど どう記述すりゃいいの?
qsort(lambda x, y: x < y, [2, 4, -90, 3, 10])

単純に変数に入れて出力してみたけど
def qsort(a, b):
........print("a= ",a)
........print("b= ",b)

不等号 < > が全く見えません
a= <function <lambda> at 0x000001D564F7B4C8>
b= [2, 4, -90, 3, 10]



321 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 21:13:40.05 ID:OXWkeipl.net]
>>306
その書き方で間違ってはないよ
渡されたlambdaのソースを確認したいなら
import inspectしてprint(inspect.getsource(a))

322 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 21:40:31.09 ID:VwBWJhfV.net]
https://github.com/AmbientDataInc/EnvSensorBleGw/blob/master/src/gw_RPi/env2ambientBS.py

これを動かしてみると、
NameError: name 'companyID' is not defined
とエラーになってしまいます。

51行目からの関数「def send2ambient(dataRow):」の中の
52行目の
if companyID == 'ffff': とif文がありますが、どこにもcompanyIDという変数は見当たらない気がします。
56行目〜59行目、52行目を削除して、53行目〜55行目のインデントを戻せば正常に動きました。
companyIDはどうやって取得するんでしょうか?

323 名前:デフォルトの名無しさん mailto:sage [2019/11/25(月) 21:52:08.16 ID:VwBWJhfV.net]
>>308
多分解決しました

value[0:4]にcomanyIDが入っていたので、
77行目でvalue[0:4]も渡して、
51行目の引数にcomanyIDを加えてやると動きました

これであってますか?

324 名前:306 mailto:sage [2019/11/25(月) 22:40:34.23 ID:WAjfk16n.net]
>>307
不等号記号が判断できました
ありがとうございます

325 名前:デフォルトの名無しさん [2019/11/26(火) 05:32:54 ID:+E2vdhzD.net]
>>36
自前でsort_byみたいなのを作るのかな

326 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 11:43:30.34 ID:x6kjeL8J.net]
パッケージ、モジュールについて質問です。

import numpy as np
a = np.

327 名前:random.rand(10)

という記述があったとします。

np はパッケージ
random はモジュール
rand() は関数

であっていますか?

np がパッケージだとすると、パッケージは関数や定数などを含むことができてしまっておかしいような気もします。

このあたりについて解説をお願いいたします。
[]
[ここ壊れてます]

328 名前:デフォルトの名無しさん [2019/11/26(火) 11:53:00 ID:sOexhNbU.net]
あってる場合もあるし
あってない場合もある

329 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 12:04:40 ID:n4j/cOk3.net]
中身みたらいいんじゃないの?
import numpyがPackage
import randomがSub-Package
randがfunctionってコメント書いてる

330 名前:デフォルトの名無しさん [2019/11/26(火) 12:07:13 ID:sOexhNbU.net]
質問者の本来の意図は判らんが
質問文だけ読めば
import hoge as fuga
fuga.hage.hige()
の一般的なことを聴いてる可能性もある
ケースバイケースとしか言いようがない



331 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 12:44:26.92 ID:P1h37MBR.net]
プログラミング始めて2ヶ月弱です。
今TwitterのsearchAPIを使用してtkinterのメインフレーム内のテキストウィジェットに検索結果を追加していくプログラムを書いてまして
threadを使用してリアルタイムに追記させていくことは出来たのですが停止がうまくいきません。
ttps://teratail.com/questions/147319
上記URLの様にスタートとストップを分けて書いているのですがストップ時に止まらず応答無しになります。
tryの前に上記URL内のwhile not stop_flag:を置いてループさせているので
ループ中try内のプログラムにif stop_flagがtrueの時にbreakする条件を追加すれば想定道理に動きますでしょうか?
仕事中で詳しくは記述出来ませんがこの考え方で合っているのか確認したく質問させていただきました。

332 名前:デフォルトの名無しさん [2019/11/26(火) 13:31:57 ID:dAEqoOXB.net]
仕事中は仕事しろ

333 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 13:36:13 ID:R22VgyT6.net]
これが噂に聞く寺尾駆動開発……!

334 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 13:40:30.59 ID:n4j/cOk3.net]
while not stop_flagって書いてるし意味わからんな

335 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 16:38:03 ID:jVdruz6/.net]
>>312
気になるのはわかるが
生成の過程はどうであれ
オブジェクトが生成された程度でいいとおもうよ
ここつついてもなんもでてこない

336 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 19:07:33.15 ID:x6kjeL8J.net]
>>314-315
>>320

ありがとうございました。

337 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 22:00:33.85 ID:x6kjeL8J.net]
柴田望洋さんのPythonの本に、

'\\\\\\\\'

と入力すると

'\\\\'

が出力されると書いてありますが、JupyterLab上で実行すると、

'\\\\\\\\'

が出力されます。

これはどういうことでしょうか?

338 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 22:08:10.56 ID:aDj7fQzJ.net]
純粋なリテラルなんだろ

339 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 22:13:19.59 ID:x6kjeL8J.net]
もう一つ質問させてください。

id(1)

とするとある大きな正の整数が出力されます。

オブジェクト「1」のIDだと思います。

ある複雑なオブジェクト(あるクラスのインスタンスなど)にIDが割り当てられているのは理解できます。
おそらくインスタンスを作ったときにIDが割り当てられるのだと思います。

整数の場合にはどうなんでしょうか?我々は整数を使うときに整数のインスタンスを作ったりはしません。

このあたりのからくりについて教えてください。

340 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 22:17:46.99 ID:pgCzIwzp.net]
>>322 >>324
ここは取り下げて↓をアゲたればー?
Julia Juno Jupyter part1
mevius.5ch.net/test/read.cgi/tech/1455271513/



341 名前:デフォルトの名無しさん mailto:sage [2019/11/26(火) 22:29:07.19 ID:6BcoKqX2.net]
>>324
id()で表示されるのは実装にもよるが単純にメモリ内のどの位置にそのオブジェクトがあるかじゃなかったかな?
いちいちidが割り振られるのは単純にプログラム内

342 名前:ナ一度出現した値を再度読み込むときにすぐ読み込めるようにするためだった気がする。
id(1)とかだと同じプログラム内だとずっと同じidになっているがid(10000000000000000000000000000000000)とか数値が大きくなると
ずっと同じ数値を保持するためには莫大なメモリが必要になるから、いちいち同一のidを保持したりせずに毎回値が変わるのがわかると思う

それと、1が整数のインスタンスじゃないというのは勘違いだ。 isinstance(1,int)とすれば整数1が整数のインスタンスだとわかる
プログラムする側が明示的にインスタンスを作らないだけで内部的にはインスタンスになっている

また、C言語などにおいては整数は「単純な値」と言えなくもないが、少なくともpythonにおいては数値もオブジェクト、
dir(1)してみればわかるが1にもさまざまなメソッドがついている
[]
[ここ壊れてます]

343 名前:デフォルトの名無しさん [2019/11/26(火) 22:33:53.44 ID:YnEDvBjE.net]
>>324
https://docs.python.org/ja/3/library/functions.html#id
https://docs.python.org/ja/3/c-api/long.html#c.PyLong_FromLong

>>> a = 256
>>> b = 256
>>> a is b
True
>>> a = 257
>>> b = 257
>>> a is b
False

344 名前:デフォルトの名無しさん [2019/11/27(水) 04:07:41 ID:sALdvXXc.net]
0x100が境なんだね

345 名前:デフォルトの名無しさん [2019/11/27(水) 08:24:04 ID:XCw5dykM.net]
>>322
JupyterでOutに出るのはPythonで表記したときの書き方。
print('\\\\\\\\')すれば\\\\が出る。

346 名前:デフォルトの名無しさん [2019/11/27(水) 09:18:32 ID:KJahAAhq.net]
>>322
つまりprint('\\\\\\\\')はPythonで表記したものではないと

347 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 09:47:06.21 ID:0U9h+SK3.net]
JUpypてrが何か知らんがMacだと¥と\が違うんだろ

348 名前:デフォルトの名無しさん [2019/11/27(水) 14:09:09 ID:ngGnUYLD.net]
>>299
え?俺便利だと思って多用してるけど....

関数側で引数がリストならfor文で引数内の要素で再帰呼出し、リストじゃなければ
引数を処理みたいな感じで使ってる。
(簡単な例を書き込もうとしたらブロックされた...わかりにくくてすんまそん)

349 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 14:40:54 ID:R3eAH8fN.net]
>>332
たぶんインデントなのと半角英数がいっぱいなのが
先週あたりから強化された全板規制にひっかかる。
>>1にのってるようなソースコード用うpろだを使うのだ

350 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 16:09:47 ID:yvOcgkAY.net]
>>332
なるほど
確かに便利だ
オブジェクト指向の概念からいえば
関数で属性取得するの邪道だと思っていたが
柔軟にしないといけないな
これが純粋性より実用性ってやつか



351 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 16:24:01.31 ID:ulQKgCH1.net]
The Zen of Pythonの一部の翻訳についてですが、柴田望洋さんは、

「Errors should never pass silently.」を「エラーを黙って渡してはならない。」と訳しています。

エラーを渡すというようなことが実際にPythonであるのでしょうか?

352 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 16:26:47.69 ID:ulQKgCH1.net]
エラーを黙って見過ごしてはならない。

みたいな意味かと思ったのですが。

353 名前:デフォルトの名無しさん [2019/11/27(水) 17:52:41 ID:b0aYXQt/.net]
>>336
pass silently を「黙って渡す」と直訳するか、その行為を日本語の表現で
「見逃す」、「見過ごす」と訳すかと違いと思う。

日本語的には見過ごすと訳した方が自然に感じます。

354 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 19:02:19.69 ID:ymKEnJ4Y.net]
>>336の意味であってる
「黙って通過させてはならない」的な意味

「エラーを黙って渡してはならない」は完全な誤訳
Errors should never be passed silentlyや
You should never pass errors silentlyじゃないと
エラーを渡すという意味にはならない

355 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 20:33:56.00 ID:hknmBY+P.net]
例外の握りつぶしとかだろ。


356 名前:例外をキャッチしたけど、何もせずに、そのまま処理を継続したとか

Jupyter Notebook(JN)は、Python, Julia, Ruby などで使うIDE だろ。
VSCode みたいなもの

Bash, PowerShell などのシェル経由でも、
シングル/ダブルクォーテーションで、エスケープのタイミングが違ってくる。
Linux/Windows で書き方が異なる

シェルに渡すときに、既にエスケープされているか、されていないのか

エスケープ文字を、エディタで設定できるかも知れない
[]
[ここ壊れてます]

357 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 20:43:49.33 ID:R3eAH8fN.net]
>>335-336
個人的には>>339の解釈に1票。
try:
    なんとかかんとか
except:
    pass
みたいなマジクソ行為は
自分以外の人物が
たとえ0.1×10^23%でもかかわる可能性があるソースコードでは
絶対やっちゃだめだなwww

358 名前:デフォルトの名無しさん [2019/11/27(水) 21:37:06.71 ID:OMjrfaFS.net]
pygameは商用利用できますか?

359 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 21:48:56.24 ID:gPxE2uPM.net]
>>340
どんなに小さな確率でも、と言いたいのかもしれないけど巨大な下図になってるぞw

360 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 21:49:28.61 ID:gPxE2uPM.net]
>>342
数だった。人のことは言えないな。



361 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 22:17:55.37 ID:ap410XA+.net]
>>340
passがダメだとして何なら良いわけ?

362 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 22:18:57.75 ID:vYtjQlD0.net]
>>341
可能だが、pyinstallerのような方法で事実上の静的リンクを行った場合には
LGPLに従ってpygameが含まれている実行ファイル全体の再配布を許可せねばならない
つまり俺が買ったらそれを10円で再販してやる

363 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 22:20:16.38 ID:1UHKBbgP.net]
>>344
passを書くくらいならエラー処理せずに普通にエラー発生させた方がマシ

364 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 22:27:15.42 ID:vYtjQlD0.net]
>>341
補足
あと、リンクの方法に関わらず、そのソフトウェアを買った俺はそれをリバースエンジニアリングし、改造できる
俺のスキルをもってすればライセンス認証の回避は容易であり、お前はそれを禁止できない

365 名前:347 mailto:sage [2019/11/27(水) 22:31:35.68 ID:vYtjQlD0.net]
すまん、俺が金払って買ったなら認証を回避する意味はなかったな
問題は、ダウンロードは無料だが継続して利用するにはライセンス認証が必要になるというような典型的な配布パターンだ
この場合、俺は金を払わずに改造してライセンス認証を突破し、タダでそれを使う
そしてその方法をWebで公開する
お前はそれを禁止できない
なぜならLGPLライブラリを使用しているからだ

366 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 22:42:28.92 ID:ap410XA+.net]
>>346
つまりtry ~ except は不要と言ってるのか?
excaptの中に何を書くのが良いのか訊いているんだが。

367 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 22:48:46.79 ID:R3eAH8fN.net]
>>342
ほんとだ 重要なマイナスが抜けてた!

>>340訂正する
×たとえ0.1×10^23%でもかかわる可能性があるソースコードでは
〇たとえ全世界の砂粒から、ハズレの1粒をひきあてたくらいの確率でも、かかわる可能性があるソースコードでは


>>349
「except:」みたいな雑なくくりをせず
おきるエラーの種類ひとつひとつについて
「except Errorhogehoge:」みたいなかんじで一個ずつちゃんと分岐させろ

368 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 22:57:52.16 ID:ap410XA+.net]
>>350
例外の種類ごとに異なる対処が必要なら分岐するがそうでないならその限りではない。
何か対処すべきことがあればそれを記述するが他にすることがなければpassでよい。

おまえ

369 名前:ウんは何か変な教条主義に囚われているんではないかね? []
[ここ壊れてます]

370 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 23:06:11.22 ID:vYtjQlD0.net]
>>350
悪いけど、最初から個別の例外について虱潰しに対応しようとするのは典型的なアンチパターンだよ
あまりにも手間がかかりすぎるし、変更に対して非常に弱いコードになる。
例外処理で死守すべき大原則は、アプリを落とさないこと、綺麗に回復すること、の2点だけだ。
その上で、必要に応じて丁寧な個別対応をしてもよい。
まずアプリを落とさないことだが、WebのリクエストハンドラであったりUIのイベントハンドラであったりバッチ処理の一番大本のループであったり、
「ここまで戻れば確実に回復できる」という箇所で全ての例外をキャッチし、リトライやエラーメッセージの表示等を行って回復する。
次に綺麗に回復すること、これは、適切にwithやfinally等を使用して例外発生時に適切な後片付けを行うことだ。
この2点が守れていれば例外処理は完璧だが、場合によっては個別対応することで早期に回復できたり、より適切なエラーメッセージをユーザーに表示できたりするケースがある。
しかしそれはあくまでオプションにすぎない。



371 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 23:22:24.86 ID:ymKEnJ4Y.net]
>>351-352
え、お前らマジでこんなコード書いてるの!?
いろいろビックリするわ

try:
____do_something()
except:
____pass

372 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 23:28:50.58 ID:hknmBY+P.net]
Ruby on Rails で、RSpec で、TDD から学びなおせw

373 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 23:31:50.95 ID:vYtjQlD0.net]
>>353
単に無視することが適切な回復なのであればそれで正しいよ
大抵はそうではないが、だからといって例外が発生した瞬間に直上でキャッチしたところで対処のしようがないケースがほとんど
ほとんどの例外は単純にキャッチせずにスルーし、上の方で纏めてキャッチしてエラーを表示したりすることになる

374 名前:デフォルトの名無しさん [2019/11/27(水) 23:36:46.74 ID:OMjrfaFS.net]
>>348
ありがとうございます。ようするにpygameを使った作品は著作権を放棄しろってことなんですね。。。

375 名前:デフォルトの名無しさん mailto:sage [2019/11/27(水) 23:58:21.75 ID:ymKEnJ4Y.net]
>>355
範囲の狭い特定のエラーを意図して無視するのが適切な場合はあっても
あらゆるエラーをすべて無視するのが適切な場合はまずないやろ

376 名前:デフォルトの名無しさん mailto:sage [2019/11/28(Thu) 00:12:16 ID:H2QhOzf/.net]
>>356
細かいツッコミすると、国内で放棄できるのは著作請求権だけ

377 名前:デフォルトの名無しさん [2019/11/28(Thu) 01:29:21 ID:BjRR3Cis.net]
>>358
ありがとうございます!!

378 名前:デフォルトの名無しさん mailto:sage [2019/11/28(Thu) 03:06:02 ID:1K1GwsjB.net]
著作権を放棄しているわけではない
自分の著作権の下で自らの著作物をLGPLの派生物として配布しているんだ
自分の著作物をどんなライセンスで配布しようが本来は勝手だが、利用しているライブラリが他人の著作物である以上、
そのライブラリの著作権を同梱した派生物を配布するためにはそのライブラリの著作権者が定めるライセンスに従わねばならない
そして、そのライセンスが派生物のライセンスを制約するようなものであった場合は結果的に自分の著作物にライセンスが感染する形になるわけだ

379 名前:デフォルトの名無しさん [2019/11/28(木) 05:28:36.70 ID:BjRR3Cis.net]
>>360
そういうことなんですね!
勉強になりました。

380 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 07:46:57.30 ID:LEtsBWW2.net]
俺が不勉強なだけかもしれないが
try:〜except:passでエラーを握りつぶしておいて
直上でエラー処理するってどういうことだ?

普通にエラーをそのままにしといたら呼び出し元にエラーが届いて
そこで処理したらいいだけの話だろ 一番下の階層でpassして握り潰す必要はない



381 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 08:33:14.83 ID:VOkh5kHm.net]
>>362
> try:〜except:passでエラーを握りつぶしておいて


382 名前:がそんなことを言ってるんだ?
そう思い込んでいるのはあなただけでは
[]
[ここ壊れてます]

383 名前:デフォルトの名無しさん [2019/11/28(木) 08:38:48.41 ID:b0jGiHif.net]
異常系をわざわざ戻り値で表現し直すんじゃないの?w
そんなことするより、リスローの方が絶対にいいわな。

384 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 14:36:06.70 ID:B2pLXdx8.net]
>>353
やってるけど

385 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 14:59:01.40 ID:p/uKw1d3.net]
pyautoguiっての普通に使ってる時は問題ないんだけど
リモートデスクトップで1度開いちゃうと画面閉じた時に
pyautoguiの中のsetcursorposってのでエラー出るんだけどどうにかならない?

386 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 16:12:48.01 ID:rcIus152.net]
大企業で無料で商用利用できるIDEでオススメありませんか?
個人ではVScode使ってますがエンタープライズ企業は無償利用無理みたいです

387 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 16:26:05.13 ID:sRkzUhKD.net]
生産性を無視する企業に未来はない

388 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 16:48:19.24 ID:f9JN6uOx.net]
>>367
そんな都合のいいものはない
大企業税(有名税てきな)だとおもって
あきらメロン

389 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 17:08:37.95 ID:VOkh5kHm.net]
>>367
VSCodeはエンタープライズでも無償だぞ

390 名前:デフォルトの名無しさん [2019/11/28(木) 17:24:36.37 ID:i2j7bL3h.net]
どうせVSと近藤してるんだろ



391 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 21:56:29.31 ID:qnF6NUyh.net]
>>357
堅牢なソフトウェアを構築する方法論として、何かエラーがあったらその処理単位ごと
無かったことにするというものがある。DBのトランザクションとかerlangのlet it crashとかな。
そういう方法論ではエラーの種類など見ない。
そこでは逆に、知ってるエラーだけcatchして他はスルーするという手法こそ否定される。
なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
「もっと知らない」はずだからな。

392 名前:デフォルトの名無しさん [2019/11/28(木) 22:06:08.08 ID:4XtsM+GQ.net]
せやろか?

393 名前:デフォルトの名無しさん mailto:sage [2019/11/28(木) 23:49:35.94 ID:3SZL29g0.net]
>>372
ものすっごい中途半端な知識で知ったかしようとする前に基礎を抑えようね

DBのトランザクション処理を実行しました
なんかエラー発生しました
エラーの種類など見ないっ(キリッ)

軽量プロセスにsend messageしました
なんかプロセス落ちました
リスタートあるのみ(キリッ)

>なぜなら、下層のルーチンが「知らない」とスルーしたエラーなら上層のルーチンは
>「もっと知らない」はずだからな。
何を知らないのか考えようね

394 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 00:49:58.07 ID:8hJB6N01.net]
>>372のやり方だと「止まらない」プログラムは作ることはできても
「使える」プログラムは作れそうにないなw

395 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 01:26:05.58 ID:pmSmtC6r.net]
例外原理主義か…

396 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 09:16:06 ID:B0LTR+GE.net]
スターリン風エラー処理

397 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 09:24:58 ID:TmZsQyhe.net]
pyautoguiのsetcursorposエラーはtry:〜except:passで無事解決しました!

398 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 09:28:46 ID:wYCEjZQR.net]
わださんのゆうめいなやつ
https://speakerdeck.com/twada/php-conference-2016
PHPだけど、理解できるだろ。読んどけ。

399 名前:デフォルトの名無しさん [2019/11/29(金) 10:27:27 ID:N/f9f1S7.net]
>>349
漏れもpassは禁止で正しく処理するべきだと考えるが
どうしてもスルーしてプログラムを続行したい場合は

1.フラグを立ててプログラム終了時に報告
2.loggerでsyslogに出力
3.上の1と2の合わせ技

400 名前:デフォルトの名無しさん [2019/11/29(金) 10:30:54 ID:N/f9f1S7.net]
>>355
上の方でまとめてキャッチしたいのに
except で pass したらキャッチされないぞ

except でその場だけキャッチせず上にスルーしたいならあらためて raise しろ



401 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 12:06:18.51 ID:dGU1sZlL.net]
pyautoguiでとりあえずブラウザ

402 名前:内の手作業のの自動化できたから、seleniumにも手を出してみたけどこっちは難しいね
HTMLが分かってないとキツイな(´・ω・`)
[]
[ここ壊れてます]

403 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 17:46:37.36 ID:po6NZMwT.net]
python勉強しようと思うんだけどエディタはjupyterがデフォなの?
visual studioになれてるからvs使いたいんだけどまずいのかな。

404 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 17:47:25.58 ID:lBRwa/7I.net]
ok

405 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 17:51:35.27 ID:VBGSEbtt.net]
>>383
PCのスペックが足りてて問題なく動けば問題ないぞ
スペック足りない俺様PCでは
秀丸エディタかsakuraエディタが精いっぱいなんだぜ

406 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 19:37:04.50 ID:LMfDTWZ+.net]
>>383
VSCodeにしとけ
MSはPythonの開発環境としては今VSCodeを推していて、本家VSの方のPythonサポートはもう将来性がない

407 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 19:41:46.20 ID:VBGSEbtt.net]
>>386
横レスだけど参考になった

408 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 19:56:54.52 ID:SQehs03a.net]
>>380
>漏れもpassは禁止で正しく処理するべきだと考えるが

passは正しい処理ではないと言っているようだが、そう断言できる根拠はないだろ。
ログを吐けばオーケーというのも意味わからん。プログラムの正しさとは何の関係もないだろうに。

409 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 20:05:59.92 ID:8hJB6N01.net]
保守性が落ちるコードは正しいコードとはいえないだろ
例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき

自分ひとりで全部完結するプログラミングなら
他人から見てエラーを脳死で握りつぶしているのか
面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな

ぶっちゃけ「正しいコード」が書きたいならpythonじゃなく証明型プログラミング使えばいいだけだしな

410 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 20:10:38.20 ID:5FLVJ8iu.net]
正しい処理どうこうの前に
passは文字通り何もしてないんだから処理したとは言わないだろ



411 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 20:18:27.56 ID:VBGSEbtt.net]
>>389
> 例外処理でpassするくらいならそもそも例外が出ないようにすべきだし
> 自分で例外処理が書けないなら例外をそのまま発生させて別の誰かか未来の自分が対処できるようにすべき
>
> 自分ひとりで全部完結するプログラミングなら
> 他人から見てエラーを脳死で握りつぶしているのか
> 面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけど
↑イイ!!(・∀・)こと書いてある!!!

412 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 21:32:51.55 ID:SQehs03a.net]
>>389
>例外処理でpassするくらいならそもそも例外が出ないようにすべきだし

なんか言っていることが矛盾してるね。自分ひとりで全部のコードを書いているわけじゃなけりゃ
下層のルーチンから例外が出ないようにするなんてことが常にできるわけがないだろう。
自分で保証できるのは上流の呼び出し元にどういう例外を渡すか(渡さないか)だけ。

>他人から見てエラーを脳死で握りつぶしているのか
>面倒臭くてpassしてるのか分からない変なコード書くのもありかもしれないけどな

意図がわかりやすいコードを書くことが推奨されるのはもちろんだが、逆にコードだけからは
意図を判断しづらいケースはいくらでもあるわけなんでそこを非難しようとしても不毛なだけだと
思うがな。
例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
いたのか、コードの字面だけからはやっぱり判断できんだろう。

そもそも、面倒くさくて握りつぶすという発想がよくわからんな。
面倒くさいなら何もしないでスルーするんじゃないの?
#Javaの話で関数の仕様を変えられないから、とかならわからんでもないが。

413 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 21:44:06.26 ID:8hJB6N01.net]
>>392
下層で例外を上に渡すのか渡さないのか決めるなら
例外処理をどうするのかを上層で判断するのか下層で判断するのか
結局どちらでもない中途半端になるだけだな 
上層に例外処理を任せるなら 例外を握りつぶしにしても上層で握りつぶす
例外が出る可能性を消せないのであれば例外を隠蔽しない
例外を隠蔽するくらいなら例外が出る可能性を完全に消す
単純な話だ

414 名前:


>例えば逆のケースで例外をcatchしていないコードがあった時、それが意図的にスルーして
>いるのか面倒くさいからかcatchしなかったのかはたまた例外が発生する可能性を見過ごして
>いたのか、コードの字面だけからはやっぱり判断できんだろう。

このうちのどれかなんて判断しなくていい 全部対処の必要があるからな
君は「問題なく動くコード」を作ることを最優先にしているようだがそのために「問題を起きていないことにする」んじゃあ意味がない
起きてない問題を解決するのは起きている問題を解決することの数倍難しいんだ

エラーが発生すること自体は開発の過程においては別に悪いことじゃない
エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪
[]
[ここ壊れてます]

415 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 22:04:01.71 ID:SQehs03a.net]
>上層に例外処理を任せるなら 例外を握りつぶしにしても上層で握りつぶす

その例外を発生させた処理に近い方が適切な判断ができるに決まってるだろう。
どういうメリットがあってその処理を上層に任せるなんて言ってるのかねえ。

>エラーを見かけ上発生させなくなることで問題を不可視にするほうが害悪

こうなるともう宗教だな。
仮に内部でエラーが起きたとしても、それが外に対して悪影響を及ぼさないんだったら
無かったことにして全然問題ないと思うが。

416 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 22:08:10.95 ID:5FLVJ8iu.net]
外に悪影響を及ぼさないことを保証できる実力があるなら文句ないわ
俺にはとても出来ない

417 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 22:28:46.19 ID:8hJB6N01.net]
>>394が作ったプログラムが上手く動かなかったときは
下層上層問わずすべてのコードを精査して
「外部に対した悪影響を及ぼさないからエラーを握りつぶしてOK」と「思いこんでいるかもしれない部分」
も含めてチェックしないといけないハメになるな

地獄だぜ

418 名前:デフォルトの名無しさん mailto:sage [2019/11/29(金) 22:51:00.95 ID:X/BrqNBd.net]
全能無謬の神PG降臨

419 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 10:27:47.46 ID:rKTaGmhL.net]
わださんへの反応が皆無で笑ったwさすが初心者スレ。

420 名前:デフォルトの名無しさん [2019/11/30(土) 11:15:37.77 ID:u5c1qEtQ.net]
numpyとかいうのなしで、配列を回転させることはできますか?
テトリスのブロックの回転です

var base = [
[0,0,0,0],
[0,0,0,0],
[0,0,0,0],
[0,0,0,0]
]
var block = [
[0,0,0,0],
[1,1,0,0],
[0,1,1,0],
[0,0,0,0]
]

#
func _ready():
for y in block.size():
for x in block[y].size():
block[y][x] =
print(block)



421 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 11:41:37.85 ID:eoIz8ORY.net]
[[block[3-l][i] for l in range(4)] for i in range(4)]

422 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 11:54:44.80 ID:rKTaGmhL.net]
テトリスなら回転した情報は固定で持っとけ

423 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 12:03:43.42 ID:OO2kPiiB.net]
>>399
 >>401に補足すっと
各ブロックの向き4種類をあらかじめ準備しといて、
まわすボタン(AボタンとBボタンで回る向き違うよな)1回押されるごとに、
(左右どっちか)隣の状態へ行くようにしとけ
4種類目から次へいく指令がきたときは、1種類目を表示するようにも、しとけ。

いちいち回す計算してたら ちぬる

424 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 12:17:28.60 ID:PlBmox+6.net]
配列回すのなんて計算してインデックスを読み替えるだけだろ
配列を書き換える必要などないし計算コストなんてほぼゼロだし極めて単純な算数
>>402はよほど頭悪いんだろうな

425 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 12:51:05.66 ID:rKTaGmhL.net]
> 極めて単純な算数

長いヤツの180°回転がずれたら叫ぶぞw

426 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 12:54:57.33 ID:OO2kPiiB.net]
>>404
んだべや

配列の回転て
手計算だと結構しくじるヤツがいるし
理屈はわかってても、プログラムするとなるとバグ仕込んじゃうヤツけっこういるぞw
>>403は現場を知らない

427 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 12:57:48.37 ID:OO2kPiiB.net]
テトリスブロック回してずれたら(・x・)コロヌ!!!だけど、
ぷよぷよの場合は
「滝登り」できないと逆に困るけどなw

428 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 13:40:28.58 ID:X9RQeX1v.net]
数億パターンとかあるわけじゃないでしょ?
じゃあテーブルルックアップの方が早いに決まってる

429 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 13:51:38.88 ID:e3px8G1e.net]
visual studioでpythonをインタプリタ形式で動かすのってどこで設定すればいいんでしょう?

430 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 13:56:10.70 ID:PlBmox+6.net]
>>408
どのような方法で実行しようがPythonはインタプリタ形式で動きます



431 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 15:12:04.28 ID:u5c1qEtQ.net]
テトリス野郎です
ありがとうございます
理解できないんでもう少し調べてrから着ます(´・ω・`)

432 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 15:47:17.79 ID:MBj/QS/D.net]
class myClass():
def __init__(self, message):
self.value = message

def name(self):
self.name1 = self.value
print(self.name1)

m = myClass("hello!")
print(m.name())

433 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 15:48:48.66 ID:MBj/QS/D.net]
>>411なんですが、実行するとhello!とNoneが表示されます
Noneは、どこから湧いてきていますか(´・ω・`)?

434 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 15:50:04.56 ID:MBj/QS/D.net]
class myClass():
 def __init__(self, message):
  self.value = message

 def name(self):
  self.name1 = self.value
  print(self.name1)

m = myClass("hello!")
print(m.name())

インデント入れるとこんな感じです

435 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 15:54:41.68 ID:OO2kPiiB.net]
>>411-413
最終行が悪い
Noneがいらないなら
m.name()
でおk

436 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 15:57:11.28 ID:OO2kPiiB.net]
ところで
>>413な内容をやらせるのに
nameってつけるネーミングセンスは
ないわー

437 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 16:18:36.23 ID:MBj/QS/D.net]
サンクス、直ったわ(´・ω・`)

NameError: name 'センス' is not defined

438 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 16:34:21.86 ID:Esy6R5Oj.net]
>>409
ああ、一行入力したらすぐに結果が返ってくるようにしたいのです。

439 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 16:46:10.13 ID:OO2kPiiB.net]
>>416
なおってなにより。

2年後の自分が上からよんでって、
過去の自分に対して殺意が湧かない程度の名前をつけるようにしる。
すげーだいじだぞ。

440 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 16:51:12.50 ID:SKhbFAll.net]
Tensorflowでディープラーニングの勉強するのに必要なPCのスペックを教えてください。

GPUはやはりいりますか?



441 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 16:57:04.40 ID:NRfKrTi3.net]
はい

442 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 19:01:21.04 ID:BP9rhd+I.net]
>>419
NVIDIAのGPUがいいとか、その中でもGTX750、850、950、1050以上でないと無理だとか
メモリもできれば8GBできれば16GBがいいとか
色々あったか

4スレッドのCPUだとそれがボトルネックになったなんて話もあったかな

だがスピードを気にしないならGPUなしでも出来るだろ!って人もいる
大規模な問題は出来なくなるが

443 名前:デフォルトの名無しさん [2019/11/30(土) 19:04:37.44 ID:SKhbFAll.net]
>>420-421

ありがとうございます。

小さな問題さえ試せればOKだと考えています。
Tensorflowやいろいろなツールを使えるようになればOKだと考えています。

444 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 19:44:27.10 ID:OO2kPiiB.net]
>>422
いやだからさ、
テンフロつかって 何がしたいかによるんだってばよ・・・

ある1人の文豪の文章全部を教師にして
文豪もどきっぽいあやしいモノをつくったったwwwくらいなら
GPUなし、一昔前の古しいPCでも3週間かけっぱでできるんだYO

ところが
文書データといっても
Abstractがひっぱってこれる既存の理系英語論文全てをターゲットにして
なんかかんかしようとすると
メモリ2テラくらい使っていいスパコンがないと、無理。

445 名前:デフォルトの名無しさん mailto:sage [2019/11/30(土) 23 ]
[ここ壊れてます]

446 名前::18:38.91 ID:X9RQeX1v.net mailto: 結局スパコンのタイムシェアリングで50年前と同じじゃねえか []
[ここ壊れてます]

447 名前:デフォルトの名無しさん [2019/12/01(日) 06:11:57 ID:Yb3VJQ//.net]
はじめましてPython初心者です

a = input()

で入力を求めて、[1,2,3,4,5]
と入力をしても変数aが配列にならず文字になってしまいます。
誰が良い方法をお願いします

448 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 06:47:09.10 ID:i2YaNYYV.net]
c#アプリで計測したデータをpythonで自動的に統計処理してグラフ表示する。
って考えてるんですが、言語はpythonでokでしょうか?Rを使うのとどっちがいいか悩んでます。

449 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 06:49:59 ID:i2YaNYYV.net]
想定してる統計は単回帰とコルモゴフスミノフなど簡単なものです。グラフは回帰直線表示させた後に平均値、最大値、最小値を赤でプロットしたい。

450 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 08:24:56 ID:7UL7JgFh.net]
>>425
input()は文字列を返す関数なので、自分で変換する必要がある
https://docs.python.org/3/library/functions.html#input

In [1]: a = input()
1 2 3 4 5

In [2]: list(map(int, a.split(' ')))
Out[2]: [1, 2, 3, 4, 5]



451 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 08:31:43 ID:gxWit/c+.net]
すみません。
macでanaconda3(python3.7)をインストールしたのですが
ターミナルでconda -versionで確認してもcommand not found
python -Vで確認しても2.7.10と表示されるのですが何故でしょうか

環境構築の質問で申し訳ないですがどなたか詳しい方いますか?

452 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 08:39:56 ID:Yb3VJQ//.net]
>>428
ありがとうございます!
変換する必要があるんですね!

453 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 08:51:20 ID:w+6yrHlL.net]
>>426-427
どっちでもできるよ

その後どういう風に上達していきたいのか
それとももうその作業さえできればおkなのか
あとは自分がどっちの言語がより好きなのか

による

454 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 08:52:50 ID:w+6yrHlL.net]
>>429
Macにデフォで入ってるPythonのほうが優先で呼ばれている件
環境変数を弄らないとだめだとおもわれるが
いじるとそれはそれで困ったことになるかもしれない

py -V
は動くけ?
(Python3系は「py」で呼べるのだ)

455 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 09:05:38 ID:gxWit/c+.net]
>>432
ありがとうございます
py -Vもcommand not foundとなってしまいました

私の今の状態はanaconda3、python3.7ともにインストールはされているもののパスが通っていないと言う認識で間違い無いでしょうか?

456 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 09:15:08.45 ID:YC7h427T.net]
>>433
パスが通ってない可能性に気づいたなら、まず自分なりにパスの確認までしてから次の質問をした方がいいぞ。(自分で考える&確かめる習慣をつけるために。)

457 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 09:27:14.95 ID:YoP0MD/8.net]
>>429
>macでanaconda3(python3.7)をインストール
>ターミナルでconda -versionで確認してもcommand not found

Mac使いさんにWin使いが出しゃばってしまうのは非常に失礼なのは承知だが
Winだと

https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679

Anacondaでのインストール後に
Windosのコマンドプロンプトやパワーシェルにpython -vで
何か表示されるのは、むしろ良くない事だとされている

で、Macだとどうなbだろう?

458 名前:ャfフォルトの名末ウしさん mailto:sage [2019/12/01(日) 09:37:44.85 ID:w+6yrHlL.net]
>>435
conda -versionも動作しないってゆってるからなー

Macは最初からシステムにPython2.7系が入ってるから
なにかがうまくいってなくても
Python2.7系がはいってますよー ってならないとおかしい。

459 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 09:38:14.87 ID:w+6yrHlL.net]
>>433
434氏がすごくイイ!!(・∀・)ことゆってくれてる

460 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 09:40:59.48 ID:YoP0MD/8.net]
anaconda Mac ターミナル

って検索したらやっぱり書いてる人がいたw
この辺はどこも同じか
でもWinはパスは無理に通すな!って書いてあるけど、
Macだと通しても異常が起こりにくいって事だろうな



461 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 09:43:21.98 ID:SqfEoEmM.net]
>>435
複数のPython環境を使い分ける必要があるのは、受託や自社サービスなどコード書くこと自体が仕事の人だけだ
その記事書いた人も例に漏れずバリバリのエンジニアのようだ(その割にはWindowsを使っているというのが滑稽ではあるが)
データ分析やちょっとした手元の処理の自動化など、アドホックにPythonを使いたいならPythonの神経質なバージョン管理は要らん

462 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 10:09:00.60 ID:YoP0MD/8.net]
>>439
>複数のPython環境を使い分ける必要があるのは、受託や自社サービスなどコード書くこと自体が仕事の人だけだ

自分の場合

1.
何かtensorflowのインストールって物凄く難しいらしい!これは別環境作っておかないとヤバい!!!
→Anaconda内にPython3.6の別環境作る。何か今年前半くらいまで3.7では無理だったらしいし
(今では可能になった)

2.
OpenCVのインストールも結構難しいらしいぞ!これも別環境作ってそっちでテストしてから統合だ!
→(1)OpenCVインストール用環境作ってインストール法確立(wheel型の選び方とインストールなど)
(2)先に作っておいたtensorflow用環境をクローンした新環境を作り、そこにOpenCVインストール
(3)全てが上手く行ったことを確認してから、BASEと、[tensorflowとOpenCV両方入った環境]だけ残して
半端なのを捨てる

3. XGBoost?こんなもんは余裕でインストールできんだろ?Baseに入れる
→yaml型がぐっちゃぐちゃになって全部使えなくなる
→Anaconda丸ごと入れ直したorz

ここでXGBoost専用環境作っておけば良かったなあ

4. 1つのWindows入りPCは、ユーザー名の姓名の間に半角スペースが入っていたため
Anacondaインストール後に別環境を作れないと判明したorz
HDDにパーティションつけてそちらにUbuntu入れて出直すべきか

463 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 10:26:29.97 ID:SqfEoEmM.net]
>>440
それならGoogle Colabでよくね
もしモデルを実運用するにしてもどうせクラウド上でやるだろうし

464 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 10:55:49.47 ID:i2YaNYYV.net]
>>431
いずれ、AIとかwebにも手を出してみたいからpythonなんでしょうね。

465 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 15:19:46.36 ID:9bW3hmPM.net]
class myClass():
 def print(self ):
  print('test')
 def __enter__(self ):
  return self
 def __exit__(self, ex_type, ex_value, trace):
  pass

with myClass() as m:
 m.print()
m.print() #←★まだ生きてる

上の場合、withを抜けたらdel相当が行われインスタンスmは使えないと思ってたのですが使えるようです。
classのインスタンス作成でwithを使うのは意味がなかったりますか(´・ω・`)?

466 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 15:29:58.31 ID:n5DjgtsH.net]
pythonに限らない社会通念だと「コンストラクタでインスタンス作成しましょう」というのが共通認識

withは出来るがしてはいけないこと
暗黙のうちの諒解
意味が無いではなく、作法・マナー違反

467 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 15:52:03.12 ID:jNUYX66D.net]
それよりもdel相当が行われっていう認識がヤバい
誰に吹き込まれたんだよそれ

468 名前:デフォルトの名無しさん [2019/12/01(日) 16:02:06.50 ID:iKyYFZEF.net]
LU

469 名前:V MACHINES AG400XN-M2SH2-KK 価格.com限定
Ryzen 7/16GBメモリ/256GB NVMe SSD+2TB HDD/GTX1650搭載モデル

↑現在価格コムのランキングが6位のデスクトップパソコンです。
自分にとってはこれでも高いパソコンですが、このパソコンでディープラーニングを学習できますか?
[]
[ここ壊れてます]

470 名前:デフォルトの名無しさん [2019/12/01(日) 16:04:18.10 ID:iKyYFZEF.net]
GeForce GTX 1650

というGPUが搭載されているとのことです。



471 名前:デフォルトの名無しさん [2019/12/01(日) 16:10:49.64 ID:iKyYFZEF.net]
OSはLinuxではなくWindows 10でもOKですか?ディープラーニング専用機にはしたくないです。

472 名前:デフォルトの名無しさん [2019/12/01(日) 16:14:17.70 ID:iKyYFZEF.net]
電源が500W以上のものばかりですが、電気代もかかるんですね。

473 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 16:19:47.62 ID:x82DeScF.net]
>>443
withにスコープはないからmはその関数内で可視というだけ。
後始末したいものがあれば__exit__でやればいい。mそのものは気にしない。

474 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 16:57:57.48 ID:i659FOIW.net]
A列の値でカンマで区切られたB列に入っている文字列の位置を検索したいのですが、

A列 え
B列 あ, い, う, え, お
欲しい結果 → 3

カンマでsplitした後にA列の値の参照ができなくて、頭がぐるぐるしてきました

475 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 17:06:58.45 ID:w+6yrHlL.net]
>>451
ソースを>>1に挙がってるソース用うpろだのどこかにうp

476 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 17:15:04.02 ID:7UL7JgFh.net]
C#のusingとかと比べると(´・ω・`)?になるのはよく分かる

477 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 17:15:22.17 ID:n5DjgtsH.net]
文字列をイコールで比べてるなら「カンマでsplitした後」は
『う』じゃなくて『 う』だな
ようするに先頭に空白でもあるんじゃねえの

478 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 22:13:46.59 ID:gxWit/c+.net]
すみません
>>433です
いろいろググって試しましたがpathが追加されず・・・
macの環境に詳しい方いませんか?

479 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 22:49:38.38 ID:w+6yrHlL.net]
>>455
「MacでPATHを通す」でぐぐれカス
あと
ルートレスとかが強烈だとそれも解かないとだめかもね

480 名前:デフォルトの名無しさん mailto:sage [2019/12/01(日) 23:08:22.92 ID:UCpH0Yie.net]
>>419-423
>>446-447
マウスコンピューター、
期間限定 2019/11/20(水)11時 〜 2019/12/4 (水)11時
ttps://www.mouse-jp.co.jp/special/sale/

m-Book X400H
ノートPC で、87,800円

14型 フルHDノングレア (LEDバックライト)で良ければ、
Core i7-8565U, 8GB メモリ, 256GB SSD

m-Book K700XN-M2SH5
ノートPC で、133,800円

15.6型 フルHDノングレア (LEDバックライト)
Core i7-9750H, 32GB メモリ, 512GB SSD NVMe対応,
GeForceR MX250, 1TB HDD



481 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 00:39:03 ID:jhokUOzU.net]
全く関係無いが、Core i5の1万番台のu型って
4コア8スレだったのか
一部で、深層学習でGPUを使うならコア性能よりスレッド数重視だぞってあったが
本当なのかなあ

MX250だと一応はCUDAコアを使えるね
今はCPUオンボードで深層学習での性能が上がって来てるけど、それよりは数倍は良い

482 名前:457 mailto:sage [2019/12/02(月) 08:20:54 ID:H5nAExhM.net]
>>446
も、マウスコンピューターのタワー、96,800円。
価格.com限定モデルか

メモリも、32/64GB まで拡張した方がよい。
SSD も、512GB へ。
保証期間も3年以上は、ほしい

OS も一応、5,800円

483 名前:で、Windows Pro版にする []
[ここ壊れてます]

484 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 09:34:41 ID:PBi2xeij.net]
こっちもMacで困ってるな〜
Finder使いづらくて共有かけてWindowsエクスプローラー+Windows側のVSCodeで作業してるんだけど
Windows側(3.7.3)では問題なく動く、Mac側(3.7.3)もターミナルは問題なく動く、XCode(3.7.1)からだとPythonのバージョンが違う・・・

485 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 09:44:43.19 ID:az4xQt0G.net]
pythonはexcelと共にwin側についたからね
appleとしては排除したいところ

出来れば自社開発の軽量スクリプト言語を広めたいハズだが
winとmac両方で動くインタプリタをappleが作る……なんてのはやりたくないはずだ
なんつったって軽量スクリプト言語でトップシェアはpythonじゃなくexcel付属のvbaだからな

486 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 09:55:11.39 ID:H5nAExhM.net]
Docker Hub で、好きなバージョンを探せば?

それか、仮想環境とか

487 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 10:06:45.06 ID:wB1a1keO.net]
FinderでPython関連のファイルなんか触ったことないわ
普通VSCode上でやるかターミナルじゃね

488 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 10:45:06.16 ID:5RGCQ9ir.net]
プロゲートのpython最後までやってじゃんけんするゲームを作った
forなりifなり覚えたけどここ以降どうすればいいのかよくわからん…
今後の目標としては自分なりのプログラム作りたいけども皆さんはどのように進めていった?

489 名前:デフォルトの名無しさん [2019/12/02(月) 10:52:33.57 ID:KwsHxcvC.net]
>>461
マイクロソフト「マイクロソフトが Excel に搭載するのは JavaScript であって、Python を使いたいのであれば PyXLL か xlwings を使え」
ExcelにPythonが搭載?その後 - xlwings を使おう
https://qiita.com/yniji/items/b38bc312e860027108ac

アップル「AppleScript使ってくれる人増えないからMacの自働化用の言語にJavaScript (JavaScript for Automation : JXA) も追加したわ」

490 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 10:56:28 ID:2anHlm9G.net]
123円までは押し目買いで誰でも儲かる相場やね



491 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 15:19:02.88 ID:/uccKnPl.net]
テトリミノの回転をやってるのですが、前の配列にアクセスする方法はありますか?
array = [1,2,3,4]
for i in array.size():
■array[3]
とすると4が取り出されますが、その前の3にアクセスする方法はありますか?
array[3]-1
みたいな感じですかね

まだよく理解できんてないんで(´・ω・`)

492 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 16:12:08.26 ID:OkhwRYub.net]
a[3-1]でおk

493 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 16:19:15.17 ID:OkhwRYub.net]
よく見るといろいろおかしいな。
配列の要素にダイレクトにアクセスするならforは要らんし、
要素数を求めるならlen(array)

for i in array:
print(i)

494 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 16:37:06.71 ID:/uccKnPl.net]
前の配列にアクセスに書き換えることで、回転させるわけすよね(´・ω・`)

495 名前:デフォルトの名無しさん [2019/12/02(月) 16:37:32.77 ID:HSnksJTz.net]
>>443
インタプリタというかIDE環境でやってると
立ち上げて実行したときのmは全部残るから
前にテストしてたmが残ってるだけじゃないのか

496 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 17:18:43.24 ID:TTdajGZT.net]
>>464
で、次は何がしたいんだ?

497 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 17:22:48.79 ID:TTdajGZT.net]
>>467
temporary=3
mae_no_yatsu=array[temporary-1]
的な

>>470
逆向きに回す場合は
次の配列にアクセス、かつ「次」が配列の要素数をこえてたら、振り出しに戻す(0番目を呼ぶ)んだぞ

498 名前:デフォルトの名無しさん mailto:sage [2019/12/02(月) 23:30:43 ID:Vi1WkRIA.net]
Win環境で2枚の画像ファイルを必ず一定(Min.1)の
出力フレーム周期で、交互にフルスクリ

499 名前:ーン表示する
手段は無いでしょうか。
今はOpnnCvのフルスクリーン設定でループさせて、
cv2.waitKey(1)
sleep(0.011)
といった記述ですが、原理的にずれるを避けたいです。
PsychoPyはFHDクラスのフルスクリーンに対応できず、
waitForVBlankやFrameSwap等のキーワードは把握したのですが、
使い方がわかりませんでした。
[]
[ここ壊れてます]

500 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 09:14:43 ID:NKF0Kit+.net]
なんか上の方でmacOSでのanaconda導入の話題あったから便乗して質問してみます

・やったこと
https://weblabo.oscasierra.net/python-anaconda-install-macos/

↑を参考に公式からインストール
ターミナルで下記実行するも
python3 --version
conda --version ともにcommand not foundになる
python --versionではおそらくデフォで入ってる2.7.10が表示される

brew install python3を実行後、python3 --versionすると3.7.0と表示

condaコマンド?は/Users/user_name/opt/anaconda3/binにあるらしい
かつ、printenv PATHしてみると上記PATHが表示されないのでPATHが通っていないと推察

https://qiita.com/nbkn/items/01a11392921119fa0153

↑を参考に上記PATHを記述後、printenv PATHしてみたが変わらず

・聞きたいこと
1.condaコマンドが使えないのはPATHが通っていないという推測は合っているか

2.1が正しい場合、他にどのように通す方法があるか
 現状(anaconda3インストール時点)のbash_plofileに記載されているのは↓の質問者の試したことにあるのと同じ内容

https://teratail.com/questions/157057

3.そもそもanacondaインストール手順として自分がやったことは合っているのか


稚拙な質問かつ分かりにくい文章で申し訳ありませんがどなたかご教示お願いします



501 名前:デフォルトの名無しさん [2019/12/03(火) 09:39:57 ID:yN5r9ueQ.net]
>>474
pygame

502 名前:デフォルトの名無しさん [2019/12/03(火) 09:41:35 ID:yN5r9ueQ.net]
>>475
3が間違ってる可能性が高い
つまり1と2は議論の無駄

503 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 10:52:33 ID:jDo5c24e.net]
>>475
$ echo $SHELL
でシェルがbashかどうか確認

$ source ~/.bash_profile
で.bash_profileの中身(conda initの記述)を実行

$ conda

504 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 10:59:33 ID:tHrvVoQx.net]
>>472
定まってないですね
なので先人が基礎的なこと覚えたあとになにをやってるのか興味があります

505 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 11:13:43 ID:qZgArKp4.net]
>>479
おれは文字列処理@Python2系に挑んで地獄を見た
機械学習ごっこも、日本語をPython2系でやって大変だった。
そしてそのせいで仕事も文字列処理系(ただし英文だった)をやらされていた。

506 名前:デフォルトの名無しさん [2019/12/03(火) 11:44:17.75 ID:AqN4uIMS.net]
>>479
作りたいもの作ってた

507 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 11:44:47.36 ID:NKF0Kit+.net]
>>477
ありがとうございます
具体的に何が足りないor間違っていますか?
わかる範囲で指摘いただければ助かります

>>478
ありがとうございます
SHELLはbashです、昨日確認しました
残り2つはマシンが手元にないので後ほど確認します

508 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 12:34:43.15 ID:V7OsQf4N.net]
素人がAnaconda使うなと言っとるに

ほんと害悪

509 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 12:49:44.64 ID:q4QgEASS.net]
まあ最近はどの本やらサ

510 名前:イトもpython始めるならanaconda導入から始めようみたいなの多いしそれを見たんだろう []
[ここ壊れてます]



511 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 12:53:12.70 ID:jDo5c24e.net]
>>479
先人はまず短期的な目標を定めてました

512 名前:デフォルトの名無しさん [2019/12/03(火) 14:50:11.02 ID:yN5r9ueQ.net]
WindowsのAnacondaは悪くない
Macが糞なだけ

513 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 15:13:57.50 ID:y8LThl7W.net]
ほんとMac使いにくいなぁ、Windows版のXCodeないのかな

514 名前:デフォルトの名無しさん [2019/12/03(火) 15:34:53.26 ID:wVEeBLb4.net]
コンピューターサイエンティストはなぜMacを使っている人が多いのでしょうか?

515 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 16:03:37.12 ID:ZS5h3RP8.net]
UNIXだから
Python使うにしても手元でアドホックな自慰をするだけならWindowsで問題ないけど、
でき上がったものをクラウドで実運用に乗せようと思うと途端にWindowsは嫌になる

516 名前:デフォルトの名無しさん [2019/12/03(火) 17:10:29.26 ID:5ZiHQIvd.net]
ディープラーニングやらブロックチェーンやらでGPUブン回す人たちはMacなんか使わんでしょう

517 名前:デフォルトの名無しさん [2019/12/03(火) 17:27:41 ID:yN5r9ueQ.net]
Macでどやりたいひとはwebクリエイターωの意識他界系の人らだから

518 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 17:45:48 ID:qZgArKp4.net]
> 意識他界系
  ↑New!!!

519 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 17:50:56 ID:TyO2yArk.net]
newではなかろ

520 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 17:59:03 ID:qZgArKp4.net]
他界しちゃうレベルwは新しくね?



521 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 18:12:42 ID:I9YoNGrF.net]
GPUガン積みの自作PCだとWinになる
自作の情報が多いのはWin

522 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 18:20:22 ID:1+EGgKJy.net]
macアンチ多いんだな
肩身が狭い

523 名前:デフォルトの名無しさん [2019/12/03(火) 18:25:02 ID:aHy1at+0.net]
dockerやクラウドなどなどリモート開発が主体だから、最早WinとかMacとか関係ない。
GPUにしても、最近はGPUサーバを作ることを考慮して、Linux対応も重視されてきてる。

524 名前:デフォルトの名無しさん [2019/12/03(火) 18:51:26.99 ID:wVEeBLb4.net]
オンラインのコンピューターサイエンス系の動画を見ると大抵Macのノートブックを使っているので、
不自然に感じました。

一般人はWindowsの人ばかりですよね?

525 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 18:59:49.01 ID:y8LThl7W.net]
Windows一筋だな、MacBookAir持ってるけどスタバ用

526 名前:デフォルトの名無しさん [2019/12/03(火) 19:13:19.98 ID:TpwdWSlD.net]
MBP2017今も使ってるけどキーボード酷すぎで一気にアンチになったわ。
と、言ってもネットで恨み辛み書き込んでるだけでようやっと欠陥キーボードやめたらしい最新モデルの13インチ版が出たらまたMacにしてしまうかもしれん。

527 名前:デフォルトの名無しさん [2019/12/03(火) 20:02:59.85 ID:wVEeBLb4.net]
>>500

ちなみになぜMacが好きなんですか?

素人目に見ると、Linux, Mac, Windowsどれも大差ないように思います。

528 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 21:01:39.68 ID:qZgArKp4.net]
>>498
研究室だと
初期設定を人数分するのがうっとうしいとか
元居た畑のソフトがその昔Mac用しかなかったとか
予算がありあまってるからとか
昔は入ってたヒラギノが大好きだからとか
色んな理由でMacイ諸がいる

529 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 21:07:43.82 ID:2pgR0qgk.net]
>>501
Unix環境でMS Officeがまともに動くのがmacOSだったから
今ならWindowsでもWSLあるから別にどっちでもいい
Docker使うときだけはWindows 10 proになるが、これが恐ろしく使いにくいのでmacを使っている

530 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 21:10:47.82 ID:2pgR0qgk.net]
>>483
単に使ってるヤツがダメなだけだぞ
超簡単なインストールすら出来ない奴が、本家のpythonでトラブル起こさない保証はゼロだ



531 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 21:14:29.01 ID:2pgR0qgk.net]
>>486
いや、俺の感覚ではwindowsのanacondaの方が難しい
特にvscodeでデ

532 名前:oッグする場合のクソさは辟易する
Powershell周りがまだまだ全然安定していない

macはそのあたりノートラブルだから非常に素直だ
macでanaconda disってるヤツは本当に使った事があるのか疑問
[]
[ここ壊れてます]

533 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 21:26:28.87 ID:2pgR0qgk.net]
>>475
一応答えておくか

anacondaのインストールに失敗している可能性が高いので、まずは全部消す

anacondaはサイズがデカいので、googleでminicondaを検索
macOS 64bits版をダウンロードして、ターミナルから

bash ダウンロードしたファイル名

すると

/Users/ユーザ名/miniconda3

にインストールされる
.bash_profileに設定が追加されるかどうかはインストール最後の質問にどう答えたかで変わる

534 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 22:01:53.53 ID:jDo5c24e.net]
何を根拠にインストールが失敗してると言ってるのか??
インストール先から直接実行してみればPATHが原因かどうかはわかるやろ?
$ /opt/anaconda3/bin/conda

535 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 22:24:46.68 ID:g35XzY+N.net]
>>507
全部デフォルトでインストールした場合、condaコマンドが見つからないと言う状況は起こらないので失敗していると判断

.bash_profileに既に何らかのバグがあってanacondaのインストーラが追加したスクリプトに到達しないとかはあり得る

536 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 22:26:13.73 ID:1+EGgKJy.net]
全部消すって言ってもcondaコマンドが使えないならアンイストールすらできないんじゃね?

537 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 22:32:35.05 ID:g35XzY+N.net]
>>509
Anacondaはディレクトリをrm等で消して、
.bash_profileに追加されたスクリプトを消すだけでOK

venvとか使ってanacondaをインストールするのはオススメしない
あとは/opt/anacondaや/usr/local/anacondaに共用としてインストールしたいとか、そんな欲求は捨てて全部デフォルトに従うのが吉

538 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 22:35:56.90 ID:1+EGgKJy.net]
>>510
へーそうなのか
消すことはないだろうけど勉強になるわサンガツ

デフォルトの件は>>475のインストール手順書いたサイト見ると次へをポチポチしてるだけだからデフォルトっぽいけど何か違うんかね?

539 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 22:58:31.06 ID:g35XzY+N.net]
色々な可能性はあるけども
1. .bash_profileにバグがある
2. デフォルトshellがbashでない
3. インストール前からディレクトリの不整合を起こしていた
と言う感じかなぁ

minicondaではなくAnacondaを入れたのなら、
/Application
の下のAnaconda-Navigatorが正常に動くかどうかでも確認できそう

540 名前:デフォルトの名無しさん mailto:sage [2019/12/03(火) 23:05:47.06 ID:g35XzY+N.net]
よく見ると記事が若干古いなぁ

昔のデフォルトは/anaconda3で、その設定が残ってている可能性はありそう
今のデフォルトは/opt/anaconda3



541 名前:デフォルトの名無しさん [2019/12/04(水) 11:06:34.64 ID:sb3P/SSe.net]
>>498
おまいは印象操作に簡単に引っかかるタイプやろ
ジャパンライフに騙されるのもこんな人らだろ

542 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 12:33:08.37 ID:tCRQbFTx.net]
そして今日からAnacondaのPythonが3.8になりやがった
そして3.7に落としてから、tensorflow-gpuをインストールして、無事動作確認

tensorflow-gpuも前みたいに事前に色々入れなくても動くんだな
Visual StudioなしでcudatoolkitもcuDNNもcondaで持ってきてくれた
なおtensorflow-gpuは1.15
cudatoolkitは10.0を持ってきてくれた(RTXなので良かった)

ちょっと前にGTXの後期のを入れたときはcudaも9を自分で選んだ

543 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 20:43:50.89 ID:yceLOpTG.net]
Mac with Anacondaって変になると、アンインストールも出来ん

544 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 21:17:36.87 ID:F/ByLZY9.net]
yokokara

545 名前:デフォルトの名無しさん [2019/12/05(Thu) 10:02:18 ID:IbmhSLeW.net]
VSも変になるとアンインストールも再インストールも出来ん

546 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 14:29:13 ID:TzSLtKO4.net]
https://codeday.me/jp/qa/20190216

547 名前:/261316.html
この質問者と同じことがしたいんですが、回答が参考にならないです。

質問:.pyへの引数として*.csvのようなワイルドカード(のファイル名)を使いたい、
回答:.py内に'*.csv'とシングルクォートで囲って書け

そういうことではなく(.pyへの直書きではなく)
.pyを実行する際の引数にワイルドカードを使いたいんですが、可能でしょうか?
[]
[ここ壊れてます]

548 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 14:53:39 ID:Wm9fQur5.net]
リンク先の回答者が的外れなように書いてるけど、あなたが理解していないだけ。
ちゃんとglobモジュールを使うことで…と書いてある。
python test.py '*.csv'

import glob,sys
filelist = glob.glob(sys.argv[1])
print (filelist)

549 名前:デフォルトの名無しさん [2019/12/05(Thu) 15:01:59 ID:IbmhSLeW.net]
ワイルドカードの展開ってshellがするんじゃなかったか

550 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 18:09:17.19 ID:OLqlmSOk.net]
import hoge
した時にimporterrorになったら
自動でpip installしたいとき

try:
import hoge
except:
subprocess.call('pip install hoge')
import hoge

こんな感じのを、関数化するにはどうすればよいですか
importをimportlib使って引数にストリングで渡すと、hogeが未宣言になります



551 名前:デフォルトの名無しさん [2019/12/05(木) 20:08:18.78 ID:2mCSg13D.net]
やるならSetuptoolsとかでやるべき部分だと思う
せいぜい実行したいpipコマンド出力するぐらいでいいでしょ

552 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:51:28.08 ID:wdnl8B6T.net]
>>522
hoge = importlib.import_module(“hoge”)
hoge.hage()

553 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 00:49:38 ID:IktivxOB.net]
>>519-520
Ruby の1-liner なら、これでカレントディレクトリにある、
すべてのCSV ファイル名が表示される

ruby -e "puts Dir.glob( '*.csv' )"

'*.csv' を、コマンドライン引数として渡したいのなら、ARGV[ 0 ] に入ってくる。
ruby -e "puts Dir.glob( ARGV[ 0 ] )" '*.csv'

例えば、
ruby -e "puts ARGV[ 0 ]" 'abc'
#=> abc

Ruby の場合は、
「ruby オプション script.rb 引数」で、
スクリプトファイル名は、ARGV[ 0 ]じゃなくて、$0 に入ってくるので、
引数がARGV[ 0 ]となる

漏れは、Python は知らないので、>>520
によると、引数がARGV[ 1 ]に入ってくるのかな?

>>521
* のままなら、シェルが展開する。
ls [b-d]* # bcd で始まるファイル名

*をエスケープするには、'*' "*" \* の3つ。
expr 2 '*' 3 #=> 6

554 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 05:01:48.56 ID:Z1B97fiv.net]
>>525
糞食って寝ろ

555 名前:デフォルトの名無しさん [2019/12/06(金) 08:57:25.01 ID:y8t5v3Vv.net]
>>525
python知らないなら出ていけ

556 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 09:24:26 ID:jevOtndm.net]
ネタじゃないうえにPython関係ない質問なんだけど
Rubyってどこで使われてるの?めったにみないよね、Windowsには無いし

557 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 09:51:33.13 ID:ju+bNL7K.net]
>>528
ネタじゃないならお前はスレタイ読めないゴミw
スレにもいらない。出ていけ。

558 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 10:26:00.43 ID:e8Nbwz4h.net]
>>528
Webサービス
有名なのはクックパッドとかGithubとか
どちらも最近はGoへの置き換えが進んでるらしいがw

559 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 13:37:02 ID:bsu7R2yD.net]
なんでそんなイライラしてんのww

560 名前:デフォルトの名無しさん [2019/12/06(金) 14:01:46.87 ID:rmctNxUZ.net]
HDD消さずに業者に手渡したから
証明書貰ってるから大丈夫だよね?



561 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 15:08:35.02 ID:y+wr0N/5.net]
>>528
件のRubyバカが懇

562 名前:リ丁寧に(いい加減な話も含めて)教えてくれるだろうから、手を取り合ってどこか他所に行って続けてくれ []
[ここ壊れてます]

563 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 17:52:40 ID:TL5X+SDz.net]
>>524
関数化はどうすればいいですか?
my_import("hoge")

import hoge
と同等の機能を実現できる関数化したいです。
やっぱ無理ですか?

564 名前:デフォルトの名無しさん [2019/12/06(金) 18:00:33 ID:rmctNxUZ.net]
setattr で local とか global に追加汁

565 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 18:28:19 ID:c6fF/5cl.net]
yokokara

566 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 18:50:12 ID:bsu7R2yD.net]
>>534
え〜

def my_import(module):
____return importlib.import_module(module)

hage = my_import(“hoge”)で
import hoge as hage とだいたい同じ

567 名前:デフォルトの名無しさん [2019/12/06(金) 18:56:20 ID:K1aFtUDf.net]
return必須なの?

568 名前:デフォルトの名無しさん [2019/12/06(金) 19:42:50.51 ID:ELuQ0rBw.net]
def my_import(module):
setattr(globals(), module, importlib.import_module(module))

569 名前:デフォルトの名無しさん mailto:sage [2019/12/07(土) 20:40:09.64 ID:ZdcZp/3W.net]
Pythonて、配列無いんですか?

570 名前:デフォルトの名無しさん [2019/12/07(土) 20:42:30.04 ID:tj55yZgB.net]
リストの実装は配列じゃないかな



571 名前:デフォルトの名無しさん mailto:sage [2019/12/07(土) 20:46:16.73 ID:ZdcZp/3W.net]
>>541
ありがとうございます。配列の事を調べると、すぐにNumpyというライブラリーの話題になってしまうので
ひょっとして標準で存在しないのだろうかと悩んでました
リストのことを調べてみます

572 名前:デフォルトの名無しさん mailto:sage [2019/12/07(土) 22:27:30.46 ID:ADlg+SvA.net]
[]←これとはまた別なの?
あれ配列って長が固定なもんを指すんだっけ?
()ともまた違うんけ?

それよりnunpyの話詳しくしてほしいなって…!
なんか便利なライブラリーなんしょ?

573 名前:デフォルトの名無しさん mailto:sage [2019/12/07(土) 22:38:35.16 ID:Z1wtMTIj.net]
便利というか数値配列扱って計算とかするなら実質必須

574 名前:デフォルトの名無しさん mailto:sage [2019/12/07(土) 22:56:30.44 ID:i1TdHIG2.net]
>>542-543
[]はリスト
()はタプル

575 名前:デフォルトの名無しさん [2019/12/08(日) 00:16:58.54 ID:0l6xumYX.net]
今こそ血涙の文字で告白しよう!!
僕たちが純粋な輝きを失って大人になってしまったらお座なりとおべんちゃらと、陰口と
服従と妥協と打算と倦怠と保身の中で、ずるがしこく、チョロチョロと動き回りながらネズミの
一生を送るようになるんだ。
それから結婚して子供を作って、世の中でいちばん醜悪な母親という大人になるんだ。
ああ、時の流れとはなんと残酷なのだろう!!
生きることと老いることが同義語だという過酷な命題を直視しなければならないんだ。
老いはまさしく肉体と精神の双方の病気だったが、老い自体が不治の病だということは、
人間存在自体が不治の病だというに等しく、われわれの肉体そのものが病であり、
潜在的な死なんだ。
衰えることが病であれば、衰えることの根本原因である肉体こそ病だった。肉体の本質は
滅びに在り、肉体が時間の中に置かれていることは、衰亡の証明、滅びの証明に使われて
いることに他ならないんだ。
老いはすさまじい恐怖であり苦痛であり、そして真実である。
このままだと僕たちは腐敗して汚れて蝕まれたおぞましい大人になってしまうんだ。
大人たちは日々を生きのびようとする故なき執念、執着によって、地上に栄える
ありとあらゆる悪徳と汚穢とを一身に体現しているのだ。
テチには限られた貴重な時間を死にものぐるいで生きてもらって思う存分に輝いてもらいたい。
ああ、一分一分、一秒一秒、二

576 名前:xとかえらぬ時を、人はなんという稀薄な生の意識で
すりぬけるのだろう!!そうして血が失われるように時が失われていく。
そしてテチが二十歳になったら、その最後の輝きの絶頂の中でステージ上で美しく鮮烈に
死んで欲しい。
ああ、テチの光輝あふれる肉体と精神が劣化することも衰退することもない永遠に美しいまま
伝説となり歴史となるために無慈悲な時の流れを止めたい!!
その時、テチには誰かもわからない僕も自殺する。
大人になるテチなんか絶対に許さない。僕はテチと血まみれになって心中する。
テチを殺すことを許してください。テチをステージ上で銃殺して自殺する。
僕の血とテチの血が混ざり合って純化されるのだ。
これだけはわかって欲しい。僕が誰よりも平手友梨奈を永遠に愛していることを・・
[]
[ここ壊れてます]

577 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 00:25:36.70 ID:ohyhj+qx.net]
来てみりゃいきなし通報案件じゃねえか……
こりゃたまげたなぁ……

578 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 08:38:54.60 ID:d61YKsOU.net]
しかも文章めっちゃ上手いよね
その才能をなぜ文学とか別の方向性に活かせないのか…

579 名前:デフォルトの名無しさん [2019/12/08(日) 14:51:24.96 ID:J+6Nu+8f.net]
>>542
numpy 使った方が良い

580 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 17:09:05.43 ID:pSs03yKS.net]
本当に超初心者質問です。
pythonで

a=100

a = 100

では、どっちの書き方にするべきですか?
今までC#でVSが

を打つと自動的にきれいにスペース入れてくれてたので、
どう書くのが標準なのかわかりません。



581 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 17:11:09.15 ID:iU1G1+Qw.net]
a = 100

582 名前:デフォルトの名無しさん [2019/12/08(日) 17:17:26.29 ID:wNkvi2te.net]
>>550
https://pep8-ja.readthedocs.io/ja/latest/

583 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 18:22:21.20 ID:pSs03yKS.net]
>>551
これVSが自動で直してくれないんでしょうか?
自分でスペースとか入れていると、
いちいち表記法を意識しなければいけないのでしんどい。

584 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 18:23:02.65 ID:B7mwO2xN.net]
>>550
pycodestyleやautopep8みたいなlinterを使うと
変な書き方してると注意してくれたり修正してれたりする

585 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 18:28:29.58 ID:/kMCly/x.net]
>>553
VSをアンインストールしてVSCodeをインストールすれば自動修正も可能

586 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 19:29:26.06 ID:ick2zDgR.net]
yokokara

587 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 19:42:50.38 ID:Wyx2vkr6.net]
>>555
C#使ってるやつのVS、アンインストールさせんなw追加でVSCode入れればいい。

588 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 20:31:30.09 ID:ZrAxLUnk.net]
>>552
そーか、インデントにはtabじゃなくてスペース4個が望ましかったのか.....
ずっとtab使ってたわ、まぁ他人に配布することないし今後もtabで行くと思うけど...

589 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 20:41:40.91 ID:ohyhj+qx.net]
そういう宗派ですからね
戒律は厳しいです

590 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 21:18:36.18 ID:/kMCly/x.net]
>>558
https://stackoverflow.blog/2017/06/15/developers-use-spaces-make-money-use-tabs/
> スペース派はタブ派よりも高収入



591 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 21:47:58.89 ID:h14g0YSH.net]
>>558
俺もtab(表示は4スペース)派
人に渡すことはまずないしあっても変換すりゃいいだけだし

592 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 21:52:20.12 ID:ZrAxLUnk.net]
>>560
ぱっと読んで多変量解析してなさそうな報告だったけど、本当にインデントの種類が収入の因子になって

593 名前:驍フかね?
まぁ、俺は趣味だからtabで今後も行くし,spaceインデントを否定するつもりはないけど

(1)スペースだと4段階インデントに16回スペースを押さなければならない、tabだと4回で済む
(2)スペースの打ち間違いによるエラーがわかりにくい、
   4段階インデントの場合、スペース16個と17個(間違い)がぱっとみわかりづらい。
   CとかならいざしらずPythonだとエラーになる。tabだとtab4個と5個では違いがはっきりしてる。

オートインデント使えねえクズは死ねとか言われそうだけど.....
[]
[ここ壊れてます]

594 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 22:06:25.63 ID:iU1G1+Qw.net]
開発環境の整備を検討するべきだ

595 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 22:47:58.24 ID:B7mwO2xN.net]
>>562
>(1)スペースだと4段階インデントに16回スペースを押さなければならない、tabだと4回で済む

エディタの機能でtabキーを4回押せばスペース16個になる
さすがにスペースキー連打してるやつはいないよ

596 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 22:52:01.83 ID:ZtTX+YkB.net]
>>562
ちょっとちょっとw
丁寧におかしな分析してんじゃないですよ?

597 名前:デフォルトの名無しさん mailto:sage [2019/12/08(日) 22:59:41.29 ID:Wir5LDVx.net]
他言語ではタブ派だけどpythonだけはvscodeでスペース4に設定してるな
indent-rainbow入れとけばインデントミスはすぐわかるし

598 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 00:23:43 ID:1/0np3ih.net]
>>557
vscodeなら直してくれるんだ・・・。
pythonsはやっぱりVSでなくてvscode使えってことなのか。

599 名前:デフォルトの名無しさん [2019/12/09(月) 11:12:02 ID:RLwtKsqp.net]
インデントの話やPEP8の話が出て来ると
必ずと言って良いほどオレの方が正しいって
主張始めるやつが出て来るのが面白いな

スペース 2 個派です

600 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 12:15:24.24 ID:WTLcFYnZ.net]
pythonの場合、インデントが必ずしも2とか4の倍数じゃないところがめんどくさい。
パレンで囲って改行したときに、次の行頭にちまちまスペース入れなきゃならないし。
まぁ、しなくても動くけど。

タブ文字は便利だが、こうした場合スペースと混合されると紛らわしいな。



601 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 12:38:11.52 ID:WjwE1wYD.net]
>>568
Pythonは一応バイブルあるから自分が正しいって主張する奴はあんまりいなくね?
大抵は俺と一緒で「自分しか関与しないから俺流でやるぜ」って奴かと

602 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 12:59:58 ID:W35ag/eC.net]
教義を守らないヤツは異端だから滅ぼしていい
ってのが西洋人の考え方だよ

603 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 13:46:32.29 ID:2N90NDIG.net]
2はそれでホロンだ

604 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 16:20:48 ID:qscAnUd4.net]
そういえば、ホロン・リナックスってあったなぁ

605 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 16:55:51 ID:03JGrJKy.net]
他の言語(Goはタブ強制だから除く)だとスペース2個派だけど、Pythonは4だなあ
PEP以前にPythonでスペース2個は浅すぎて読めん
深いネストから戻るときに今何段目か分からん

606 名前:デフォルトの名無しさん [2019/12/09(月) 16:57:50 ID:VQkZ+CLb.net]
ネストよりフラットが良い by zen of python
貧乳派の教祖である。

607 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 17:26:52.50 ID:3v06ZNRZ.net]
https://ideone.com/Wg79gW
ループをy→xの順で回して、printはlist[x][y]とすると以下の結果になります
1324
これはなぜでしょうか
どういう仕組みでこうなるかわかりませぬ

608 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 17:29:17.58 ID:uy6UoUfX.net]
え?

609 名前:デフォルトの名無しさん [2019/12/09(月) 17:33:45.58 ID:RLwtKsqp.net]
そもそもpythonじゃないのでネタ確定だが
あえてpythonで書くと
https://ideone.com/osA1LA

610 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 17:34:28.98 ID:scocuTx7.net]
>>576
varで始まってる時点でPythonじゃねぇ
チネ!!



611 名前:!(・∀・) []
[ここ壊れてます]

612 名前:デフォルトの名無しさん [2019/12/09(月) 17:39:42.43 ID:RLwtKsqp.net]
ごめん途中で送信したので
やり直し
https://ideone.com/5YnYmj

613 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 17:42:40.72 ID:3v06ZNRZ.net]
>>579
似てるのでここでいいです

614 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 17:43:07.42 ID:3v06ZNRZ.net]
>>580
ネタではないです
ただ、どういうロジックでこういう結果になるのかわからないです

615 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 17:47:31.97 ID:scocuTx7.net]
>>581
それを判断するのはオメーじゃねぇ
(・∀・)カエレ!!!
チネ!!!(・∀・)

616 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 17:56:15.08 ID:FD9BPIub.net]
>>582
xとyの値を確認しながらデバッガーでステップ実行するかprintデバッグすればわかる

617 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 19:13:08.22 ID:3v06ZNRZ.net]
ありがとう
でもわからない

618 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 20:12:58.55 ID:8kuRYSAZ.net]
>>581
もしかしてお前は自分が書いている言語が何なのかすら知らないのではないか?ロジックがどうこう言う手前の段階だろう。

619 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 21:49:55.90 ID:m18yM9uO.net]
Windowsの「アプリA」バージョン3が文字列を画面に表示してます
これを「アプリA」バージョン2に対してコピペしたいのですが
二つのアプリは同時に起動することができません

そこで、まずバージョン3を起動して、手に入れたい部分をコピーしてテンポラリー書類にコピーペースト.

入れ替わりでバージョン2を起動して
テンポラリーからコピペしたい部分をゲットして
バージョン2宛にペースト.
そんな工程を目論んでます

テンポラリーファイルには、変数名と文字列、数値が記録されることになると思います

このような手法に適した、ファイルの書き出し・読み込みと言えばどんなものがあるでしょうか?

自分なりにはpickleというものを見つけましたが、なんか難しそうな気がしました
アドバイス頂ければ嬉しいです

620 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 21:53:47.07 ID:gL89svw9.net]
クラスの勉強をするかdict型で書き出すかして
そのままpickleにかけろ
それより楽な方法は生データをテキストで保存することだが後々苦労するからやめとけ



621 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 22:18:14.86 ID:m18yM9uO.net]
ありがとうございます
dictと、クラスの定義ですね

はて?
pickleって、ひょっとして持っていけるのは要素だけで
変数名とかリスト名とかは持っていけない?

622 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 23:42:57.55 ID:Pxm13ZGa.net]
可読性を重視するならjsonもありかと

623 名前:デフォルトの名無しさん [2019/12/10(火) 09:42:46 ID:Gtb8KZ21.net]
可読性ならjsonよりyamlやtomlのほうが…

624 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 13:06:22.84 ID:6QYDHDQi.net]
括弧が付いてると可読性が上がる

625 名前:デフォルトの名無しさん [2019/12/10(火) 13:28:31.47 ID:uPxE4CgL.net]
カッコ悪い

626 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 13:35:45.35 ID:F3h+m1zk.net]
(E)!

627 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 15:08:32 ID:FE1Fen7q.net]
jsonファイアフォックスで見れば見やすいぞ

628 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 15:46:55.98 ID:6QYDHDQi.net]
よしなに整形してくれるからな

629 名前:デフォルトの名無しさん [2019/12/10(火) 15:57:56 ID:48kVELqA.net]
>>589-591
msgpack

630 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 16:51:25 ID:LOypIkS3.net]
590の”可読性”はhuman-readableの意味で使ってんだろ



631 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 17:23:44.99 ID:eJPx3dnZ.net]
msgpackはJSON比で大して速くも小さくもない
人間による読み書きが可能であり大抵の言語で標準で扱えるというJSONのメリットを捨てるのに見合ったリターンはない

632 名前:デフォルトの名無しさん [2019/12/10(火) 17:53:43.58 ID:48kVELqA.net]
充分小さいぞ

633 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 18:12:40.55 ID:eJPx3dnZ.net]
せいぜい50%程度を充分と思うかは貴方次第
私はそうは思いませんね

634 名前:デフォルトの名無しさん [2019/12/10(火) 18:15:41.31 ID:48kVELqA.net]
キーを何度も使いまわすのは無駄だと思う

635 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 19:20: ]
[ここ壊れてます]

636 名前:38.59 ID:eJPx3dnZ.net mailto: msgpackが同じキーを何度も書いていないとでも? []
[ここ壊れてます]

637 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 19:51:08.94 ID:1ZU0zLKJ.net]
まあ一連のレスは無駄そうだな

638 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 19:59:18.07 ID:ORQYQVvI.net]
yokokara

639 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 20:52:52.51 ID:hzlCevra.net]
可読性といえばxmlじゃないの
いやよく知りませんけど!

640 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 20:56:35.79 ID:6QYDHDQi.net]
訳あってWordのdocument.xmlを読んだが非常に厳しい



641 名前:デフォルトの名無しさん [2019/12/11(水) 09:06:12.26 ID:ZT47FwY4.net]
>実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。
Python2.7.1 Windows 2000pro 開発環境はPython付属のIDLEです

Win32のクリップボードから取得した要素を、順番に辞書に渡しているのですが
「一番目、二番目」の順で渡したものが、「二番目、一番目」とひっくり返ったり
三つ渡すと「三番目、三番目、二番目」なんて順で保管されたりして、訳がわかりません
「辞書型オブジェクトには順序がありません」という話ではなくて
keyを使って取り出してみると整合してないのです

助言を頂ければありがたいです。

642 名前:デフォルトの名無しさん [2019/12/11(水) 09:07:29.80 ID:ZT47FwY4.net]
>>608
(続き)
(続き)
import win32com.client
import win32clipboard

def copy(text):
  win32clipboard.OpenClipboard()
  win32clipboard.EmptyClipboard()
  win32clipboard.SetClipboardText( text, win32clipboard.CF_UNICODETEXT )
  win32clipboard.CloseClipboard()

def paste():
  win32clipboard.OpenClipboard()
  data = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT)
  win32clipboard.CloseClipboard()
  return data

oAutoIt = win32com.client.Dispatch("AutoItX3.Control")
#Windowsアプリケーションでカーソルを操作するためのAPIです
oAutoIt.WinActivate("とある請求書ソフトウェア - [xxx-xx-x.uqm]")
#APIは、とある請求書ソフトウェアが起動して、xxx-xx-x.uqmウィンドウが開くまで待機して、その後実行します

643 名前:デフォルトの名無しさん [2019/12/11(水) 09:08:21.34 ID:ZT47FwY4.net]
>>609
(続き)

dic = {}

oAutoIt.MouseClick("left",91,369,3)
oAutoIt.MouseClick("left",654,65,1)
#とある請求書ソフトウェアから"AAAAA"をコピーしてきます
dic ["key"] = paste()

oAutoIt.MouseClick("left",345,367,1)
oAutoIt.MouseClick("left",649,62,1)
#とある請求書ソフトウェアから"BBBBB"をコピーしてきます
dic ["key2"] = paste()

A = (dic["key"])
print(A)
B = (dic["key2"])
print(B)


#print結果
============RESTART============
>>>
BBBBB
AAAAA
>>>

644 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 09:33:54 ID:cSF0k0t2.net]
>>610
そのAPIは知らんけど、copy関数使われてなくない?

645 名前:デフォルトの名無しさん [2019/12/11(水) 09:40:31 ID:ZT47FwY4.net]
>>610
Windowsのクリップボードを監視した感触では、
とある請求書ソフトウェアからは、正しい順番でコピーされている様子です

ペースト関数を、一回しか使わない場合は、正常動作します。
素人ながら、なんか、定義済の変数に新しい値が代入されるとき
前後でメモリの処理がまずくなっているのかなと思いました
グローバル変数とかローカル変数とか、そっちの問題なんだろうかと、それらの勉強も始めましたが
まだまださっぱりわかりません

助言だけでもいただければありがたいです

646 名前:デフォルトの名無しさん [2019/12/11(水) 09:43:31 ID:ZT47FwY4.net]
>>611
そうですね。copy関数は使われてないですね
参考元では、copyとpasteがペアで表記されていたので
もしかして改善するときに必要になるかな?と思って、念のためにあげました
失礼しました

647 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 09:51:14 ID:cSF0k0t2.net]
>>613
copy関数使わないで、コピーはどうしてるの?
マウスクリックしかされてないみたいだけど。
想像だけど、copy関数使ってコピーしてそのままreturnしたら良いんじゃ無いの?

648 名前:デフォルトの名無しさん [2019/12/11(水) 09:58:47 ID:ZT47FwY4.net]
>614
copy関数使わないで、コピーはどうしてるの?

「とある請求書ソフトウェア」は、画面上に「COPY」というボタンがありまして
それを一回クリックしてます
するとWindowsのクリップボードに、テキストが入ってきます

649 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 10:12:58 ID:Z8/OjH57.net]
sleepないときつくない?

650 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 10:47:34 ID:pFOdIusR.net]
>>608
3.6までの辞書は
「とにかく出てくる順番はテキトー 気分次第」になるぞ。
keyがうんたらなんたらとかいうレベルではなく。

いやorこまるなら3.7系にするか
標準で装備されてるcollectionsモジュールの「OrderedDict」(これは2.7系から使える)を使う



651 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 10:48:31 ID:ZT47FwY4.net]
>>616
後出しですみません

import time
time.sleep(0.3)
#0.3〜3までいくつか検討

結果
time.sleep(3)
AAAAA

近くにある命令が辞書に入ってくる
不思議な現象が起きております
環境が悪いんですかね

652 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 10:50:17 ID:b0NSAXs1.net]
>>610
A = (dic["key"])
print(A)
B = (dic["key2"])
print(B)

これを、Ruby の式展開、JavaScript のテンプレート・リテラルみたいに、もっと分かりやすく書けないか?
puts "A の値は : #{ A }"

print結果が、単にタイミングの問題で、
後にprintされたものが、先に表示されているだけかも知れない

653 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 10:56:31.99 ID:PLslpcOL.net]
ループが理解できない(´;ω;`)

654 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 10:57:06.73 ID:ZT47FwY4.net]
>>617
いやいやいや
出てくる順番は適当で良いですけど

キーと一緒に代入した(つもり)要素が、別物になってたら困りますよね

それはそれでOrderedDict 調べてみます

655 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 11:01:37.93 ID:ZT47FwY4.net]
>>619
>これを、Ruby の式展開、JavaScript のテンプレート・リテラルみたいに、もっと分かりやすく書けないか?

すみません。今の私の技術では限界です
ソースにふりがなのついた参考書と、赤い表紙の本を手引きにしてるレベルです

>後にprintされたものが、先に表示されているだけかも知れない

探ってみます

656 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 11:17:42.24 ID:pFOdIusR.net]
>>620
ループといってもいろいろあるので
https://ja.wikipedia.org/wiki/%E3%83%AB%E3%83%BC%E3%83%97_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)
↑このへんから辿って勉強しる

657 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 11:18:43.26 ID:pFOdIusR.net]
>>618
環境か
メモリの壊れかけを疑う件

658 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 12:22:25.53 ID:fWs5lM4b.net]
>>618
sleepどこに書いたの?
MouseClickした後paste呼ぶ間に入れてみれ
マウスクリックで相手のソフト側がコピーするんだったら自動化してたとしても非同期なんだよ

659 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 12:29:51.76 ID:pFOdIusR.net]
>>625
横レスだけど
> マウスクリックで相手のソフト側がコピーするんだったら自動化してたとしても非同期
なるほどとってもなっとくっく

660 名前:デフォルトの名無しさん [2019/12/11(水) 12:44:29.61 ID:8OP/pbId.net]
dataの参照を取り出してるだけで
dataの中身を取り出してないから
printするときに逆になるんじゃね
知らんけど



661 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 12:48:31.95 ID:ZT47FwY4.net]
>>625
>sleepどこに書いたの?
>MouseClickした後paste呼ぶ間に入れてみれ

pasteの後に入れてました
1回目と2回目のコピペの間で、休ませれば正常動作するかな?と思いまして

そして、はー。これが正解でした
sleepの位置も大事なんですね
ありがとうございました

みなさんもありがとうございました

662 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 12:53:40.70 ID:Z8/OjH57.net]
AutoItからの移行組だと思ったけどあれじゃAutoItの時も動かないはずだが

663 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 15:59:30 ID:PLslpcOL.net]
https://ideone.com/qx5CEY
このコードの1つ目だと、1列目の行にしかアクセスできてないです
しかし、2つ目のようにarray[x][y]とすると、2つめの行までアクセスできています
しかし、yループは1度しか回していません

664 名前:

xを先に書くとxがyループの取り出しに使われるのですか?
[]
[ここ壊れてます]

665 名前:デフォルトの名無しさん [2019/12/11(水) 16:03:10 ID:8OP/pbId.net]
何を意図してるかにもよるが
縦(行)をyと考えてるなら
array[y][x] でアクセスするべき

君がやりたければ
array[x][y] でも構わないが
y は横(列)になるってだけ

666 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 16:08:47 ID:H3x5MOt+.net]
>>610
printデバッグとデバッガのステップ実行を使うといいよ
両方組み合わせればタイミングが原因かどうかはだいだい切り分けられる

今回の例ならpaste関数のreturnの前にprint(“paste data: ”, data)を入れて
dic[“key”] = paste()の直前か直後にブレイクポイントを設定してステップ実行する

667 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 16:10:35 ID:cSF0k0t2.net]
>>630
ループ以前に配列を理解していない。
2つ目のはy値はずっと0でx値は0,1と変化している。
print(array[0][0])、print(array[1][0])と実行していることになる。

668 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 16:19:15 ID:H3x5MOt+.net]
>>630
array = [ [1,2], [3,4] ]

このarrayは1つ目の要素が[1,2]、2つ目の要素が[3,4]
だからarray[0]は[1,2]で、array[1]は[3,4]

array[0][0]は[1,2]の1つ目の要素なので1
array[0][1]は[1,2]の2つ目の要素なので2

for y in range(10):とするとyという変数に
0から9まで(10は含まない)を代入しつつループの中の処理を実行する
ループ内でyを参照したらそのループ開始時に代入された値が入ってる
xやyじゃなくfor i in range(10)と書いても同じ
xやyに特別な意味があるわけじゃない

669 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 16:27:38.36 ID:PLslpcOL.net]
>>631
テトリスの作成で、配列の回転をしたかったんですよ
行は[1,2]を1行目、[3,4]を2行目と考えています

670 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 17:01:24 ID:wQahrCJY.net]
>>635
拾い物
https://pastebin.com/3kAeGTNV



671 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 18:26:22.83 ID:BSd1dztf.net]
さすがにOSアップデートしろよwww
そんな化石使ってる時点で話にならない

672 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 17:12:30.59 ID:f967V2wE.net]
x = [0,0.1,0.2,0.5,1,2,3]
y = [0.5,0.5,0.4,0.4,0.5,0.4,0.5]

このリストの数値を使ってmatplotlibで折れ線グラフを書きたいのですが、xの小数の値が偏ってしまい見づらくなってしまいます。
(0 0.1 0.2 0.5 1 2 3) ←x軸の数字がこのようになってしまう。
x軸を等間隔に表示させる書き方があれば教えていただけませんでしょうか。
x,yはそれぞれx軸、y軸にあてたい数字です。

673 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 17:14:40.82 ID:f967V2wE.net]
>>638
(0 0.1 0.2 0.5 1 2 3) ←x軸の数字がこのようになってしまう。
この行スペースが表示できませんでしたが、メモリの0~0.5までが寄ってて、1~3までが間隔空きすぎている。等間隔ではないってことを言いたかったです。

674 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 17:51:08.05 ID:dyy25qsp.net]
>>638-639
fig = plt.figure()
ax = fig.add_subplot(111)
#↑ここまでは適宜自分がやってるように読み替えれ
#↓目盛りの指示を好きなように出せる呪文。y軸の設定はset_yticksだ
ax.set_xticks([0, 1, 2, 3, 4])

675 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 18:11:33.19 ID:n05Ewb3K.net]
plt.plot(x, y)
plt.show()
で普通に等間隔のtickで表示される

plt.plot(x, y)
plt.xticks(x)
plt.show()
とかすれば等間隔じゃないtickで表示される

676 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 18:21:07.32 ID:f967V2wE.net]
>>640さん、>>641さん
ありがとうございます。お二人のようにそれぞれやってみましたが等間隔で表示できません…。
少数のところが偏って表示されてしまいます。

一応コード載せます
figure = plt.figure(figsize=(10, 5))
axis = figure.add_subplot(1

677 名前:, 1, 1)
plt.plot(x,y)
axis.set_xticks([0,0.1,0.2,0.5,1,2,3])

plt.show()
http://o.5ch.net/1l95o.png
[]
[ここ壊れてます]

678 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 18:22:15.85 ID:f967V2wE.net]
すみません…。画像の乗せ方わからなかったので試しにかいてみたやつ消すのを忘れてました…!

679 名前:デフォルトの名無しさん [2019/12/12(木) 18:28:45.35 ID:Lo+C9eAO.net]
ネタじゃなくてマジ池沼さん?

680 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 18:32:25.07 ID:n05Ewb3K.net]
>>642
>axis.set_xticks([0,0.1,0.2,0.5,1,2,3])
↑等間隔じゃないtick設定しとるやーーん



681 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 18:42:20.58 ID:f967V2wE.net]
>>645
はい。もともと等間隔ではないものを等間隔に表示したいという質問でした。
関数の値(例えばx = 0.1ならy = 0.4)をグラフにしたいと思っていました。
xの値は0~1までは少数もとりますが、1からは整数しかとらないためにグラフにすると偏りが出て見づらくなってしまいます。
それを等間隔に表示できれば見やすいかなと思いました。

682 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 20:20:59.56 ID:TAtdTKRF.net]
yokokara

683 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 20:54:04.13 ID:n05Ewb3K.net]
>>646
そいうことだったのか

tickを等間隔な値にして、対応するラベルを設定したい等間隔じゃない値にする
んでplotするxの値をそれに対応するよう変換する必要があるんじゃないのかな
自動でやってくれる方法があるのかは知らない

plt.plot(range(len(x)), y)
plt.xticks(range(len(x)), x)
plt.show()

684 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 21:57:18.88 ID:dyy25qsp.net]
>>646
無理に時空を歪めるのは見る側のことを考えてないのでヤメレ

常識的な解決策としては
・対数グラフを使う
・一部(x=0から1の区間だけ)拡大図を
  範囲内のどっか空きスペースまたは別添えでつくる

685 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 22:46:47.08 ID:f967V2wE.net]
>>648
すごい!これできれいにグラフが出せました。本当にありがとうございます!
書き方に工夫が必要で、そういうのをぱっと思いつけるように勉強いたします。

>>649
関数のグラフではなくてxに対応するyの値(値がxのときの結果はこの数値)はこれですよっていうだけの折れ線グラフを出したかったのです。
ですから時空は大丈夫のはず…です。
対数グラフというものを知りませんでしたので調べてみます。ありがとうございます。

686 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 23:26:28.33 ID:XBUUy+/0.net]
いろいろな参考書で、辞書はKeyと値のペアで出来ていると理解しましたが

keyだけがあって、値が空のを作ってしまってはいかんのでしょうか?

687 名前:デフォルトの名無しさん [2019/12/12(木) 23:54:29.36 ID:ZS52b4mm.net]
from selenium import webdriver
browser = webdriver.Chrome('chromedriver.exe')
browser.get('https://qiita.com/advent-calendar/2016/crawler')

calendar = browser.find_elements_by_css_selector('div.col-sm-12')

for col_sm in calendar:
col_sms = col_sm.find_elements_by_css_selector('th.adventCalendarCalendar_dayName')
print(col_sms.text)

エラーが
---> 9 print(col_sms.text)
AttributeError: 'list' object has no attribute 'text'
と表示されます。textで出力できないのはなぜなんでしょうか?
色々調べているのですが出力方法がわかりません。
初歩的なことですみませんが教えていただけないでしょうか。

688 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 23:58:02.89 ID:n05Ewb3K.net]
>>651
setが辞書のキーだけを集めたコレクション

689 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 00:15:27.02 ID:+9OE4qBy.net]
>>652
ブラウザのコンソールからJS叩くかIPythonとかでデバッグするかして
そのCSSセレクタで意図した要素が取得できてるのか確かめるといい

ビジュアルに確認できるのでブラウザのほうが最初はわかりやすいと思う

690 名前:デフォルトの名無しさん [2019/12/13(金) 01:37:03.59 ID:cqNP6rMk.net]
"); //]]>-->
691 名前:" rel="noopener noreferrer" target="_blank" class="reply_link">>>654
ブラウザコンソール開いてみました。ブラウザコンソールについて調べてみたのですが
よくわかりませんでした。ここに何かのコードを入力するのでしょうか。
JSとはなんでしょうか?
Jupyter Notebookを使っていまして取得したいcol_smsには
<selenium.webdriver.remote.webelement.WebElement (session="667d743c5f872d23247665eb139f3bac", element="f43fbb00-654d-472f-b0f0-1b43973384b4")>
というようなものがいくつか入っているのですが、textを使っても出力されない状況です。
質問ばかりですみません。
[]
[ここ壊れてます]

692 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 02:19:41.88 ID:VJl1Rt3v.net]
普通に長さが1の配列が戻ってきてんじゃね
イテレーター使って.text使うかcol_sms[0].textでいいんじゃね

col_sm.find_elements_by_css_selector()の戻り値ggれば解決しそうな話
俺は面倒くさいのでggりませんけども…!

693 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 03:41:11 ID:+9OE4qBy.net]
>>655
JSはJavaScript
スクレイピングするならHTML/CSSと
JavaScript/DOM APIの基礎知識は必須

browser.find_elements_by_css_selector('div.col-sm-12') はJSで
document.querySelectorAll(‘div.col-sm-12’) とするのと同じ

find_element_by_css_selectorは最初に見つかった要素を返す
find_elements_by_css_selectorは要素のリストを返す
んでリストには’text’というAttributeはありませんよってエラーが出てるよね

694 名前:デフォルトの名無しさん [2019/12/13(金) 06:07:45.61 ID:N3jObneI.net]
Cython について
Cython の pyx ファイルの中に、
@cython.infer_types(True) とあるんだけど、
この@は何の働きをしているの?記法なの?
詳しい人教えて

695 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 10:39:13.33 ID:A6tZ4ufL.net]
>>652-657
Ruby, Selenium Webdriver なら、
find_element は最初の1つだけで、find_elements はすべてを取得する(配列)

css_selector では、div.col-sm-12 などの、
Bootstrap などのCSS フレームワークなどの、デザインを指定するクラスは、あまり意味がない

#main とか、div.container.adventCalendarCalendar とか、table.table とか、
HTML の構造的に、意味があるようなセレクターを指定する。
そうすれば、スマホ・PC などのデザインによって変わらない

css_selector = "#main > div.container.adventCalendarCalendar table.table > thead th.adventCalendarCalendar_dayName"

element = driver.find_element( :css, css_selector )
elements = driver.find_elements( :css, css_selector )

puts element.text, elements[ 0 ].text, elements.length

出力
Sun
Sun
7 (配列の要素数)

696 名前:デフォルトの名無しさん [2019/12/13(金) 11:17:38.66 ID:V90d9jYd.net]
小学生っぽい子供が混ざってるようだが
質問するときは相手に伝わるようにちゃんと考えた方が良い
技術力よりコミュニケーション力や日本語力を気にしろ

697 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 11:40:28.24 ID:Mexu05AP.net]
>>653
ちょっと難しかったです。
とりあえず辞書は、キーだけで値がなくても構わないと思うことにします

698 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 12:14:38.95 ID:A6tZ4ufL.net]
Ruby では、ハッシュのキーに値を設定しなければ、値がnil になる。
一方、存在しないキーの値を取得すると、nil になる

これでは両者の区別がつかなくなるので、デフォルト値を設定する。
そうすると、キーに値を設定しなければ、値がデフォルト値になる

バグを避けるためには、必ずキーに値を設定するか、デフォルト値を設定しておく

699 名前:デフォルトの名無しさん [2019/12/13(金) 12:38:34.35 ID:ZbkO1X73.net]
>>661
set(集合)とdict(辞書)は内部的にはそこそこ近いことをやってる
ハッシュテーブルを作って、keyのハッシュからvalueを見るのがdict。key(setにkeyって概念はないけど、便宜上)のハッシュを見て、key自体が 衝突 and 同じ内容が含まれてるか を見て、key自体を要素として扱うのがset。
setは本当に数学における集合と同じような動作をする(bitwise操作などができる)って認識しとけばおっけー

700 名前:デフォルトの名無しさん [2019/12/13(金) 12:41:27.69 ID:ZbkO1X73.net]
Rubyの話をしてる人が居るのは本当に謎だけど、Pythonでも
dict.get(key, default)
とすればdefaultを設定した上で値を取得できる。
あるいは、collections.defaultdictを使うのもあり



701 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 12:46:19.59 ID:Mexu05AP.net]
>>662-663
ありがとうございます

702 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 12:49:22.97 ID:Mexu05AP.net]
>>664
デフォルトを設定した辞書もあるのですね
ありがとうございます

703 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 13:41:19.76 ID:+9OE4qBy.net]
>>661
「キーだけで値が無い辞書」をどういう風に使いたいの?

704 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 15:24:58.53 ID:yspevzV6.net]
>>664
スレタイにRuby禁止って付けられるくらいに、スレ違いのRubyの話をしたがる頭のおかしい構ってちゃんが一人居ついているだけだからスルーしとけばいいよ

705 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 15:26:20.43 ID:hzMr3/rM.net]
>>667
とある請求書作成アプリのセルからテキストをコピーして辞書に格納してから、別アプリにペーストしたいのです
ケースによって空欄のセルもあるので、そのままで良かったのだろうかと考えてました
でもNoneを入れる事にしました

706 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 16:20:03.71 ID:+9OE4qBy.net]
>>669
なるほど
「キーに対応する値が無い」ケースをどう表現すべきかという話だったね

文字列の空欄を示す場合は一般的には空文字を使っておいたほうが
後でテキスト処理をする時にNoneのハンドリングが必要ないし
キー自体が存在してなくてNoneになるケースとの区別が付きやすくてベターだと思う

707 名前:デフォルトの名無しさん [2019/12/13(金) 18:47:08.49 ID:cqNP6rMk.net]
>>656-657-659
ご回答ありがとうございます。皆さまから教えていただいたことをできる限り試してみます。

708 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 18:53:53.21 ID:Mu2dn80c.net]
>>652
そのページそもそもdiv.col-sm-12の子孫にth.adventCalendarCalendar_dayNameが無い件

709 名前:デフォルトの名無しさん [2019/12/14(土) 00:53:34.54 ID:28JG+Fsi.net]
>>672
子孫など何か関係がないといけないのですね。入力をすればなんでも取得できると思っていました。
教えていただきありがとうございます。簡単なサイトを作れるぐらいのHTMLやCSSの基本をまずは覚えた方がいいんでしょうか...

710 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 09:57:24.53 ID:YkKG/mMh.net]
>>670
アドバイスありがとうございます

実は辞書を作る前工程で
Win32のクリップボード経由で、文字列を取得してくるプロセスがあったのですが

そこで自分が書いた関数だと、Winアプリが文字列が空だと、エラーになることに気がつきました

悩ましかったのですが、エラーになったらtry 〜exceptで
変数にNoneを入れることでしのぎました

text = “” だとデバッグで読むときよく分からなかったですし

ここは、何がベターなのかもう少し考えてみます
このスレのコメントは大変ためになります



711 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 10:57:58.37 ID:oHNLq8G6.net]
馬鹿には無理

712 名前:659 mailto:sage [2019/12/14(土) 10:59:10.77 ID:8NRAnTxB.net]
>>673
web アプリの初心者は基本、サーバー側はRuby で、
クライアント側は、HTML, CSS/SASS, Bootstrap, JavaScript, jQuery などを使う

jQuery のCSS Selector のルールを学べばよい。
emmet も、似たようなもの

# はid で、. はクラスとか、
x > y なら子要素(子孫を含まない)で、x y なら子孫要素とか

それと、他人のHTML の解析は、基本無理。
クラスをどういう意味で使っているのか、分からないから

構造的な意味で使っているのか、単なるデザイン上のものなのか、
または、Bootstrap などのCSS フレームワークのルールなのかも

713 名前:知れないし、
他人の考えなど、分からない

col-sm-12 みたいに、small なら、12列分の幅を使うとか、
こういうデザイン上のものを、CSS Selectorに入れると、
ページのデザインが変わると、セレクトされなくなったりしてしまう

一方、構造的な意味は、変わりにくい
[]
[ここ壊れてます]

714 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 11:23:55.42 ID:dDx9/YlQ.net]
yokokara

715 名前:デフォルトの名無しさん [2019/12/14(土) 11:34:02.24 ID:TlZt0bii.net]
後ろから前から

716 名前:デフォルトの名無しさん [2019/12/14(土) 11:52:10.65 ID:e26gFA86.net]
アホな質問で申し訳ないが
class の、書き方について質問あります

Python がはじめてのプログラミング言語で
やっと手続き的な記述ではやりたいことが
できるようになってきた

オブジェクト指向理解してないのもあるかもだけど
ライブラリとか、フレームワークのclass をオーバーライドしてかく時に

self が乱立しまくってて、
効率わるいようなきがするのだけども
書き方があってるのか知りたい

現場エラー吐いてないから、いいかもしれないけど
マナーというか、お作法としてどうなんやろ?と

別途class つくったり関数作ったりするの?

717 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 14:32:25.78 ID:tCtWHq2v.net]
>>679
それは誰もが感じる疑問

Pythonではインスタンスメソッドとして扱いたいメソッドの第一引数にselfを渡して
明示的にselfを指定する以外にインスタンスメンバーを参照する方法はないので
オブジェクト指向的に書く場合はselfが乱立しまくるのが通常

”Explicit is better than implicit.”という苦しい言い訳をする人も多いけど
そんな高尚なものじゃなく単に言語の制約なのでPython使う限りは諦めて受け入れるしかない

718 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 16:23:05.11 ID:8NRAnTxB.net]
Ruby のクラスでは、引数にself を持ちまわらなくても、selfが使えるだろ。
それは、実装が大変

ユーザーの利便性を上げるために、実装で頑張った

719 名前:デフォルトの名無しさん [2019/12/14(土) 16:52:04.55 ID:TlZt0bii.net]
selfが嫌なら第一引数を@にすれば良いんだよ
@.hoge でアクセス出来るし便利だぞ

720 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 16:58:40.39 ID:tCtWHq2v.net]
>>681
実装は大変じゃないよ

そんな大変ならPython以外にも
1つくらいselfを要求するOO言語があってもいいよね



721 名前:デフォルトの名無しさん [2019/12/14(土) 17:15:21.14 ID:TlZt0bii.net]
最近はRustとかNimみたいに
第一引数.関数名(第二引数以降はカッコ内)
の様な文法が流行ってる

722 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 17:45:57.04 ID:tCtWHq2v.net]
>>684
もうそういう苦しい言い訳やめたほうがいいよ
RustやNimやGoはコンテキストが全く違うんだから

>>679
FAQも読むといいよ
https://docs.python.org/ja/3/faq/design.html#why-self
日本語訳おかしいから英語読めるなら原文のほうがおすすめ

723 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 18:17:59.35 ID:zJmCdf+U.net]
Pythonは変数のスコープもちょっと微妙なとこあるし、self必須とかはスコープに由来してるかわかんないけど、その辺は受け入れるしかないよね

その辺受け入れたとしても便利だからPython選んでるわけで

もちろん後方互換性を保ったまま改善できる言語変更があったら嬉しいけど

○○が変だからPythonは使えない、という人には他の言語もあるしね。

724 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 21:51:22.03 ID:BIA5WTIR.net]
テトリスってむずいすか(´・ω・`)

725 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 22:02:54.83 ID:1E2rCKG0.net]
>>687
ゲームを作りながら楽しく学べるPythonプログラミング
で題材になるぐらいには簡単(入門向け)

726 名前:デフォルトの名無しさん mailto:sage [2019/12/14(土) 23:29:48.51 ID:Ztjs0n6X.net]
>>687
たぶんブロックの回転で行列がどうこう言ってた人かな?
テトリスは特段難しくはないんだけど、これまでのレスを見てるともっと基礎レベルから頑張った方が良さそう。

727 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 07:07:55.11 ID:DnIG8IxI.net]
今がんばってます(´・ω・`)ゲームつくりたいんで(´;

728 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 12:01:47.20 ID:tER7UmuJ.net]
この界隈だとがんばっちゃダメ
テトリスのコードを10くらい眺めて理解すればいい

729 名前:デフォルトの名無しさん [2019/12/15(日) 12:11:02.09 ID:+1jKhtSK.net]
>>676
詳しく教えていただきありがとうございます。
jQuery のCSS Selectorのルールなど見てみようと思います。

730 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 12:21:43.19 ID:YeoWUmPH.net]
>>691
どこで仕入れればいいの



731 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 15:30:08.19 ID:GQ26ybwL.net]
SQLite3で巨大なDBにデータを追加してcommitした時
動作としてはdbファイル全体が改めてディスクに書き込まれるのでしょうか
それとも変更した部分のみがディスクに書き込まれるのでしょうか

SDカード上にdbファイルを置いているため書き込み耐久が心配になり質問しました

732 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 15:53:14.71 ID:goe0JUwd.net]
>>694
普通は全書き込みだと思うんだが

そんなに消えて困るものならば
SDカードだったら
常時上書きのドラレコ突っ込みOKみたいな特上品使わないと
やばくね?

733 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 16:09:30.52 ID:fGq+HT2S.net]
ページ単位で管理されていて更新されたデータのあるページだけ書き込まれる。

734 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 19:58:47.04 ID:tER7UmuJ.net]
>>693
chromeかFireFoxのブラウザで「python tetris」と検索して出てきたものを上位から読む

735 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 23:09:27.37 ID:fpSJINfx.net]
>>694-696
ファイルシステムによる

Linux のext では、例えば、40KB のファイルは、4KB のページサイズでは、10ページある。
その5ページ目に、8KBのデータを追加したとすると、

追加された2ページ分は、11・12ページに書かれて、
1〜5, 11, 12, 6〜10 の順番に、リンクが張られる

この場合は、既存のページは、再配置されない。
次のページを示す、リンクのみが書き変わる。
つまり、5→11、11→12、12→6 を指す

でも、12ページ分48KBを超えると、管理方法が変わるから、
データの再配置が起きるかも知れない

736 名前:デフォルトの名無しさん mailto:sage [2019/12/15(日) 23:47:23.79 ID:YEGq3iyi.net]
すいません。どなたか教えてください。

jupyter notebook にてpyperclip をインポートしようとしたところできなかったため、
anaconda prompt にてインストール試みました。

conda install pyperclip だと、公式サイトで探してね。的なエラーが出てきたため、
pip install pyperclip で試みたところインストールは完了したのですが、、、

やはりjupyter notebook上でインポートしようとすると、同様の見つかりませんエラーが返ってきます。。。
何が悪いのか、どこを見ればいいのかよくわかりません。。。

教えていただけると大変ありがたいです。。。

737 名前:デフォルトの名無しさん mailto:sage [2019/12/16(月) 07:51:04.24 ID:79yFDnLG.net]
>>698
dbはふつうそんな追加の仕方はしない。

738 名前:デフォルトの名無しさん mailto:sage [2019/12/16(月) 08:55:41.01 ID:+69MK1pA.net]
>>687
アルゴリズムはねちょねちょ考えるのが楽しそうだから、回転行列とか勉強しながらやってみ?
問題は表示とかキー入力をどうするかだと思うなぁ。
普通はpygameになっちゃうんだろうけど、tkinterとかPyQtやWx使うとたいへんですかね?
せっかくインタプリタ言語な

739 名前:んだからtubeの「小一時間で作ってみた」シリーズみたいに
テキストベースで気楽に作れるライブラリあると良いのにね。
[]
[ここ壊れてます]

740 名前:デフォルトの名無しさん mailto:sage [2019/12/16(月) 08:57:09.75 ID:Ugry/p2L.net]
>>699
いまお使いの仮想環境名は把握してますか

conda list -n 仮想環境名 で
その環境を指定して、インストール済み一覧が表示されるから
それで分かるんじゃないでしょうか?



741 名前:デフォルトの名無しさん [2019/12/16(月) 12:37:42.94 ID:0jmxiGrg.net]
>>701
curses
ncurses
pdcurses

742 名前:デフォルトの名無しさん mailto:sage [2019/12/16(月) 21:11:21.65 ID:yUF0sPmO.net]
>>702
レスありがとうございます!
仮想環境名を確認したところ 恐らくbaseで、モジュール一覧を確認するとpyperはインストールされてますよとの表示がありました。
(pyperがpyperclipを指すのかも不明の状態です。。。w)

仕組みがよくわかっていないため、とりあえずググって出てくるトラブルシュートを全て試そうと、
アナコンダナビゲーターのopenterminal でconda install jupyter を実行した後、
再びpip install pyperclip を試すと、完了しているはずがなぜかインストール開始に。。。
その後、jupyter でimport pyperclip 試すもやはりエラー
PC再起動後、jupyter 上でpip install が実行できるとの情報を得、pyperclipをインストール試みると、すでに完了してますよとのメッセージ
その後jupyter上で import pyperclipがエラーを吐き出さないこと確認しました。

恐らく
>アナコンダナビゲーターのopenterminal でconda install jupyter を実行した後、
>再びpip install pyperclip を試すと、完了しているはずが、なぜかインストール開始に。。。
この辺がキモだったんだと思いますが、よくわかってませんw
プログラミングってそれ自体もそうだし、環境構築も奥が深いんですね。。。。

改めてアドバイスありがとうございました(^^)

743 名前:デフォルトの名無しさん mailto:sage [2019/12/16(月) 21:11:27.79 ID:yUF0sPmO.net]
>>702
レスありがとうございます!
仮想環境名を確認したところ 恐らくbaseで、モジュール一覧を確認するとpyperはインストールされてますよとの表示がありました。
(pyperがpyperclipを指すのかも不明の状態です。。。w)

仕組みがよくわかっていないため、とりあえずググって出てくるトラブルシュートを全て試そうと、
アナコンダナビゲーターのopenterminal でconda install jupyter を実行した後、
再びpip install pyperclip を試すと、完了しているはずがなぜかインストール開始に。。。
その後、jupyter でimport pyperclip 試すもやはりエラー
PC再起動後、jupyter 上でpip install が実行できるとの情報を得、pyperclipをインストール試みると、すでに完了してますよとのメッセージ
その後jupyter上で import pyperclipがエラーを吐き出さないこと確認しました。

恐らく
>アナコンダナビゲーターのopenterminal でconda install jupyter を実行した後、
>再びpip install pyperclip を試すと、完了しているはずが、なぜかインストール開始に。。。
この辺がキモだったんだと思いますが、よくわかってませんw
プログラミングってそれ自体もそうだし、環境構築も奥が深いんですね。。。。

改めてアドバイスありがとうございました(^^)

744 名前:デフォルトの名無しさん mailto:sage [2019/12/16(月) 21:30:31.84 ID:ZGRHc5ZN.net]
yokokara

745 名前:デフォルトの名無しさん mailto:sage [2019/12/16(月) 23:12:57.95 ID:levX/ad3.net]
yokokara連呼厨子ね

746 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 05:54:50 ID:eGUcswGM.net]
conda, pip とか、異なるパッケージマネージャー(PM) を同時に使えるのかな?
それらは、同じデータベース(DB)に、各パッケージの依存関係を記録しているのか?

例えば、node.js をインストールしておいてから、
yarn を、npm を使わずに、
OS に直接または、OSに入れている、Homebrew, Chocolatey などのPMを使って、インストールすることはある

大きな括りでは、異なるPMを使うことはあるけど、
各モジュールのような小さいライブラリを、異なるPMで管理する事は、あるのかな?

片方のPMの依存関係DBが更新されても、もう一方のDBが更新されるのか?

yarnのように、処理が異なるだけで、npmと同じ依存関係DBを使っているのなら、
npm/yarnは、同一のDBを参照するけど

これと同じで、pip/condaは、同一のDBを参照しているのか?

747 名前:デフォルトの名無しさん [2019/12/17(火) 08:18:13.44 ID:dA33S95E.net]
pythonでWindowsGUIアプリの自動化をやらせたいいんだけど。
(例えば、了解ボタンクリックとかメニューの選択等)
大概の場合、PyAutoGUIで座標クリックにいきつくんですが、座標クリックだとウィンドウの大きさとか
動かなくなるときの考慮てどうするんですか。

748 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 09:45:31.97 ID:QqOdTjZG.net]
>>709
>大概の場合、PyAutoGUIで座標クリックにいきつくんですが、座標クリックだとウィンドウの大きさとか

PyAutoGUIでなくて申し訳ないが
私はそういう事で困る事の少ないAutoITXを使っている
座標系のマウスクリックだけじゃなくて、
アプリやウィンドウ、ダイアログの名前を判断して、指定したダイアログにある「了解」というボタンを押す
なんて命令が使えるから

749 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 09:54:50.75 ID:OaYPHXYM.net]
知恵袋でテトリスの回転のコードをも

750 名前:らったのですが、
https://ideone.com/2j9PhQ
このコードの内包表記の部分がよく分かりません(tmpのとこです)


この部分をもう少し一般的な書き方はできないでしょうか?
[]
[ここ壊れてます]



751 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 10:18:22.18 ID:QqOdTjZG.net]
質問です。python2.7.1 windowsです

リストを作りました
list = [“left” , 1 , 2, 3, “num_a1”]
要素は5個です

関数を作りまして、引数を5個にしました
関数にリストを読み込ませたら、無事に動きました

次に要素を15個に増やして
関数に、先頭から5個ずつ読み込ませて
3回、関数に仕事をさせたいと思います

リストは二次元配列にしようと思います

ばくぜんと、forを使うのだろうということは分かるのですが
ググっても類似のソースを見つけられず、悩んでます

気軽に「こんな手法があるよ」程度で、レスをつけてもらえればありがたいです

752 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 10:21:32.79 ID:qeIaMe/y.net]
自身の脳みそを一般的な水準にまで引き上げた方が早い

753 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 10:23:25.96 ID:4rBcrl8A.net]
AutoITは遅くてやめてpyautoguiはインポートするだけでDPIのスケーリング変わっちゃうから
Win32guiとctypesで全部書いて行った

754 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 10:27:52.81 ID:GwugB5zt.net]
>>711
お前、色んなとこで質問してコード継ぎ接ぎしてるだけだろ?
プログラミング向いてないからやめとけ。

755 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 10:29:46.26 ID:qeIaMe/y.net]
teratailの虐殺君じゃね?

756 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 10:47:25.74 ID:sELGcuhs.net]
大層な名前の割にしょぼそう

757 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 11:06:24.34 ID:OaYPHXYM.net]
>>715
わからないから質問して何が悪いのだろうか

758 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 11:32:25.65 ID:GwugB5zt.net]
>>718
ばかなの?

> お前、色んなとこで質問してコード継ぎ接ぎしてるだけだろ?
> プログラミング向いてないからやめとけ。

ただ向いてないだけ。

759 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 11:43:42.66 ID:6LhBKKEf.net]
>>718
質問すること自体は悪くはないが、自分の現在のレベルを自覚して目標を定めた方がいいぞ。
まずはテトリスは遠い未来の話にして、入門書を一から頑張れ。
連立方程式が分かりませんというから解説したら、九々ができないレベルでした、って状態だから、まずは九々を身に付けよう。
今理解できないレベルの問題を相手を変えて、説明の方法を変えてもらっても、理解できないことに変わりはない。相手に手間をかけさせるだけだし、君自身も前進せずに同じところをグルグルしてるだけだろう。

760 名前:デフォルトの名無しさん [2019/12/17(火) 12:13:38.61 ID:rApV4krM.net]
>>708
両方使ってるけど問題無い
先に conda の方使って conda に無ければ pip 使ってる



761 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 14:04:39.73 ID:Ef4LKPDY.net]
>>712
チュートリアルを一通りやってから出直そうか
チュートリアルで理解できないところがあったらそれを質問したらいい
https://docs.python.org/ja/2.7/tutorial/

今の段階でググって類似のソースを見つけようとするのは無駄どころか害でしかないよ

762 名前:デフォルトの名無しさん [2019/12/17(火) 14:11:37.23 ID:rApV4krM.net]
>>712
codepad.org/jnBqqX9F

763 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 14:14:27.53 ID:q5RkcH8n.net]
visualstudioでc#使ってるときのように、インテリセンスが働いて、なおかつスペースとかを教典通りに調整してくれるテキストエディタありませんか?

764 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 14:16:09.48 ID:q5RkcH8n.net]
vs→vcに乗り換えてインテリセンスが働くようになったのは良かったんですが、スペース入れるbekiどうかで悩んだり、そこに脳のメモリ取られるのがうっとうしい。。。

765 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 14:18:53.50 ID:Ef4LKPDY.net]
>>711

block = [ [11,12,13,14],
[15,

766 名前:16,17,18],
[19,20,21,22],
[23,24,25,26] ]

def rot():
____tmp = [[x for x in y] for y in block] # listのlistを一時用に作る

これはおちょくられてるのかもな
不必要なコードだけどリスト内包表記はPythonの基本なので理解する努力をしよう
[]
[ここ壊れてます]

767 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 14:29:57.73 ID:QqOdTjZG.net]
>>722
ありがとうございます
単にコピペで貼り合わせて動くものを作るにとどまらず
なぜ動くのかを理解しながら、参考資料にあたりたいと思います


>>723
ありがとうございます

実は調べてるうちに、chunkなる単語を知りまして
やりたかったことは、これだったんだと思ったと同時に
活路が開けたといいますか、学習が進みました
ヒントのソースありがとうございました

768 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 20:48:36.49 ID:eGUcswGM.net]
テトリスなんて、10年以上やってる香具師でも、簡単に作れない

Java 土方で有名なベテラン、T Umezawa の動画を見てみ。
こんな、神レベルの達人でも、タイルが壁にめり込んだりして、簡単には作れない!

落ち物パズルゲームのプログラミング解説 1/2
https://www.youtube.com/watch?v=iyMMaQWlF_0

素人が作るのは、10年以上早いw

作ったと言ってる香具師は、作っていない。
コピペしただけw

769 名前:デフォルトの名無しさん mailto:sage [2019/12/17(火) 20:52:54.24 ID:CYemexLv.net]
お前の頭が悪いだけ

770 名前:デフォルトの名無しさん [2019/12/17(火) 23:11:25.06 ID:8Os966QG.net]
みんながんば!



771 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 00:22:03.39 ID:Z6EQDlLl.net]
Java土方で設計力もテスト設計力もないから書けないだけじゃないの

小学生の頃BASICのテトリスのコードの量見て難しいと思った記憶があるけど、今ならどんな言語でも書ける自信があるぞ

今のPCパワーで高速化とか考えなくていいなら愚直に書くだけだろう

772 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 01:38:39 ID:N9ghlCsW.net]
ブロック?じゃなく行列をなんで回転させようとするんだろう?
全く理解できない感覚なんだけど

773 名前:デフォルトの名無しさん [2019/12/18(水) 05:13:33 ID:YyMc+ouu.net]
a = ['01','03','05']
b = ['02','04','06']

ていう配列があって、それをforで回すんだけど。
for x,y in zip(a,b):
print(x,":",y)

1個飛ばしでstepさせることでてきますか?
マトモな言語ならfor i=0 to a.length step 1とかできるのに。

774 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 07:14:26.22 ID:Qufxt8uf.net]
>>733
自分の無知により自分の思うようにいかないからといって、マトモでないという思考はやめた方がいいぞ

775 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 08:09:09.35 ID:ZgzG2chb.net]
今時lengthだってw
原始人かよ

776 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 08:16:02.71 ID:4Fp+UrW3.net]
for x,y in list(zip(a,b))[0::2]:
print(x,":",y)

777 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 08:37:40.12 ID:4Fp+UrW3.net]
for i=0 to a.length step 1
をPyで使うなら、
for i in range(0, len(a), 2):
print(a[i],":",b[i])
な気がするが。
で、>>733はなんでzipを使うんだろ

778 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 09:26:00.82 ID:NtHwU1Mj.net]
for left in zip(*pos[::-1]:
とかで使ってるけどzip何なのか調べてないしちゃんと動いてるからいいや

779 名前:728 mailto:sage [2019/12/18(水) 11:59:08.76 ID:j3J ]
[ここ壊れてます]

780 名前:URanB.net mailto: >>731
T Umezawa は、Java, C#, C++ とか何の言語でも、
入力補完を使わずに、メモ帳にすごい勢いで書くだろw

土方を極めた、神としか思えないw

>>732
テトリスのすべてのブロックは、4×4 マスに納まる

キー操作による回転に、対応させないといけない。
90度左回転・右回転とか
[]
[ここ壊れてます]



781 名前:デフォルトの名無しさん [2019/12/18(水) 12:02:31.23 ID:RQBBPl9v.net]
造りたい言い始めてから何日かかってんだ
書き込む暇あったらさっさと造れ
一日もあったら出来るだろ

782 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 12:03:17.83 ID:NtHwU1Mj.net]
回転いらない1x1ブロックのテトリスつくったら?

783 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 12:08:51.54 ID:vQ0YSRP4.net]
>>741
あーこれいいね。絶対に伝わらない良アドバイスw

784 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 12:11:56.37 ID:CFyyhfVu.net]
面倒くせーから早く自殺しろ

785 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 13:39:56.45 ID:N9ghlCsW.net]
>>733
無理して使いにくい言語を使わなくても
マトモだと思う言語を使ったほうがいいと思うよ
皮肉じゃなく割とマジで

pythonでstep指定する時はslice/isliceを使う
は? slice? ってなっても我慢すること
pythonはそういう言語だから

for x, y in islice(zip(a, b), 0, None, 2):
____print(x, y)

786 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 14:00:04.04 ID:N9ghlCsW.net]
>>739
>テトリスのすべてのブロックは、4×4 マスに納まる

4x4マスに収まるからといってブロックを4x4の行列で管理するメリットって何かあるの?
viewとmodelの分離ができてないとしても
ブロックを行列で表現してそれを直接回転させようという発想になる理由に興味ある

787 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 14:05:40.87 ID:j0+9FDxC.net]
ていうかこのテトリス奴って一年くらい前にも同じレベルのレスしてなかったっけ?

788 名前:デフォルトの名無しさん [2019/12/18(水) 14:08:54.50 ID:gHFmoE9o.net]
一個飛ばしってただ単にこういうことじゃなくて?

>>> for n, m in zip(a[::2], b[::2]):
print(n, ':', m)


01 : 02
05 : 06

何をもめてるのかわからん

789 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 17:05:42.74 ID:ZgzG2chb.net]
>>746
10年前もテトリスの話をしてただろう

790 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 18:54:15.48 ID:rPZysOi9.net]
global宣言って何となく行儀が良くないような気がするのですが、上級者の方でも結構使いますか?



791 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 19:04:37.86 ID:YQOjezK4.net]
グローバル変数自体はPythonなら普通に使うけど、global宣言はほとんど使わない
しょっちゅう細かい粒度でグローバル変数を更新するようなことをするとスパゲッティ化しやすい

792 名前:デフォルトの名無しさん mailto:sage [2019/12/18(水) 20:16:50.10 ID:Kq662flJ.net]
nonlocalならまあ、というかよく使う
globalはつかったことがない

793 名前:728 mailto:sage [2019/12/18(水) 23:13:47.41 ID:j3JURanB.net]
>>745
各ブロックの回転パターンは、4つあるから、
ブロックを行列で表現して、それを直接回転させれば、1つで済む

行列の回転なら、動きがおかしくても、回転計算の部分だけを直せばよいけど、
4つのパターンを作っていると、それらのパターンを直接直さないといけないから、大変

794 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 00:00:42.47 ID:snKgfw1x.net]
>>752
回転軸とか壁や設置済みブロックで回転が制限されるケースを考えると
単純な行列回転じゃ無理だし1つの処理でも済むこともないよ
そもそも4x4の行列だとI型のブロック回転させるだけで上下に動いちゃうよ

普通にブロックの型、基準となる座標、向きをモデルとして管理して
描画ロジックとは分けたほうがいい

795 名前:デフォルトの名無しさん [2019/12/19(Thu) 01:26:15 ID:qED21Kil.net]
俺もテトリス作ろうしたことあったけど思ったよりややこしくて放置してるわ…

796 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 08:02:37.49 ID:0eo+DnKB.net]
専門学校のコンピュータ・アニメ・ゲーム科卒から数年経ってプログラマーを目指したくなった者なんですがやっぱり未経験者は四年制大学の新卒しか採用されませんか?
やりたい事はAIのプログラミングです
言語はPythonを覚え中です

797 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 08:11:07.93 ID:EV4M7jYb.net]
単純に需要による
アンドロイドプログラミングとかなら今は需要の割にクッソ人が少ないから
kotlin使えたら未経験だろうが就職できる可能性は比較的高い

一方pythonのほうはこれからどうなるかは分からないが
日本では現状深層学習用などの学問用言語で 実務に使っているところはあまりない
ということはつまりpythonでAIやっていくには大学で専攻したような専門知識を持った人たちに
対抗しなくちゃいけないわけで ちと難しいんじゃないか?

798 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 08:17:46.98 ID:0eo+DnKB.net]
>>756
わかりました
Kotlinにします

799 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 08:21:14.74 ID:0eo+DnKB.net]
早速ポチってきました!
作って楽しむプログラミング Androidアプリ超入門―Android Studio3.3 &Kotlin1.3で学ぶはじめてのスマホアプリ作成

800 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 09:36:46.63 ID:Ez8BH22g.net]
辞書で特定の単語を含むキーをワイルドカードで検索し
ヒットしたキーに対応している値を抽出したいのですが
辞書に正規表現検索を行うのはできないのでしょうか

プリミティブでは難しいでしょうか



801 名前:デフォルトの名無しさん [2019/12/19(木) 10:09:48.45 ID:xAWELgvD.net]
はい

802 名前:デフォルトの名無しさん [2019/12/19(木) 10:49:12.14 ID:Crw8oya5.net]
容易い

803 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 12:27:41.62 ID:dMnFAlGo.net]
Ruby では、正規表現のunion で「または」の正規表現を作ることができる。
その辞書の値を、gsub に渡すことで置換できる

hash = { 'ab' => 'あ', 'xy' => 'ん' }

p re = Regexp.union( hash.keys ) #=> /ab|xy/

p "9xy9ab9xyx".gsub( re, hash )
#=> 9ん9あ9んx

804 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 13:18:16.88 ID:9Fgp9NK8.net]
内包表記を使えば一瞬で解決する

805 名前:デフォルトの名無しさん [2019/12/19(木) 14:15:27.95 ID:+cpLTGtZ.net]
>>755
君がやるべきことは高校を卒業することだ

806 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 14:51:01.29 ID:snKgfw1x.net]
>>759
filter()かリスト内包表記
頻出パターン

foo = {"aaa.py": 1, "bbb.py": 2, "ccc.csv": 3, "ddd.txt": 4}
[value for key, value in foo.items() if ".py" in key]
Out: [1, 2]

条件が複雑ならifのところで正規表現や関数使ってもいい

807 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 15:36:09.20 ID:Ez8BH22g.net]
ありがとうございます。参考になります

808 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 18:28:38.99 ID:V/5EkM6t.net]
機械学習する時、anacondaでpipを使っています
何故、condaを使わないのでしょうか?

809 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 18:37:09.73 ID:V/5EkM6t.net]
× 機械学習する時、anacondaでpipを使っています
〇 機械学習する時、色々なサイトを見てみると大抵、anacondaでpipを使っています

810 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 19:19:08.89 ID:PZllcG7i.net]
そのサイトの記事を書いた人もまたどこかからコピペしてるからだよ
Anacondaがないと何もできないレベルの人が自分で一時情報源に当たって問題解決なんてできるわけないだろ?
そうやって元を辿っていくと、Anacondaを必要としないレベルの人に行き着く



811 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 19:30:49.49 ID:V/5EkM6t.net]
>>769
へぇー、結構適当な理由なんですねw
thank you

812 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 20:35:05.08 ID:Zd ]
[ここ壊れてます]

813 名前:WBIW9y.net mailto: >>750
>>751
ありがとうございます
globalもnonlocalも設定値みたいに使ってglobal変数自体は更新しない場合が多いってことですか?

多少無理してでも引数と返り値でやりくりした方が見栄え良さそうですね
[]
[ここ壊れてます]

814 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 20:52:51.96 ID:igx1CkSL.net]
プロパティの勉強中

class Goods:
def __init__(self, name, price):
self.__data = {"name":name, "price":price}

def get_name(self):
return self.__data["name"]

def ste_name(self, value):
self.__data["name"] = value

def get_price(self):
price = self.__data["price"]
price__str = f"{price:,}円"
return price_str

name = property(get_name, ste_name)
price = property(get_price)


from goods_property import Goods
food = Goods("pizza",200)
print(food.name)    #1
food.name = "humberger"
print(food.name)    #2
food.price = 100
print(food.price)

815 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 20:54:02.72 ID:igx1CkSL.net]
#1で

Exception has occurred: AttributeError
'Goods' object has no attribute 'name'

ってなるのではなんで???
#2はOKなのに、initでデータ入ってないってこと?

816 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 21:28:47.05 ID:xPsWnlhM.net]
>>773
実行していないが
>food.price = 100
ではエラーになると思うが、nameのgetter、setterではエラーにならないんじゃないか
あと、setをsteにするってなんかの教えによるのか

817 名前:デフォルトの名無しさん [2019/12/19(木) 21:32:21.97 ID:Crw8oya5.net]
>>772
https://ideone.com/
に貼ってきて

818 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 21:44:29.89 ID:igx1CkSL.net]
>>775
https://ideone.com/kLRY44
これでOkでしょうか?

819 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 21:45:21.51 ID:igx1CkSL.net]
>>774
すいませんsteは自分で吹きました。。。

820 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 21:50:51.31 ID:snKgfw1x.net]
>>773
#2の直前の
foo.name = “humberger”
でfooにnameっていう変数を新しく追加してそれに”humberger”を代入してるから#2はエラーにならない

__init__で
self.name = name
self.price = price
ってやってればfooにはnameが#1の段階で存在するから#1もエラーにならない



821 名前:デフォルトの名無しさん [2019/12/19(木) 22:17:22.66 ID:Crw8oya5.net]
>>776
File "prog.py", line 13
price__str = f"{price:,}円"
^
SyntaxError: invalid syntax

>Exception has occurred: AttributeError
>'Goods' object has no attribute 'name'
再現できるコード貼ってくほしい

822 名前:デフォルトの名無しさん [2019/12/19(木) 22:19:55.36 ID:Crw8oya5.net]
https://ideone.com/MhxdDj

823 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 22:24:13.55 ID:snKgfw1x.net]
>>778
すまん、↓これ見落としてたわ
name = property(get_name, ste_name)
price = property(get_price)

824 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 22:33:20.61 ID:snKgfw1x.net]
インデントがあってればエラーにはならないね

825 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 22:43:58.50 ID:igx1CkSL.net]
>>778
本当だ・・・。
というか教科書の教材を打ち込んでただけなのですが、教科書自体間違ってるのか・・・。
1時間悩んだのが何だったのか・・・。

ありがとうございます。すっきりしました。

826 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 22:47:34.16 ID:igx1CkSL.net]
>>782
あれ・・・。

name = property(get_name, ste_name)
price = property(get_price)

のインデントってdef 〜と同じところではダメなのでしょうか?

827 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 22:49:21.05 ID:igx1CkSL.net]
よくわからなくなってきた。
properyは初期化には関わらないからinitで代入する
self.name = name
self.price = price
が必要って理解でいいのでしょうか?

828 名前:デフォルトの名無しさん [2019/12/19(木) 23:05:38.53 ID:GR6pg+Yh.net]
socket通信で送った文字列を、Pythonで受け取ってexecするプログラムを作りたいのですが
空いているポートにセキュリティ上の問題が発生してしまいます
セキュリティ問題を回避する方法ってないですか?

829 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 23:24:54.23 ID:68JQcBLU.net]
>>771
個人的にだけど…
globalは宣言もしないし値を使うだけってのもまずやらない
nonlocalは宣言するからには更新するし使うだけってのもバンバンやる
nonlocal宣言するのはGUI部分のみだけど
変数使うだけの方は100行の関数を10行単位の細切れにして引数は渡さないとかそんな感じ

830 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 23:49:48.18 ID:4y7SvWFf.net]
すいません質問なんですが
配列の中のものを交互に2つの処理をするにはどうしたらいいのでしょうか?

a=[0,1,2,3,4]という配列があるとして
0と2と4には5をかけて
1と3には2をたすとかどうしたら良いのでしょうか?



831 名前:デフォルトの名無しさん mailto:sage [2019/12/19(木) 23:51:10.25 ID:snKgfw1x.net]
>>783

>>778に書いたことは一旦忘れてくれ
property()で設定してるのを見落としてたから

インデントが間違ってるってのは
get_name()や name = property(…)が
みんなdef __init__の中に定義されてるところ

832 名前:デフォルトの名無しさん [2019/12/20(金) 00:11:32.82 ID:N19Ct9QI.net]
>>788
これでできます
a=[0,1,2,3,4]
for i,number in enumerate(a):#enumrateでaの要素をnumberに入れる、要素番号をiに入れる
if number % 2 == 0:#numberを2で割った余りが0だった場合
  a[i]= a[i] * 5
else:
  a[i]= a[i] + 2
print(a)

833 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 00:26:29.96 ID:aoxL/sZJ.net]
>>780
それを修正したが、AttributeError なんででるかわからんな
https://ideone.com/dyL8m9

834 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 00:33:50.20 ID:mwn52mbA.net]
>>790
ありがとうございます
a[0::2]とか使うとforが二個できてカッコ悪いなあと悩んでました
助かります!、

835 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 00:56:22.82 ID:LtdBIlOX.net]
>>790
>if number % 2 == 0:
交互に処理したいなら if i % 2 == 0: じゃないかな

836 名前:デフォルトの名無しさん [2019/12/20(金) 09:41:12.09 ID:N19Ct9QI.net]
>>793
たしかに
見落としてた

837 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 12:09:16.88 ID:c7XoinxY.net]
>>764
もうPythonはあきらめました

838 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 13:05:32.03 ID:qS4WQ1Uv.net]
python2.7
windowsのアプリケーションからクリップボード経由で手にいれた文字列

“内閣総理大臣賞受賞”
を変数mymarkに入れておいて

u’総理’ in mymark

と演算子inで調べると、総理は存在するはずなのにFalseを返されます

右も左もソースに自分で打ち込んだ場合は正常なので
win経由のものはどこかでエンコードがおかしくなってるのではないかと思います

以下は調べてみました
type #右も左も<type ‘unicode’>
len(mymark) #9
内閣総理大臣賞受賞、で9文字ですね

len (u’総理’) #6
・これがどうして6になるのかよく分からない

839 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 13:20:02.56 ID:L1XL0AeX.net]
len(u'総理')の長さが6になるのは
多分python2では文字の長さを「文字列全体の容量 / 1文字の容量」で計算してるから
日本語などのマルチバイト文字だと実際の文字列の長さより長くなるんだろうなってことは分かる
(python3では普通に文字列の長さが表示された)

内閣総理大臣賞だけ9文字という正確な値になってるのはよくわからない
自分の調べたpython2環境ではlen("内閣総理大臣賞")で27になっていたが

840 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 13:26:15.19 ID:qS4WQ1Uv.net]
>>797
そうなんですか
じゃあ数があわないから、ここに問題が!と思いましたが
そうではないかも知れないのですね



841 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 13:28:24.35 ID:A+TGdcd9.net]
Ruby なら、powershell, clip コマンドを使って、
Windows のクリップボード処理もできる

Windows(CP932でin) → Ruby内部(utf8 で処理する) → Windows(CP932でout)

# frozen_string_literal: true

# クリップボード内の複数行文字列の、各

842 名前:行の先頭・末尾から、
# 連続する空白類を除去して、クリップボードに入れる

str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換

ary = str.each_line.map( &:strip ) # 連続する空白類を除去する

IO.popen( 'clip', 'w:cp932' ) do | clip | # CP932 へ戻す
clip.print( ary.join "\n" )
end
[]
[ここ壊れてます]

843 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 13:31:51 ID:lig6lPK8.net]
mymark = '内閣総理大臣賞受賞'
だと、18文字
mymark = u'内閣総理大臣賞受賞'
mymark = '内閣総理大臣賞受賞'.decode('cp932')
だと、9文字

最初のmymarkをユニコード文字列にデコードしておけばエラーは出ないね。

2.xのお作法、なんかいろいろ忘れてしまってる。
print()で怒られてしまったw

844 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 13:42:46 ID:lig6lPK8.net]
あと、
len(u'総理')
はちゃんと2になるよ。
python 2.7.17 @Windows10

845 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 15:26:09.89 ID:qS4WQ1Uv.net]
ありがとうございます
プログラムにして動かしてるもの(だが動かない)
があるのですが

右側、mymark に .decode(utf-8)を付けると
UnicodeEncodeError: ‘ascii’が出て

右側、mymarkには何もつけずに
左側(u’総理’)にするとエラーは出ないけれど、in演算子が動かない

試しに左側の総理から、uを取ってしまうと
こんどはUnicodeDecodeError:’ascii’が出るんですね
かなり悩ましいです

別のマシンにpython3環境を構築して、そっちに移植してどうなるか試してみます

846 名前:デフォルトの名無しさん [2019/12/20(金) 16:48:06.47 ID:VlcbOuJw.net]
馬鹿には無理

847 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 17:40:34.24 ID:lig6lPK8.net]
>>802
decode() の中のコードページはクォートで囲わないとだめだよ

848 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 18:07:44.29 ID:LtdBIlOX.net]
>>796
>右も左も

右とか左の意味がわからない
「A in B」のAを左、Bを右と呼んでる?

849 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 21:06:36.63 ID:ITSL0wmI.net]
全角文字列に対してIF処理を入れたいのですが、何で判別すれば良いですか?

検索対象の文字コードはutf8で、
漢字、ひらがな、カタカナ、全角英数を含む可変長の文字列が対象です。

850 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 21:41:38.87 ID:LtdBIlOX.net]
if "バカ" in "バカボン":
___print(True)

True



851 名前:デフォルトの名無しさん mailto:sage [2019/12/20(金) 23:48:14.57 ID:c7XoinxY.net]
Pythonは才能が必要

852 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:02:01.64 ID:k+w4ikT0.net]
>>808
別スレでpythonやめてkotlinやるって言ってた人か?きっとすぐに同じことを言い出すぞ。
入門レベルで必要なのは才能なんかじゃなく、ごく普通レベルの根気と理解力だけだぞ。才能がどうこう言うような段階まで到達してもいないだろう。

853 名前:デフォルトの名無しさん [2019/12/21(土) 00:11:47.62 ID:LfWR8zZ0.net]
プログラミングってそんな大層なことなのか…?

854 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:25:48.14 ID:RZ7OoAF7.net]
>>809
他の言語はともかくPythonは持って生まれた才能が無い人には無理だろ
10年かかってもできないはず
人生を棒に振るぐらいなら簡単な言語を一生懸命やったほうがお得

855 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:27:14.39 ID:kL8tLCEf.net]
Pythonは人を選ぶからなぁ
IQは最低でも120ぐらいはないと難しいかと

856 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:28:58.20 ID:QVJGN34P.net]
>>810
ダニング=クルーガー効果だなw

857 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:36:18.17 ID:GTCnNgdl.net]
Python習得は大学の受験勉強より時間がかかるのは確か

858 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:38:37.92 ID:kL8tLCEf.net]
まぁ、数学(とくに関数

859 名前:ニ微分積分)を完全にマスターして更にそれらを応用させる能力が必要だからな
まず凡人には努力だけでは習得不可能な言語
[]
[ここ壊れてます]

860 名前:デフォルトの名無しさん [2019/12/21(土) 00:39:35.09 ID:LfWR8zZ0.net]
関数を完全にマスターってなに?笑
こわい



861 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:40:21.73 ID:sX1zkF8/.net]
これを小学校のカリキュラムに入れようってんだからなwww
まさに落ちこぼれ量産機www
本当は他のプログラミングができそうな子供達まで絶望させる

862 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:41:11.60 ID:kL8tLCEf.net]
>>816
AIの開発に必須

863 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:42:17.07 ID:AjLe2FOg.net]
プログラミングを知らない初心者に勧めてはいけない超難解言語

864 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:43:21.62 ID:kL8tLCEf.net]
まぁ、すすめるすすめないは自由だがすすめられたほうは挫折するだろうな

865 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:46:24.32 ID:qQwAhvsi.net]
ふつうプログラミングを覚えるということはルールを覚えるという事なんだがPythonは...
(^_^;)

866 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:48:48 ID:k+w4ikT0.net]
>>815
数学は単にpythonを使う応用分野の一つというだけで、言語としてのpythonの習得とは独立した話だろw
日本語を習得するというときに、数学や物理の論文を読み書きする能力まで求める奴はいないだろう。

867 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:50:58 ID:QVJGN34P.net]
ダニング=クルーガー直後の「完全にマスター」だぞ。釣りに決まってんだろw

868 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:51:51 ID:kL8tLCEf.net]
>>822
仕事で使えなきゃ意味ないだろ

869 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 00:57:35 ID:4SIKQrOR.net]
Pythonは9割が脱落する言語と言われてるのもうなずける
もし仮に本人には才能があってもPythonをおぼえようとした時に最初に出会う教材や人によって終わってしまうことも多いと思う
俺はPythonとかプログラミングと全く関係ない数学の応用の本を一緒に読んでた
でも結局脱落した

870 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 01:02:39 ID:k+w4ikT0.net]
初めから言語の習得の話をしていて別に仕事で使う話はしていないぞ。
仕事で使うにしたって、pythonは汎用的なプログラミング言語であって別に用途が人工知能に限定されるわけでなく、ちょっとした統計処理や自動化程度であっても役割として十分だろう。



871 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 01:08:50 ID:kL8tLCEf.net]
初心者の方にはJavaScriptがおすすめ

872 名前:デフォルトの名無しさん [2019/12/21(土) 02:39:08 ID:0LiXcgPL.net]
二ヵ月前に初めてプログラミングの勉強始めて
友人に勧められたからPythonから触ってTwitter API使ったwin用guiアプリ作ったけど
AIとか作るんじゃないならかなり楽やと思うけどなぁ
転職して今週から働きだしてJava触ってるけど
個人的にはJavaのが難しいと思うわ(主にオブジェクト指向とかが)
まあ、両方楽しいし作ったアプリはオブジェクト指向使わずに書いたからコード自体は今見ると可読性悪いのがよく分かったw

873 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 07:22:16.03 ID:V5r7QLnH.net]
自分が落ちこぼれと認めるより、言語が悪いことにしたいよな
私を嫌う連中は私が嫌いなのではなく私の属性が嫌いなの!って騒いでるTwitterのメスガイジと似てるわ

874 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 08:03:18 ID:/C2Zxfa9.net]
>>825
pythonに限らずC言語の昔から同じようなことが言われていた

875 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 09:24:29.16 ID:Bl5cSZK5.net]
C言語はポインタが鬼門。まずポインタという名称が良くなかった。アドレス変数という名称のほうがしっくりくる。

876 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 09:43:01 ID:2jb+e7Ut.net]
アドレスと混同されないようにあえて別の名前を使ったんだろ。

877 名前:デフォルトの名無しさん [2019/12/21(土) 09:44:35.47 ID:LfWR8zZ0.net]
アドレスじゃん

878 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 10:20:00.37 ID:AgLsTGZF.net]
Pythonは俺も挫折した
無理

879 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 15:20:00.57 ID:/C2Zxfa9.net]
pythonもidによって謎の数字が出てくる
アレ何なの
おみくじ?

880 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 15:29:03.30 ID:3CC1js1d.net]
7が並んだら奇跡かおきるってよ



881 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 17:24:57.69 ID:/91O1xjY.net]
VSCODE使ってみて初めてVisual Studioのありがたさがわかった。

882 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 17:26:16.34 ID:/91O1xjY.net]
;をうつとちゃんとした記法に成型してくれるって楽だわ。
C#での話だけど。

誰かVSCODEでも同じ機能をつけてくれないものか・・・。

883 名前:デフォルトの名無しさん [2019/12/21(土) 17:50:40.98 ID:5ArYAWFR.net]
>>838
作るんだよ。お前が。拡張機能を。
あくしろや俺も使ってやるんだからよ。

884 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 18:09:44.05 ID:XVfPANjg.net]
>>808
rubyならキチガイでもできるよ!

885 名前:デフォルトの名無しさん mailto:sage [2019/12/21(土) 18:23:47.67 ID:/91O1xjY.net]
>>839
ああ、そういうことか!
無理です・・・。orz

886 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 05:03:39 ID:CyWocscD.net]
>>840
Rubyか...

887 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 17:18:31.92 ID:Ens8Pa2w.net]
心理系の研究で2Dカードゲームのようなアプリを作ろうとしています。
当初Unityでやるつもりだったんだけど、機械学習の勉強のためPython学んだら、
Pygameでやるのもありかと思い始めた。

トランプのような2DカードゲームつくるならPythonとUnityどちらがおすすめですか?

888 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 17:36:04.52 ID:buP4BnNs.net]
>>843
JavaScript

889 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 17:37:49.15 ID:NMRyBzep.net]
真理やめろ

890 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 17:41:49.90 ID:Ens8Pa2w.net]
>>844
短期間でC#、Unity、R、Pythonと詰め込んで混乱している。
これ以上言語増やしたくない。



891 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 17:43:27.57 ID:c4dmvFhs.net]
どっちでもいっしょだから自分が得意だと思える方でやればいい。

892 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 18:04:31.25 ID:Ens8Pa2w.net]
>>847
ありがとうございます。
現時点ではUnityのほうが得意なのですが、
アプリからデータ取得して統計処理、機械学習まですることを考えると、
Pythonで統一したほうが後々楽なのかな。。。

893 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 18:08:30.47 ID:Ens8Pa2w.net]
あと、スレタイどおりくだらない質問で申し訳ないのですが、
C#アプリで取得したデータをpythonで統計分析しようとしているのですが、
CSVファイルにデータを保存するとき

100件のデータを全て一つのファイルに保存。
100個のファイルを作製して1件1ファイルに保存。

のどちらがいいのでしょう?
1件のデータには実験環境等ながいDescriptionデータがついてくるので、
1ファイルだとデータの切り出しがめんどくさいかなと思っているのですが。

894 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 18:16:24.65 ID:buP4BnNs.net]
>>846
そのゲームを誰にどうやってやってもらうかとか
結果をどう収集すべきかとか
そういうの考えてる?

895 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 18:51:55.19 ID:Ens8Pa2w.net]
>>850
そのへんは考えてるのですが、質問の仕方が良くなかったですね。

***実験条件データ***
年齢:
性別:
特性A:
特性B:


***配列データ***
時間 回数 色 〜
0.11 3 R 〜
0.20 1 B 〜

みたいなデータが100件ぐらい1ファイルに記述したとして、
をpandasで配列データだけ切り出してくるってかんたんにできるものでしょうか?

896 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 19:03:33.08 ID:4GpMlcpo.net]
>>849
特別な要件がない限り
> 100件のデータを全て一つのファイルに保存。
しかないと思うが

897 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 19:15:06.28 ID:OE5DN1cz.net]
pygameって3?が頓挫して別のに開発リソースまわってるんじゃなかったっけ?

あとcsvはデータ形式によるから具

898 名前:フ的なカタチがわからないとなんとも… []
[ここ壊れてます]

899 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 19:59:30.18 ID:u+b66RrE.net]
>>851
まず、データだけを抽出する、コンバーターを作る!

そのためには、まず、データだけを抽出しやすいように、
よく考えて作っておかなければならない

JSON とか。
他には、XML, YAML もある

データとデータ以外の切れ目が、分かるようになってれば良いけど

まあ、ファイルを分割している方が簡単で、
後でファイルが増えた時に、融通が利く

900 名前:デフォルトの名無しさん [2019/12/22(日) 20:28:35.39 ID:MAO/zmGQ.net]
>>848
ゲームはUnity、データ処理はPythonってのがいいよ
どうせゲームの記録は一旦保存して、後で処理するのだから、
ゲームを作るのに得意な言語、データの処理に得意な言語で使い分けたほうが良い。
一つにまとめる必要があるのは、アプリケーションパッケージとして売ったり誰かに納品したりする必要があるときだけだと思う。



901 名前:デフォルトの名無しさん [2019/12/22(日) 20:33:44.52 ID:MAO/zmGQ.net]
>>849 >>851
見逃したけど、
100条件なら100ファイルの方が取り扱いが簡単だよ。1ファイルにするメリットはないと思う。
1000を超えてくるとOSの方での取り扱いが面倒になってきたりするけど。

1ファイルにする場合、条件データと配列データを切り出すのはPandasでも出来るけど、素のPythonでまず切り分けておいて、
切り出したCSV部分をPandasに渡すのが普通かな。

902 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 22:03:29.64 ID:Ens8Pa2w.net]
>>853
情報ありがとう。
開発終了してるし、後継のライブラリもなんか評判良くないね。

ゲーム部分は素直にUnityで開発します。

903 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 22:07:05.30 ID:Ens8Pa2w.net]
みなさんいろいろありがとうございます。
ファイル分割して、データ統合するコンバータを作るのが良さそうですね。
少し勉強が必要そうだけど、方向が見えてきました。
ありがとう。

904 名前:デフォルトの名無しさん mailto:sage [2019/12/22(日) 22:08:24.35 ID:Ens8Pa2w.net]
>>855
シンプルにUnityからテキストファイルに書き出して、
パイソンでデータ処理するようにします。

Unityからパイソンのファイルを実行するだけなら、自分でもすぐできそうだし。

905 名前:デフォルトの名無しさん mailto:sage [2019/12/23(月) 00:46:17 ID:i+2w2qhs.net]
本当にくだらないんだけど、
風俗板とこのスレに常駐すると
パイソンがパイパンに見えてくるな。

906 名前:デフォルトの名無しさん [2019/12/23(月) 02:12:53 ID:Z89NhxHR.net]
test_str = 'aaaisaisaihuursstestiisaojyewysa'
というような文字列があったときに
文字列の中に'test'が含まれるかどうかの判定ってどうすればよいですか?
先頭でも末尾でも中間でもどこに含まれていても、print('含まれてるよ')と表示したいです。

907 名前:デフォルトの名無しさん mailto:sage [2019/12/23(月) 07:39:10.34 ID:i17ydcb/.net]
>>861
'test' in test_str
で判定
いっちゃん簡単なやつ

908 名前:デフォルトの名無しさん [2019/12/23(月) 08:50:45.33 ID:G1ER7e+F.net]
>>861
test_str = 'aaaisaisaihuursstestiisaojyewysa'
if 'test' in test_str :
  print('含まれてるよ')
else:
  print('無いよ')

909 名前:デフォルトの名無しさん mailto:sage [2019/12/23(月) 09:22:23.85 ID:cv9cp49U.net]
正規表現

910 名前:デフォルトの名無しさん [2019/12/23(月) 15:25:25.14 ID:sEnpgkKc.net]
>>835-836
うbyはidが偶数か奇数かでも動作が違う



911 名前:デフォルトの名無しさん [2019/12/23(月) 17:05:29.34 ID:Z89NhxHR.net]
>>862>>863
ありがとうございます!

912 名前:デフォルトの名無しさん mailto:sage [2019/12/23(月) 20:12:29.62 ID:Pi1/7Ubv.net]
アップルが従業員に遺伝子検査サービス無料提供。「治療」から「予防」へ

https://japanese.engadget.com/2019/12/14/apple-clinic/

913 名前:デフォルトの名無しさん mailto:sage [2019/12/23(月) 20:16:11.23 ID:Pi1/7Ubv.net]
943
半島人は長い歴史で虐待され続けたため、人間不信に陥っており、
又医学的には拷問を受けたため、遺伝的に脳の前頭葉

914 名前:(脳の30%の部分)が傷ついて萎縮していると判明しています
だから豊かな感情に欠け、キレやすく、倫理的なことにあきらめ感が強く、無感動です
今後前頭葉を拡張復元していくことがよい結果を生むことになると思います
アメリカを中心に、高気圧酸素治療法というのがあります
カプセルに入って寝て、気圧を高めて高濃度の酸素を、人の血中に送りこむ療法です
損傷した脳の復元にかなり効果があることが、わかっていています


284
そこで提案だ
先ほど述べた、Paul Harch 医師達がやっているような、高気圧酸素治療(HBOT)の技術を生かしてみたら、いかがかな
つまり、代々前頭葉萎縮で悩んでいる半島人達の脳に、この治療法を応用するのだ
酸素を効率的に沢山供給することで、エデンちゃんの萎縮していた脳がほぼ通常に広がって戻ったのだから、
うまく考えて根よくやれば、半島人達の遺伝的に萎縮した前頭葉をふくらませられるかもしれない
そうしたら、彼らに失われていた人間的な感情も、わきやすく、育みやすくなるというものだ
半島人も他の民族と同じように気持ちが安定し、前向きになり、責任を持って自分の国作りをするようになるだろう
他に良い方法があればそれでもよいのだがね、1つの案として提示しておく
全世界の皆さんは、真剣に考えてやってほしい
特に、脳科学の研究者達はね
[]
[ここ壊れてます]

915 名前:デフォルトの名無しさん mailto:sage [2019/12/23(月) 20:16:37.34 ID:Pi1/7Ubv.net]
276
その方法というのは、

『高気圧酸素治療(HBOT)』と言う

縦長のカプセルの中に患者が仰向けに寝ていて、カプセル内に高濃度の酸素を沢山満たし、吸い込ませ血管に送り込む
又、その際に高めた気圧で酸素を濃縮して、血管に溶け込みやすくする、という仕組みだ
これにより女児は損傷して萎縮していた脳が、酸素の補給により急激に回復し始め、まもなく感情を表し言葉を発したり、母を認識し以前の記憶がよみがえった
又自分で食べられるようになり、運動能力も徐々につき、驚異的な速さで機能が回復して行ったのだ
五才になった今では、多少歩く時に平衡感覚がまだ足りなくて、左右にぐらつくのを矯正中だが、ほぼ普通に元気に歩き、遊べるようになった


278
私が言いたいのは、これを応用できるのではないかということだ

この女の子、エデン・カールソンちゃんを治療したのは、ルイジアナ州立大学医学部のPaul Harch医師だ
彼は、エデンちゃんに主に高気圧酸素治療を行い、1回45分、週5日、計40回で終了した
治療を始めて10回目で、ほぼ正常に見えるほどになったという
その後も40回(8週間か)まで治療を続け、最終的にMRI検査では、エデンちゃんの萎縮してすき間のあった脳が、ほぼ完全に回復していた
脳の回復が速い幼児だからということも幸いしたが、
最近では急性脳損傷のある成人でも効果があることがわかってきた
成人にHBOTを1回実施しただけでも、脳の組織回復に必要な複数の遺伝子の活性に変化が見られたという
(日本では、病院で脳梗塞の治療等に使われている)

916 名前:デフォルトの名無しさん mailto:sage [2019/12/23(月) 20:16:54.72 ID:Pi1/7Ubv.net]
280
朝鮮半島民というのは、医学的に研究された結果、
昔から先祖代々貴族等に虐待や拷問を受けてきた

917 名前:スめに、おびえて脳の前頭葉(脳の30%を占める)に沢山の傷が見られ、そこの部分が萎縮しているそうだ
前頭葉の前半部は、思考、自発性、感情、性格、理性等を司る

前頭葉が損なわれるとどうなるか
例えば、
忘れっぽい
思いつきで動き、不注意
自発性がなく、すぐ人を頼る
大変おしゃべりか、反対に抑うつ的
すぐ怒ったり笑ったり、感情を爆発させる
人を思いやるのが苦手
危険に鈍感になる
規則を守らない
1つのことにこだわり、同時に2つのことができない
過食や浪費

又、もしもその一部である眼窩前頭皮質が損傷すると、
過度に悪態をつく
性欲過多
社会的対話の欠如
共感能力の欠如
アルコール、薬物の摂取過多
等が見られるという

どれも困ったことだ
必ず全てが現れるわけではないし、個人差もあるだろうが

943
半島人は長い歴史で虐待され続けたため、人間不信に陥っており、
又医学的には拷問を受けたため、遺伝的に脳の前頭葉(脳の30%の部分)が傷ついて萎縮していると判明しています
だから豊かな感情に欠け、キレやすく、倫理的なことにあきらめ感が強く、無感動です
今後前頭葉を拡張復元していくことがよい結果を生むことになると思います
アメリカを中心に、高気圧酸素治療法というのがあります
カプセルに入って寝て、気圧を高めて高濃度の酸素を、人の血中に送りこむ療法です
損傷した脳の復元にかなり効果があることが、わかっていています
[]
[ここ壊れてます]

918 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 11:21:49.38 ID:DWLgg12E.net]
pythonにテキストファイルでデータを渡して統計処理しようとして、
初めて整然表現というものを学びました。

919 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 11:25:36.07 ID:DWLgg12E.net]
実験情報

氏名:
性別:
年齢:
実験日時:
実験場所:
実験タイプ:

実験データ
時刻 X Y 色
002 20 14 b


というデータで今まで実験情報と実験データを一つのファイルに記述していたのですが、
SatouTarou20191224DESCR.txt
SatouTarou20191224DATA.csv
と2つのファイルに分けて記述するべきなのでしょうか?

920 名前:デフォルトの名無しさん [2019/12/24(火) 11:34:40.49 ID:oSAz7Duc.net]
Philip N. Kleinという人の書いたベクトルを表すクラスに、以下の記述があります。

__add__ = add

左辺はインターネットで調べた結果、特殊メソッドであることが分かりました。

右辺の「add」は一体なんなんでしょうか?

そして、特殊メソッドである「__add__」を定義せずに、「__add__ = add」と代入していますが、これは文法的にどういうことなのでしょうか?



921 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 11:40:09.88 ID:DWLgg12E.net]
氏名 性別 年齢 ・・・ 時刻  X  Y 色
Sato Tarou 21     002 20 14 B
                004 22 10 R
               010  1  9  Y

みたいに一つのファイルのほうがいいのかな。
実験条件のデータは項目ひとつに1データでみづらいけど、
これがコンピュータにとって扱いやすい整然データということでしょうか?

922 名前:デフォルトの名無しさん [2019/12/24(火) 12:06:36.04 ID:oSAz7Duc.net]
>>873

def add(u, v):

class Vec:
__add__ = add

となっています。

これはクラス Vec の外で定義された「add」と同じ関数として「__add__」を定義するという意味ですか?

923 名前:デフォルトの名無しさん [2019/12/24(火) 12:16:14.86 ID:Ww2BU2Ri.net]
実行ファイルのあるディレクトリのパスを取得するのに
os.path.dirname(sys.argv[0])
という記述があるのですが
sys.argv[0]というのは何故必要なんでしょうか?

また、その1つ上のディレクトリのパスを取得するにはどうしたら良いですか?

924 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 12:35:53.65 ID:3XzgnZW7.net]
>>873-875
add と言う名前から想像すると、加算演算子「+」の再定義(オーバーライド・上書き)かも

例えば、Ruby で、カスタムクラスA を定義して、そのインスタンス同士を足す際、

class A
end

a_1 = A.new
a_2 = A.new

p a_1 + a_2 #=> エラー!

クラスA には、+演算子(メソッド)は、存在しないというエラーになる。
そこで、クラスA に、+演算子を再定義すると、好きな処理ができる。
a_1 + a_2 の場合、レシーバー(self)は、a_1で、other は、a_2 を表す

def +(other)
p self, other
end

925 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 12:41:33.48 ID:8/3Ibfsl.net]
>>876
sys.argv[0]が実行ファイルそのもの。
os.path.dirname(f)はfのディレクトリ。
os.path.dirname(os.path.dirname(f))でさらに一つ上の階層。
sys.argv[0]の代わりにos.path.abspath(__file__)も使える。

python 3.4以降?なら下の様な方法でも。
from pathlib import Path
Path(os.path.abspath(__file__)).parent.parent

926 名前:デフォルトの名無しさん [2019/12/24(火) 13:02:43.62 ID:Ww2BU2Ri.net]
>>878
ありがとうございます!

927 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 13:07:42.57 ID:3XzgnZW7.net]
>>876
Ruby では、シェルで「ruby オプション script.rb 引数」と入力するけど、
このスクリプトファイル名は、$0 という変数で参照できる

引数部分が、ARGV の[ 0 ]から順番に参照できる。
ARGV[ 0 ]には、スクリプトファイル名が入ってこない

そこが、Python とは異なる!

親のディレクトリは、parent で、祖父なら、parent.parent で。
たぶん、python にも、ファイルパスを扱うモジュールがあるはず

require "pathname"

path = Pathname("foo/bar") # 相対パス
path.parent # => #<Pathname:foo>
path.parent.parent # => #<Pathname:.>

928 名前:デフォルトの名無しさん [2019/12/24(火) 15:24:57.39 ID:L1tHoweE.net]
ふーん帰っていいよ

929 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 15:52:08.62 ID:9irKuexe.net]
>>873
class Vec:
__add__ = add

class Vec:
____pass
Vec.__add__ = add
と同じ

930 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 15:57:23.19 ID:9irKuexe.net]
Vec.__add__ = add がどういうことかわからなければ
↓これを参考に
https://ideone.com/Z5nLWW



931 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 16:04:24.92 ID:4c603ABM.net]
Rubyバカはスレタイを100回復唱してから書き込めよ

932 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 17:46:49.50 ID:9irKuexe.net]
>>872
RDBであれば別のテーブルで管理すべき内容

ただ一連の質問を見る限り他人がメンテする必要性が低そうなので1ファイルの場合と2ファイルにした場合のメリット・デメリットを考えてみて好きに決めればいいと思う

ファイルの分割に関係なく実験情報と実験データの1つの組をユニークに識別できるIDを定義しておくのが無難

933 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 17:57:21.54 ID:9irKuexe.net]
>>874
違う
基本はRDBで言う第三正規形

934 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 18:15:54.74 ID:WqUdRB3h.net]
人名単位のcsvに実験データを追記していく
必要なら名簿を作成してI/Oを平易にする

これではいかんのけ?

935 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 18:31:25.90 ID:mGB04tXH.net]
日本語ファイル名は災いの元なので、学籍番号やローマ字表記などに変えるべき。

936 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 19:46:37.28 ID:CDAmWs4U.net]
日本語かどうかよりはファイルシステムでファイル名としては取り扱えない文字かどうかを気にした方が良いような
まあ、結果としてアルファベットと数字とハイフン、アンダースコアにしておくのが無難だという結論になるけれど

937 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 19:59:36.01 ID:l0GCh4fC.net]
>>886
主キーで管理して実験情報テーブルと実験データテーブルを別個に作るということですか。なるほど。

938 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 20:01:19.05 ID:l0GCh4fC.net]
ってアクセスでならできるけど、パイソンでRDB的なことってできるんでしたっけ?

939 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 20:02:50.70 ID:l0GCh4fC.net]
>>889
ファイル名は氏名と生年月日と記録日にしようかと思っています。
検索しやすいので

940 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 20:04:11.90 ID:l0GCh4fC.net]
>>887
同一人物でも異なる実験条件で複数回検査するので。



941 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 20:12:16.08 ID:l0GCh4fC.net]
あああ、確かに100件以上の実験データを扱うことを考えるとDBにデータ移行できるよ

942 名前:うにした方が良いですね。盲点だった。 []
[ここ壊れてます]

943 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 20:27:01.45 ID:s2lutymo.net]
>>407にもある通り数億とか数千万のオーダーを考えるのは普通
ファイルでも数万は簡単に行く
盲点でも何でもない

944 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 21:24:52.74 ID:r8fNCPuj.net]
参照系なら必ずしも正規形にこだわる必要もないよ。
統計処理はjoinされた形でやるわけだろうし。

945 名前:デフォルトの名無しさん mailto:sage [2019/12/24(火) 21:43:30.63 ID:9irKuexe.net]
>>892
その3つで一意性を完全に保証できる前提ならいいんだけど
同じ人が複数タイプの実験を1日で実施したりすれば対応できなくなるよ

一意性を保証できない状況が発生しうるなら
識別IDに人間の見やすさのための情報を付加する形がいいかも

0011228_SatoTaro_20191224.csv
0011235_SatoTaro_20191224.csv

946 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 08:33:26.59 ID:iqbdwPlo.net]
>>897
スタンドアロンで別施設でデータ取得も考えると
年月日_実験開始時刻_氏名_生年月日
ですかね。
ファイル名は長いですが、
人間が判別するときもこれらのデータがあるとわかりやすいし。


20191224_120122_SatouTarou_19820912

ファイル名長いな・・・。

947 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 09:08:39.56 ID:iqbdwPlo.net]
正規形勉強してきました。
アクセス使ってたけど主キーとかユニークナンバーとしか理解してなかった。。。

948 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 09:12:06.97 ID:iqbdwPlo.net]
>>874
は第一正規形ってことですね。
python上で第三正規形のデータ取り扱うってどうすればいいんだろう???

pythonやRで統計処理をするときは、
第一正規形であれば問題なさそうな気がするんですが、
間違っていますでしょうか?

949 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 11:07:21.89 ID:2sisjRdM.net]
ちょっと論文読んできました。整然データ=第三正規形ではないんだね。

1. 実験情報と実験データでcsvファイルを分ける
2. 1のファイルから要約データを計算し、要約データファイルに実験情報と要約データを順次上書き
3. 要約データを実験条件で分割して有意差検定する

が良いのかなぁ。

950 名前:デフォルトの名無しさん [2019/12/25(水) 11:33:04.71 ID:MC7jTCCf.net]
>>974
間違ってない。
第三正規形は、更新時の書き込み箇所を一本化したり、保守性を上げる(スキーマ改変の範囲を限定する)というようなことが目的だから。
参照オンリーの場合は、むしろパフォーマンス面でマイナスになったりする。
けれど、非正規化するかどうかは別問題。
マテビューなどの解決策もあるからね。



951 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 12:01:08.00 ID:ZI663GBY.net]
Ruby on Rails では、
多重度、1 : N は、has_mamy, belongs_to とか

参照、references
外部キー、foreign_key

952 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 12:06:28.68 ID:DT9LgkyT.net]
>>903
https://spectrum.ieee.org/computing/software/the-top-programming-languages-2019
もはや存在すら忘れられたマイナー言語

953 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 12:38:43.88 ID:wOKia0YU.net]
>>891
sqlite3とか入れてPythonからそれを叩くのが定番

954 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 12:40:43.60 ID:wOKia0YU.net]
>>892
生年月日みたいな個人情報入れるとか大丈夫?
てか企業とか学校なら社員番号とか学籍番号とかあるんじゃないの?

955 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 16:27:06.73 ID:l8QWpMeL.net]
python3.8でコードをexe化する方法ありますか?

956 名前:デフォルトの名無しさん [2019/12/25(水) 17:05:31.75 ID:2ymVLaRc.net]
exe + dll で良いならあるよ

957 名前:デフォルトの名無しさん [2019/12/25(水) 17:18:42.78 ID:urIrQtmF.net]
Python習いたての初心者です。

Pandasでデータフレーム作って
Scikitlearnで標準化をする際に
一旦数字のみ抽出して、標準化、
またデータフレーム化という手順で習ったのですが
回りくどい気がしてなりません。

Pandasのまま標準化するには
計算コード直入力するしかないものですか?

理解不足があったらすみません。

958 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 17:41:48.67 ID:owbFz3od.net]
>>891
実験データをSQLiteとかで管理するのはお勧めできない
間違ってデータ飛ばしたりとかがSQLに慣れてないころには容易に起こる
データの結合とかはpandasでSQLで出来ることはほぼ同レベルの手間でCSVファイルに対してできるから、とにかくCSVファイルに保存していく形にするのが良いと思う
実務ではないのだから、最悪ちょっと機械的な手作業を頑張ったらなんとかなりそうという、見通しが立っている状態を維持し続けるべきだと思う
SQLとかRDBMSにめちゃくちゃ慣れていて、pandasなんか覚えたくないよというのならpandasじゃなくて良いけど

あと、データをあれこれするときはjupyter notebookを使うと履歴が残せるし、うまくいかないところだけ試行錯誤でコードの修正がしやすいので本当にオススメ

959 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 18:02:29.31 ID:iqbdwPlo.net]
>>902
ありがとう。
>>901
のパターンでやってみる。
データ構造どうするかって、きちんとしておかないと後で地獄見るってよく勉強になりました。

960 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 18:13:59.86 ID:iqbdwPlo.net]
>>910
pandasでデータ成型(スクレイピングって言うのかな?)
も学ばなきゃ。

新しく学ばなきゃいけないことたくさんだけど、
プログラミングは試行錯誤できることと、
お金があまりかからないのがいいことですね。
がんばります。



961 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 18:17:00.04 ID:JNywgUPx.net]
北海道のグラサンスーパーハゲザーはここにはこないのー?

962 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 21:34:44.21 ID:qDbmzL4T.net]
>>900
>pythonやRで統計処理をするときは、第一正規形であれば問題なさそうな気がするんですが、間違っていますでしょうか?
あってる間違ってるの話ではなく整然データにしておけばデータをこねくり回すときに楽になるよって話
現状困ってないなら無理して整然化する必要はないと思う

>>901
論文にも明記されてるけど整然データ(=tidy data)は第三正規形と基本同じだよ
原典か日本語訳を読むといいと思う
https://vita.had.co.nz/papers/tidy-data.pdf

>>902
一般的に特定の非正規形は特定の分析用途には使いやすくても
違う観点で分析しようとすると正規形からデータ変形するよりも多くの手間がかかる
参照オンリーの場合でもデータの利用方法が定型化していない場合は正規形から考えるメリットは大きい

特にRDBで分析用途のDBを用意する場合は参照オンリーでも正規形から考えとかないと手間が異常に増える

963 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 22:03:00.14 ID:hPmVmQm/.net]
質問でつ
このコードの4行目で print(combsを表示) しちゃうと
最後の return ta_combs の中身が空になるんだけど 何で?

import itertools
def twoSum(nums, target):
・・・combs = itertools.combinations(nums, 2)
・・・#print(list(combs))
・・・ta_combs = set()
・・・for comb in combs:
・・・・・if sum(comb) == target:
・・・・・・・ta_combs.add(comb)
・・・return ta_combs

print(twoSum((10, 20, 10, 40, 50, 60, 70), 50 ))

964 名前:デフォルトの名無しさん [2019/12/25(水) 22:05:12.83 ID:ycC2pkbE.net]
bigtable使ってるから正規化なんてないわ。
SQLもシンプルだし。
速度は言わずもがな。

965 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 22: ]
[ここ壊れてます]

966 名前:10:39.36 ID:rtgRmFxx.net mailto: 複数の表をjoinするのとそれらの直積からselect/uniqueをとるのは等価だから
非正規形だと手間がかかるってのは当たらないと思う。
パフォーマンスや容量は別として、必要な変数を選んでuniqueをとるだけという
操作に統一できるから、いちいちどう結合するか考えるより手間が省けるくらい。
[]
[ここ壊れてます]

967 名前:デフォルトの名無しさん [2019/12/25(水) 22:12:36.33 ID:7FLhFvMk.net]
以下のようなテスト用の記述があるとします。
vecというモジュールからクラスVecをインポートしています。
vecモジュール内でも同様のテスト用の記述があるとします。
↓のコードを実行した場合、vec内のテストも行ってしまうようです。
vec内のテストは完了しているので、テストされないようにすることはできるのでしょうか?


from vec import Vec



"""
Returns the value of entry k in M, where k is a 2-tuple
>>> M = Mat(({1,3,5}, {'a'}), {(1,'a'):4, (5,'a'): 2})
>>> M[1,'a']
4
>>> M[3,'a']
0
"""


if __name__ == '__main__':
import doctest
doctest.testmod()

968 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 22:34:33.78 ID:qDbmzL4T.net]
>>915
list(combs)でイテレータを消費してるから
for comb in combs:のところではもう次のアイテムはない

969 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 22:37:11.85 ID:owbFz3od.net]
>>917
一理ある
DBを正規形にしておくのは必ず非正規化されたデータが正規形の直積から取り出せて、不整合なデータはありませんという保証を担保する側面があるってことだね

970 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 23:00:58.32 ID:qDbmzL4T.net]
>>917
それは一番単純なパターンで
キレイに非正規化されてるケースだけにしか当てはまらないよ



971 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 23:08:03.95 ID:hPmVmQm/.net]
>>919
アドバイス ありがとうございます
イテレータを理解してなかった

import copy 追加して
a = copy.copy(combs) を print の前に入れたら上手くいきました

972 名前:デフォルトの名無しさん mailto:sage [2019/12/25(水) 23:17:51.74 ID:rtgRmFxx.net]
キレイじゃない非正規化ってどういうのを想定してるのかな。
データとして等価じゃないならそりゃまずいが。

973 名前:デフォルトの名無しさん mailto:sage [2019/12/26(木) 10:44:02.91 ID:g3TV29VW.net]
そもそも第一正規形以外の正規形って更新時異常を避けるために考えられたものであって
検索のことは考慮外なわけで。

974 名前:デフォルトの名無しさん mailto:sage [2019/12/26(木) 11:09:55.46 ID:Wx+k6Oqq.net]
>>924
そりゃjoinのパフォーマンスなんかDBMSの実装の問題なんだから考慮外で当たり前だろう
レイヤの異なる関心事をごっちゃにしている典型例だな

975 名前:デフォルトの名無しさん mailto:sage [2019/12/26(木) 14:05:50.96 ID:g3TV29VW.net]
パフォーマンスの話なんてどこから出てきたのやら。

>レイヤの異なる関心事をごっちゃにしている典型例だな

そうだね。

976 名前:907 mailto:sage [2019/12/26(木) 14:45:46.65 ID:FL6xOFYS.net]
すなおにpyinstallerのみ3.7で動かすことにしようと思います

オフライン環境にインストールしたかったので、先にオンライン環境で
pip download -d <保存先> --no-binary :all: pyinstaller
で関係ファイルをすべてDLし、オフライン環境にてpip installを試みました

ところがそれぞれのファイルをインストールし、
最後にPyInstaller-3.5.tar.gzをpip installするところでエラーになってしまいます

エラー内容を見るに、PyInstaller-3.5.tar.gzのpip installの中に
setuptoolsのオンラインでのpip installが含まれているように見えます
もちろんsetuptoolsは先にpip installしているにも関わらずです
何か方法ありますでしょうか

エラーメッセージ↓
ERROR: Command errored out with exit status 1:


977 名前:command: <Python.exeのパス> <pipのパス> install --ignore-installed --no-user --prefix <overlayのパス> --no-warn-script-location --no-bina
ry :none: --only-binary :none: -i https://pypi.org/simple -- 'setuptools>=40.8.0
' wheel
cwd: None
Complete output (8 lines):
Collecting setuptools>=40.8.0
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, st
atus=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3
.connection.VerifiedHTTPSConnection object at 0x02F322D0>: Failed to establish a
new connection: [Errno 11004] getaddrinfo failed')': /simple/setuptools/
(以下繰り返し)
[]
[ここ壊れてます]

978 名前:デフォルトの名無しさん mailto:sage [2019/12/26(木) 15:57:44.27 ID:vMTIIs6I.net]
自分もひと月ほど前にオフラインでのpip installをやろうとして
行き詰まった
pipは何かとPyPIに接続しにいくからね

結局linuxサーバでプロキシーサーバーとファイヤーウォールを建てて
オンラインでできるようにしてからインストールしたよ

979 名前:デフォルトの名無しさん mailto:sage [2019/12/26(木) 19:24:43.15 ID:FaxhM6Zn.net]
北海道のグラサンスーパーハゲザーはここにはこないのー?

980 名前:907 mailto:sage [2019/12/27(金) 18:52:51.35 ID:Qsz5HXwu.net]
.tar.gz展開して中のsetup.py直接起動させたらいけました
自己解決ですみません



981 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 02:08:30.85 ID:RMes1jy6.net]
こういうデータがあります 外側のカッコはタプルでも可 要素は重複してないので集合でも可
data = [00, 01, 10, 11, 12, 22]
要素から 1桁目が0のみ抽出・・00,01 2桁目が1のみ抽出・・01,11 という処理をしたいです
今はforで回し正規表現で判断してるのですが、簡単に記述出来るモジュールのような物はあるんでしょうか?

982 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 02:22:55.46 ID:0wxaCoE9.net]
>>931
条件が簡単ならリスト内包表記で抽出するやり方があるけど
forで回して正規表現で検索する方が何かと汎用性があると思うよ

左1桁めが0のデータを抜き出す場合
[ x for x in data if x[0] == '0' ]

左2桁めが1のデータを抜き出す場合
[ x for x in data if x[1] == '1' ]

983 名前:デフォルトの名無しさん [2019/12/28(土) 02:24:08.22 ID:CljHkVQA.net]
rubyだと?

984 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 02:30:35.60 ID:r7V1DpIq.net]
>>931
十分簡単な記述だと思うけど、俺ならタダの数値計算にする。
切り捨てで1
10倍して10で割ったあまりが1

985 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 02:31:06.65 ID:r7V1DpIq.net]
切り捨て1じゃないなw

986 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 06:00:15.29 ID:iMlStgtR.net]
yokokara

987 名前:931 mailto:sage [2019/12/28(土) 08:39:10.00 ID:RMes1jy6.net]
要素は文字列でした 間違ってました
data = ["00", "01", "10", "11", "12", "22"]

>>932
"2"を抽出時も簡単ですね 全く思いつかなかったです 
3行の記述が1行に収まるので、こちらでいきたいと思います

>>934
10倍後10で割る方法もレスされて思い出しました

>>932  >>934 ありがとうございました

988 名前:デフォルトの名無しさん [2019/12/28(土) 10:40:09.14 ID:glKwkKz6.net]
>>931
ある言語では

p data.select{|x| x[0] == '0'}

989 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 11:22:22.26 ID:b3ohKRMf.net]
[ x for x in data if re.search(r'1$', x)]
[ x for x in data if re.search(r'1.$', x)]

とある言語では
data.filter{|x| x.match? /1$/}
data.filter{|x| x.match? /1.$/}

またとある言語では
data.filter(x=> /1$/.test(x))
data.filter(x=> /1.$/.test(x)) <

990 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 12:02:33.66 ID:vnZXJluZ.net]
Ruby では、select でフィルターする

data = %w(00 01 10 11 12 22)

p res_1 = data.select{ |x| x[ 0 ] == '0' }
p res_2 = data.select{ |x| x[ 1 ] == '1' }

出力
["00", "01"]
["01", "11"]



991 名前:デフォルトの名無しさん [2019/12/28(土) 13:03:02.30 ID:CljHkVQA.net]
♪───O(≧∇≦)Oキタ────♪

992 名前:デフォルトの名無しさん [2019/12/28(土) 15:28:51.07 ID:+sYlgNhA.net]
>>929
ハゲは北神雄太。

993 名前:931 mailto:sage [2019/12/28(土) 16:42:14.01 ID:RMes1jy6.net]
>>939
別の正規表現で書いてました (r'1$', x) (r'1.$', x) の方が簡単なので使わせて頂きます

参考にします >>938 >>940

994 名前:デフォルトの名無しさん [2019/12/28(土) 16:48:18.35 ID:9o1guVgp.net]
Macで、このプログラムをPyinstallerで実行ファイルにすると動きません。
MacってPythonと相性悪いんでしょうか?

import os
import sys
path_w = os.path.dirname(sys.argv[0])+'/testWrite.txt'
with open(path_w, mode='w') as f:
f.write('testWrite')

995 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 16:51:10.81 ID:EYxHjYjG.net]
>>944
Macには最初からPython2.7系が入っているので
3系を、ケンカしないようにうまいことインスコするのが基本。

でもってpyinstallerって
Windows用じゃなかったっけっか

996 名前:デフォルトの名無しさん [2019/12/28(土) 17:25:15.16 ID:9o1guVgp.net]
>>945
いいえ、Pyinstaller自体はWindows/Mac両方で動くように設計されているもののようで
Pyinstallerでアプリケーション化した後もGUIの作成やソケット通信などの部分は正常に動くのですが
ファイルの参照やファイルを作成のようなコマンドが内部に含まれていると何故か動かなくて困っています。

997 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 17:51:26.10 ID:EYxHjYjG.net]
>>946
pathの書き方がLinux系とWin系で異なるから とかもないなら

Macの「システム設定」てきな歯車アイコンの奥底にある
「出どころがあやしいアプリは動かないようにブロックする」デフォルト設定のせいじゃなかろか
(この機能の正式名称 ルートレス とかなんとかいったような)

998 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 18:34:55.94 ID:FoArgV87.net]
>>944
Macのターミナルから実行した場合は動くの?

999 名前:デフォルトの名無しさん [2019/12/28(土) 18:48:26.90 ID:9o1guVgp.net]
>>948
はい、ターミナル(正確にはAnaconda Prompt)から、素の状態のPythonを実行すると動きます。
しかし、Pyinstallerを使ってアプリ化することによってファイル作成コマンドが使えなくなります。
Windowsの方ではPyinstallerを使っても正常に動きます。

>>947さんの指摘が近そうな気がするので調べてみます。

1000 名前:デフォルトの名無しさん [2019/12/28(土) 18:53:49.75 ID:9o1guVgp.net]
あと、もう1つ情報を付け加えると、PyinstallerによってMacアプリ化すると
アプリが作成されるのと同時に、サブフォルダに「Unix実行ファイル」というのも作成されています。
何故かアプリでは動かないのに、サブフォルダ内の「Unix実行ファイル」の方をクリックするとファイル生成などのコマンドも正常に動いています。



1001 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 20:49:36.94 ID:q2Ylf9qj.net]
有明セントラルタワー

痰吐きジジィのチンポが18階の(どこの島かは言わないよ)20代の女の娘のオマンコに
入って行くウゥウウウーーー!
o.5ch.net/1lejw.png

1002 名前:デフォルトの名無しさん [2019/12/28(土) 22:27:10.71 ID:WD8h4qtV.net]
>>950
sys.argv[0]じゃなくて絶対パス(/Users/hogehoge/Desktop/testWrite.txt)で出来るのか試してみて、
出来るなら、print(sys.argv[0])で何が違うのか確認するべき

1003 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 22:38:08.38 ID:b3ohKRMf.net]
Using sys.executable and sys.argv[0]
https://pyinstaller.readthedocs.io/en/stable/runtime-information.html

1004 名前:デフォルトの名無しさん mailto:sage [2019/12/28(土) 22:59:25.11 ID:Jn+mNcKi.net]
画像高画質化アプリがすごいんだが
https://matsuri.5ch.net/test/read.cgi/morningcoffee/1577518892/

このスレにあるような綺麗な拡大ってPyhonで可能ですか?

1005 名前:デフォルトの名無しさん [2019/12/29(日) 07:36:42.64 ID:qv2BWJ9R.net]
>>952
プリントして表示したらパスが分かりました
ありがとうございました

1006 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 10:02:17.84 ID:12vQU2ip.net]
>>954
理屈的にはできるはず
完成できるかどうかはおまいの腕前次第

1007 名前:デフォルトの名無しさん [2019/12/29(日) 12:26:24.81 ID:kibmeFOr.net]
そういうライブラリがあるか聞いてるわけではなくて?

1008 名前:デフォルトの名無しさん [2019/12/29(日) 13:42:27.55 ID:49gQrlWf.net]

m3SXtna
61x65 96dpi 24bits


o9qwWuG
511x509 96dpi 24bits

横 8.38倍
縦 7.83倍

なんかきもい

1009 名前:デフォルトの名無しさん [2019/12/29(日) 13:43:04.58 ID:49gQrlWf.net]
品質はともかく出来るか出来ないかで言えば出来るだろう
元のより拡大後の方が綺麗に見えるっていう加工にすぎない

1010 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 14:00:37.11 ID:Zt6NZoPC.net]
>>954
waifu2xでググれ



1011 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 14:04:35.53 ID:9RsW793u.net]
>>960
そういうレベルの拡大画質ではないかと

スレの師匠方でも「理論としては可能」というくらいだとかなり難しいという事ですね

1012 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 14:09:06.77 ID:L6E4sJV0.net]
つかこれの可能不可能は言語的な制約によるものではないだろ

頭わりぃな

1013 名前:デフォルトの名無しさん [2019/12/29(日) 14:24:25.04 ID:49gQrlWf.net]
画質は落ちてても人間には綺麗に見えるフィルタなんていくらでもある
「画質」とか「綺麗」とかの定義と客観的定量的指標が必要

1014 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 14:34:23.11 ID:Zt6NZoPC.net]
>>961
そういうレベルw
モデルを顔写真用にトレーニングせずにそのまま使ってもそりゃダメだろ
GANs使ってアイコラ自動生成するアプリと同じ

1015 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 14:59:54.30 ID:Zt6NZoPC.net]
https://github.com/phillipi/pix2pix
https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix

この辺使って粗い拡大写真とキレイな拡大写真のペアでトレーニング

1016 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 16:59:36.46 ID:krz96WXE.net]
pygameのmusicでmp3を流すと、ファイルによってはオクターブが下がったり超低音のくぐもった音で再生されてしまいます。
vlcプレイヤーなどで再生すると同ファイルは正常に再生できるのですが・・・。
さらに後者の現象の後はdouble free or curruption(out)というエラーが発生しています。こんな現象に遭った方いらっしゃいますか?

1017 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 17:14:09.99 ID:5+fH2orr.net]
ゲーム作るならどうせ遅かれ早かれPythonは卒業することになるんだから、
時間を無駄にする前にそろそろunityにでも乗り換えたらどうかな

1018 名前:デフォルトの名無しさん mailto:sage [2019/12/29(日) 18:38:19.91 ID:2GmPR76J.net]
>>963
> 画質は落ちてても人間には綺麗に見えるフィルタなんていくらでもある
マジで?
2~3紹介してくれ

1019 名前:デフォルトの名無しさん [2019/12/29(日) 22:57:27.79 ID:qv2BWJ9R.net]
Windowsのパスを指定するときって\を使う場合と/を使う場合がありますが
/を使うと不具合が起きるような場合ってありますか?

1020 名前:デフォルトの名無しさん [2019/12/30(月) 01:23:59.84 ID:AcEus5TP.net]
pipenvを最近使い始めたのですが、疑問点があります。




1021 名前:度仮想環境から出たあと、pipenv shellを行い、再度仮想環境に入り直そうとすると仮想環境が作り直されます。
毎回pipenv installを行い、ライブラリをインストールしなくてはならないのでしょうか。
[]
[ここ壊れてます]

1022 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 09:02:33.89 ID:4+GP0CVf.net]
>>970
pipenvはプロジェクトごとにフォルダを沸かせて管理してくれやがりますので

Linux系なら
1かいめのpipenv shellのあと
「echo $VIRTUAL_ENV」して
応答で表示されるパスを覚えとけ(ここでは仮に/Users/hoge/fooがかえってきたものとする)
あるいは(echo $VIRTUAL_ENVが反応しなかったときなども)
普段「python -m venv /Users/unko」とかでpipenvをよんでるとおもうので
そのパスをメモれ。

でもって
「export $VIRTUAL_ENV=/Users/hoge/foo」みたいに
魔法の呪文をシェル設定ファイルに書いておけ

1023 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 09:15:28.10 ID:c2EGbkdv.net]
>>961
GANなので画像を補正しているわけではなく、生成している

1024 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 09:23:57.98 ID:5wgoa0WT.net]
Pyhtonは外部ライブラリの氾濫とenv関連の乱立でダメになったね
シンプルで学習コストが低いという最大の強みが
言語本体ではなく周辺環境の学習・構築コストが著しく高くなったことで
相殺されてしまった
Guidoさんも嘆いているだろう

1025 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 09:31:30.67 ID:4+GP0CVf.net]
>>961
きれーに拡大できる画像づくり ≒ ラスタ画像→ベクタ画像の自動変換 は
過去から現在まで
世界各国様々なやつらが
いろいろとがんがってきて
あれやそれやと販売してきはているのだが
未だ「コレダ!!!(´∀`)9 ビシッ!」という優れた製品が出てないのだ。

bmp→jpegで落ちる部分を補完するのだって
りくつはわかるが
おれたちに満足が行くクォリティの実行は
きっと不可能ではないのだろうが、
やっぱりゲキムズ

1026 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 09:47:56.63 ID:U65gHr2Q.net]
>>970
export PIPENV_VENV_IN_PROJECT=true
をシェルの設定ファイルに書いておけば、プロジェクトのルートディレクトリに.venvという名前で仮想環境を作ってくれる

1027 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 13:21:48.69 ID:cw4EWtnb.net]
pipenvがこれからのスタンダードになってくかと思いきや、最近はなんだかpoetryの方が良くね?って空気もあるし、かと思いきや名前忘れたけど新しい有力なパッケージマネージャが出てきたとかなんとか

どれを使えばええんや

1028 名前:デフォルトの名無しさん [2019/12/30(月) 14:02:48.63 ID:WAqdspci.net]
>>974
情報のエントロピー的に上限がある
それを超えるのは異世界にでも行かないと無理

1029 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 14:33:22.82 ID:Nw7Rp9O2.net]
>>976
3年くらい待つ

1030 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 14:42:59.25 ID:g0RN7zwT.net]
>>973
もともと環境の分離が考えられてなかったpythonの造り自体にも一因があると思うぞ。
そのあたりの古臭さは結局最後まで改善されなかった。



1031 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 15:10:41.52 ID:0ybHI6rZ.net]
>>979
環境の分離が考えられた言語って何?

1032 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 15:36:40.82 ID:vvSvem59.net]
>>980
nodeは標準でpipenv相当のパ

1033 名前:bケージマネージャが付属している
Goはコンパイラ自体がパッケージマネージャの機能を有しており、その上すべてをスタティックリンクするから実行環境にも依存しない
[]
[ここ壊れてます]

1034 名前:デフォルトの名無しさん [2019/12/30(月) 15:56:12.12 ID:UTSCwLrd.net]
Rustは

1035 名前:デフォルトの名無しさん [2019/12/30(月) 17:34:06.16 ID:kgySNqX2.net]
https://stackoverflow.com/questions/3520493/python-show-in-finder

上記のURLの回答に出ているsubprocess.callの、「-R」っていうのは何をするオプションですか?

1036 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 17:43:03.33 ID:w8cwRlld.net]
>>983
Mac使ってるんならman openで確認できるよ

1037 名前:デフォルトの名無しさん [2019/12/30(月) 18:00:57.78 ID:kgySNqX2.net]
>>984
ありがとうございます。
subprocess.callというのはunixコマンドを呼び出すもので、-Rオプションを付けると開くのではなく選択状態にするだけということですね。

1038 名前:デフォルトの名無しさん mailto:sage [2019/12/30(月) 23:38:37.05 ID:p3QJuMJ/.net]
Ruby のBundler が基本!
それを真似たのが、Node.js のnpm, yarn、
PHP のComposer

つまり、恥も外聞もなく、Ruby のシステムをパクったものが勝つw

>>969
Windows 10 で、Ruby を使っているけど、/ パス区切りで、問題ない!

Dir.glob( 'C:/Users/Owner/Videos/openload/*' ) do |full_path|
処理
end

1039 名前:デフォルトの名無しさん mailto:sage [2019/12/31(火) 08:33:34.47 ID:awsyjiM+.net]
pipenv
 vs
poetry
  vs
pyflow

1040 名前:デフォルトの名無しさん mailto:sage [2019/12/31(火) 09:01:54.02 ID:CC12AHqY.net]
グーグルに頼んでGoのコンパイラをPython対応にしてもらうしかないだろう
バイナリにしちまえばPythonのあらゆる欠点を改善できる



1041 名前:デフォルトの名無しさん [2019/12/31(火) 09:55:13.97 ID:6hm8iNMc.net]
pipenvは、仮想環境を取り込んでしまったのがそもそも大間違い。
パッケージ管理だけに特化すれば良かった。
poetryは一応外せるようにはなってるね。

1042 名前:デフォルトの名無しさん mailto:sage [2019/12/31(火) 10:18:40.82 ID:YPeginhU.net]
pythonはパッケージをpythonバイナリからの相対位置で探すから、プロジェクトごとに
パッケージを分離しようとすると基本的にpythonバイナリごと丸コピーになる。
poetryってのも裏で仮想環境用意しているんじゃないかと思うが。

1043 名前:デフォルトの名無しさん mailto:sage [2019/12/31(火) 10:28:29.41 ID:awsyjiM+.net]
とりあえずcondaはもう二度と使わないけどな

1044 名前:デフォルトの名無しさん mailto:sage [2019/12/31(火) 11:37:12.59 ID:Ja8RsyWS.net]
>>990
プロジェクトディレクトリからの相対パスをsys.pathに入れたければ
PYTHONPATH使えばいいんでないの?

1045 名前:デフォルトの名無しさん mailto:sage [2020/01/01(水) 08:43:33.71 ID:HPE60y2L.net]
blackとかいうformatterめっちゃいい

1046 名前:デフォルトの名無しさん mailto:sage [2020/01/01(水) 18:49:14.83 ID:XDdD4uFM.net]
エラー文に表示されるハットキャレットはエラー位置を示しているのでしょうか。

1047 名前:デフォルトの名無しさん mailto:sage [2020/01/01(水) 20:10:34.99 ID:zZ41nBr+.net]
違う
「ここで構文解析が行き詰りました」を示す

1048 名前:デフォルトの名無しさん [2020/01/02(木) 14:54:56.28 ID:m/E2OLKG.net]
0**0

1049 名前:デフォルトの名無しさん [2020/01/02(木) 15:58:06.26 ID:ZUrZA+uS.net]
くだすれPython(超初心者用) その45【Ruby禁止】
https://mevius.5ch.net/test/read.cgi/tech/1577948214/

1050 名前:デフォルトの名無しさん [2020/01/02(木) 16:03:11.21 ID:a+sObGCf.net]
ナイス



1051 名前:デフォルトの名無しさん [2020/01/02(木) 16:10:53.55 ID:NYIo0K4b.net]
もっと PYTHONIOENCODING 使おう

1052 名前:デフォルトの名無しさん [2020/01/02(木) 16:12:17.43 ID:NYIo0K4b.net]
くだすれPython(超初心者用) その45【Ruby禁止】
https://mevius.5ch.net/test/read.cgi/tech/1577948214/

1053 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 78日 5時間 55分 5秒

1054 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<305KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef