2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

くだすれPython(超初心者用) その37

1 :デフォルトの名無しさん:2018/03/17(土) 16:32:25.91 ID:S1lkLDnv.net
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その36
http://mevius.2ch.net/test/read.cgi/tech/1514805522/

2 :デフォルトの名無しさん:2018/03/17(土) 17:20:52.13 ID:apINGZdL.net
1乙

3 :デフォルトの名無しさん:2018/03/17(土) 22:54:10.59 ID:71uTBaAx.net
>>1
やっぱこのスレがないとな

4 :デフォルトの名無しさん:2018/03/18(日) 01:10:06.02 ID:1gnxon3r.net
>>1
乙ぱいそん

5 :デフォルトの名無しさん:2018/03/18(日) 08:16:22.54 ID:5YCBO0rZ.net
>>1乙!!!

6 :デフォルトの名無しさん:2018/03/18(日) 14:40:54.55 ID:gweQjn0m.net
O2

7 :デフォルトの名無しさん:2018/03/20(火) 16:48:16.51 ID:UQThoPnt.net
てst

8 :デフォルトの名無しさん:2018/03/20(火) 21:57:11.58 ID:4r2XpJ0O.net
pythonで変数を単にprintで出力等でなく、for文の中の引数のあたりで用いたいのですが
正しい表示の仕方が分からない状態です…。

【NO.1】
driver.execute_script("window.open('about:blank', 'tab0')")
driver.execute_script("window.open('about:blank', 'tab1')")
driver.execute_script("window.open('about:blank', 'tab2')")
driver.execute_script("window.open('about:blank', 'tab3')")
driver.execute_script("window.open('about:blank', 'tab4')")
以下tab3,tab4・・・・・、その都度変わる。

と、例えばこれは上手く動くのですが、こういうプログラムを 'tab0'の部分がいくつまで増えるかわからないので
for文を用いたいです。
そこで以下のようにしました。


【NO.2】
for aa in range(5):
bbb = 'tab' + str(aa)
print(bbb)
driver.execute_script("window.open('about:blank', bbb)")


これで5回ループしてwindow.openを繰り返したいのですが、エラーとなってしまいます。

('about:blank', bbb)")  を  ('about:blank', 'bbb')")としても ('about:blank', '{bbb}')")
としてもうまく動かないのですが、NO.1のように書いていると長い時はどれだけでも長くなってしまうので、
NO.2のようにしてうまく動いてほしいのですが、教えて頂きたいです。すみません…。

9 :デフォルトの名無しさん:2018/03/20(火) 22:03:32.55 ID:CB6mEnFT.net
>エラーとなってしまいます
こんなふうに使いたいたいけどエラーになるのは激糞ってことで、
"window.open('about:blank', bbb)"
のbbbを文字列ではなく変数扱いにしろと
Pythonを作っているところに激しくクレームすればOK

10 :デフォルトの名無しさん:2018/03/20(火) 23:41:50.62 ID:qVb9KqM8.net
Method: Selenium::WebDriver::Driver#execute_script

http://www.rubydoc.info/gems/selenium-webdriver/0.0.28/Selenium%2FWebDriver%2FDriver%3Aexecute_script

execute_script(script, *args)

Ruby では、第1引数に、JS のソースコード、
第2引数に、様々な型のオブジェクトの配列だけど

11 :デフォルトの名無しさん:2018/03/20(火) 23:44:43.85 ID:8h2nHQPc.net
Rubyスレに書き込めばいいのに

12 :デフォルトの名無しさん:2018/03/21(水) 00:29:22.31 ID:e7ByloC5.net
window.open('about:blank', 'tab{:d}'.format(aa))

0埋めや桁指定したかったら、{:04d}とかにすればおk

13 :8:2018/03/21(水) 09:16:16.57 ID:+xAnIYdW.net
有難うございました。
色々試させて頂きましたがなぜか出来ずに、
調べてみた>>12の似たようなケースのもので
'tab{%d}'%(aa
など数パターンをしてみましたが駄目でした。
window.open('about:blank')
のみでもタブは開きますが、>>8のように開いたタブを指定しないと
色々操作できないようなので…
引き続いて調べてみようと思います。

14 :デフォルトの名無しさん:2018/03/21(水) 10:08:37.83 ID:9aBHV4ji.net
javascriptスレ逝け

15 :デフォルトの名無しさん:2018/03/21(水) 10:12:09.46 ID:MTE55bx9.net
for aa in range(5):
bbb = 'tab' + str(aa)
print(bbb)
driver.execute_script(f"window.open('about:blank', '{bbb}')")

16 :デフォルトの名無しさん:2018/03/21(水) 10:16:50.03 ID:wxFTzoek.net
最も最近に起動した、タブを取得する、というような関数は無いのか?

17 :デフォルトの名無しさん:2018/03/21(水) 10:20:58.28 ID:UHcPczyP.net
pythonってプログラミング言語なの?

18 :デフォルトの名無しさん:2018/03/21(水) 10:21:00.65 ID:9aBHV4ji.net
>>16
javascriptスレ逝け

19 :デフォルトの名無しさん:2018/03/21(水) 10:50:33.68 ID:wxFTzoek.net
Python は、Ruby みたいに、
文字列内に、変数が埋め込めないのか

"some sentence...#{変数}..."

Python は、不便・ややこしい

20 :デフォルトの名無しさん:2018/03/21(水) 11:10:28.98 ID:4NRc1cWQ.net
多分ネームスペースの問題だけど詰まった…

myMod内に既製パッケージをインポートしてmyFunc内で既製Modを呼んでる
myMod内の砂場からmyFuncを呼ぶとちゃんと動く
しかし別ファイルのmainにmyModをインポートしてmyFuncを呼ぶと動かない

エラーメッセージは"既製パッケージに既製Modという属性は有りません"
(今手元に無いので概要)

インポートの仕方を色々変えてみたり、(import pkg, import pkg.mod, from pkg import mod…)
呼び方もフルパス、省略…
終いにはmain内にも既製パッケージをインポートしてみたりしても駄目

抽象的だけどなんか詰まりやすいポイントあればエスパーな人教えてください

21 :デフォルトの名無しさん:2018/03/21(水) 11:15:59.51 ID:4NRc1cWQ.net
取り敢えず既製パッケージはちゃんとmainから呼べるように出来てるんだから、既製パッケージに習って__init__.py置いてパッケージに纏めてみるかな…

22 :デフォルトの名無しさん:2018/03/21(水) 11:35:22.45 ID:9aBHV4ji.net
>>19
馬鹿には無理

23 :デフォルトの名無しさん:2018/03/21(水) 11:45:31.65 ID:+xAnIYdW.net
>>15
有難うございました!これで出来ました!
このパターンもどこかのサイトにあった記憶はありますが
結局投げ出し気味でしっかり試さず来ていたと思います…
tab0、tab1と指定して開いていて、あとでタブ切り替えもしっかり行ってくれました。
ありがとうございました!

24 :デフォルトの名無しさん:2018/03/21(水) 11:47:06.86 ID:wxFTzoek.net
>しかし別ファイルのmainにmyModをインポートしてmyFuncを呼ぶと動かない

myModをインポートしても、myMod内のコードが実行されていないとか?

それにより、myFunc内で既製Modを呼んだタイミングでは、
既製パッケージはインポートされていないので、既製Modが見つからないとか?

import とは、ソースコードを実行するのか?
また、どの部分を実行するのか、しないのか?

まあ、具体的なソースコードが無いと、回答するのは難しい

25 :デフォルトの名無しさん:2018/03/21(水) 12:17:35.83 ID:4NRc1cWQ.net
>>24
手元に無いのですまん、そりゃ分からんよね
でも取り敢えずタイミングというのは手掛かりになりそう、ありがとう
printとdir置いてトレースしてみる

26 :デフォルトの名無しさん:2018/03/21(水) 14:24:13.65 ID:F7vjZmd4.net
>>19
3.6からできなかったっけ

27 :デフォルトの名無しさん:2018/03/21(水) 15:18:06.81 ID:MTE55bx9.net
2.5からできてますが

28 :デフォルトの名無しさん:2018/03/21(水) 19:39:40.24 ID:II1JNNPJ.net
3.6から文字列内に直接変数名を埋め込めるようになったんだよなあ
format()が余りにも不評だったんだろう
これだけで8文字取るからな
書籍でも従来の%を使っているものが多い

29 :デフォルトの名無しさん:2018/03/21(水) 19:59:57.38 ID:ZIWF0mlj.net
loggerがformatに対応しないから俺もレガシーなフォーマットに戻った
変数展開はきっと使うと思うけど

30 :デフォルトの名無しさん:2018/03/21(水) 22:59:14.27 ID:iE0+8PVB.net
ubuntuでpython 2.x と 3.xを使い分けるにはどうするのが一番いいですか?

31 :デフォルトの名無しさん:2018/03/21(水) 23:28:46.60 ID:120kxtjS.net
Linuxを使っていないWinユーザーの俺でも
Linuxではそう言うのはシバンでやると知っているが.
次の質問はutf-8とかの文字コードを使い分けるにはどうするのが一番いいですか?
かな

32 :デフォルトの名無しさん:2018/03/22(木) 00:02:13.59 ID:tdHViWJs.net
>>20-21
1. function print(){ };
2. (function print(){ })();

JavaScript では、1. のように、ただ関数を定義しても、実行されない。
2. のように関数を( ) で囲んで、式にしてから、( ) を付けて実行する

Python はよく知らないけど、
何かのスコープ内の関数・モジュールは、import されても実行されないのかも?

スコープ外に出してみれば?
つまり、ファイルスコープ

それか、あちこちに、print 文をばらまいて、
どこが実行されるか、チェックしてみれば?

>>30
Windows10・WSL のUbuntu シェルで、実行すると、
$ python3 --version
Python 3.5.2

$ python2 --version
プログラム 'python2' はまだインストールされていません。
次のように入力することでインストールできます:
sudo apt install python-minimal

33 :デフォルトの名無しさん:2018/03/22(木) 02:54:23.14 ID:6YcPw3Wb.net
python3でreqieatsモジュールについてなのですが、postでパラメータを送る際のurlエンコードの文字コードを指定する方法はありますか?

34 :デフォルトの名無しさん:2018/03/22(木) 04:28:32.50 ID:tdHViWJs.net
「python3 requests post 文字コード」で検索!

35 :デフォルトの名無しさん:2018/03/22(木) 06:40:32.12 ID:nTB8AQAc.net
>>34
取得したレスポンスの文字化けに関する記事ばっかで、postのパラメータについてのものが見つけられません…
requestsでパラメータが英数のものは動くのですがurllibだとできなかったのでできればrequestで行いたいです。
dataにurllibでurlエンコード済みのstring文字列入れても駄目でした。

36 :デフォルトの名無しさん:2018/03/22(木) 07:33:15.74 ID:tdHViWJs.net
form 送信か

元々、そのform があるHTML に、文字コード・地域を指定しているはず

37 :デフォルトの名無しさん:2018/03/22(木) 08:57:23.33 ID:+wYf8aa1.net
黙れ統失Rubyカス

>>35
requests.postのdataにurlencodeした結果を指定する、であってる
それでも化けるならContent-Typeヘッダーにcharsetつける
それでも化けるならおま環問題である可能性が高い

38 :デフォルトの名無しさん:2018/03/22(木) 09:10:10.92 ID:MSVR+REx.net
>>35
最近プログラム板に来た人かな?
ID:tdHViWJsは、この板の全域に出没して適当な回答を繰り返す問題のある人物なので、
時間を無駄にしたくないのなら相手にしないほうがよい。
この人物は文章が特徴的なので、何度か目にすれば察せるようになるだろう。

39 :デフォルトの名無しさん:2018/03/22(木) 09:46:12.22 ID:Q2/ylW7b.net
迷ったらMIME

40 :デフォルトの名無しさん:2018/03/22(木) 13:27:14.07 ID:8yaQ1Td9.net
pythonの勉強のためにAnacondaを導入しました
webサイトを見ながら触ってみたのですが、Anaconda promptでconda update condaと入力するとSolving environment:failedと表示されCondaHTTPErrorと続いてアップデートが完了していないと思われる現象が起こります
検索してみたのですが英語が読めず原因が分かりません
プログラム以前の問題で申し訳ないのですが原因と考えられる要素を教えてください

41 :デフォルトの名無しさん:2018/03/22(木) 13:30:22.51 ID:Q2/ylW7b.net
net繋がってないだけとか

42 :デフォルトの名無しさん:2018/03/22(木) 14:49:30.96 ID:8yaQ1Td9.net
>>41
ありがとうございます
インターネットには接続は問題ないようです

43 :デフォルトの名無しさん:2018/03/22(木) 14:55:21.42 ID:WC+ROiY7.net
プロキシサーバーを経由してるとか

44 :デフォルトの名無しさん:2018/03/22(木) 14:56:15.47 ID:Z8Y+8YFX.net
>>37 >>38
ありがとうございます。
今手元にないので後でもう一度試してみます。

45 :デフォルトの名無しさん:2018/03/22(木) 15:14:14.52 ID:+AIswhSt.net
あいやー
おちぃんちんサーバに接続
ぴぃーーーー。小5ロリ以外を粛清せよ

46 :デフォルトの名無しさん:2018/03/22(木) 15:36:21.99 ID:8yaQ1Td9.net
発生しているエラーはこの人と同じ現象だと思います
英語は分かりませんが
conda config ―set ssl_verify no
をやってみろみたいな記述があったので試してみたのですが状況は変わりません…

https://github.com/conda/conda/issues/6007

47 :デフォルトの名無しさん:2018/03/22(木) 15:38:27.86 ID:o6o53GFc.net
証明書のクリアしてみるか?

48 :デフォルトの名無しさん:2018/03/22(木) 15:39:41.97 ID:o6o53GFc.net

そもそも windows の firewall でブロックかな
ウィルス対策ソフトとか firewall とか一時的に無効でもだめか?

49 :デフォルトの名無しさん:2018/03/22(木) 16:53:47.05 ID:8yaQ1Td9.net
>>48
ありがとうございます
ファイアウォールは切ってみてもダメでした
社内のPCを使っているのですが、ネットワークの知識もないのでどこが影響してるのかも追えなくてすいません…

50 :デフォルトの名無しさん:2018/03/22(木) 18:42:33.32 ID:/vagzVD7.net
配列aの要素が配列bにすべて含まれていればTrue、そうでなければFalseとしたい
配列a、bの要素数は可変(ただしlen(a)>=len(b))
また配列内で各要素は重複しない
例えば以下のような形です

#True
a=(1,2,3,4)
b=(2,1,3)
#False
a=(1,2)
b=(4,3)

こういうテストを大量に繰り返したいので、早い書き方を考えています

test=[num for num in a if num in b]
if len(test)==len(b)

みたいなのを考えてみたんですが、たぶんもっとスマートな方法があると思うので、教えてください

51 :デフォルトの名無しさん:2018/03/22(木) 19:00:38.71 ID:rLoCj1aX.net
>>50
aにないものが見つかったところでbreak→False判定 ってして
ループまわす

52 :デフォルトの名無しさん:2018/03/22(木) 19:22:38.90 ID:MSVR+REx.net
setにすれば集合演算が使える

53 :デフォルトの名無しさん:2018/03/22(木) 19:59:16.77 ID:RnvqqGyo.net
同じ配列に対して繰り返しその比較するならあらかじめソートしておくと良いことあるかもしれない。

54 :デフォルトの名無しさん:2018/03/22(木) 20:38:40.26 ID:RnvqqGyo.net
ん、繰り返さないとしてもソートしたほうが速いのか?
よくわからん…

55 :デフォルトの名無しさん:2018/03/22(木) 20:38:51.79 ID:+AIswhSt.net
a,bをinで粛清せよ

56 :デフォルトの名無しさん:2018/03/22(木) 20:48:12.70 ID:+AIswhSt.net
同士諸君、赤

57 :デフォルトの名無しさん:2018/03/22(木) 21:17:50.10 ID:rLoCj1aX.net
Happiness is Mandatory. Citizen,are you happy?

58 :デフォルトの名無しさん:2018/03/22(木) 21:41:09.52 ID:mUCyPZ6U.net
>>49
>社内のPC
会社のネットポリシーにひっかかって会社のファイアウォールがブロックしているんじゃないのか?
このせいで俺のところなんかでもアクセスできないところが色々ある
5chも行っちゃだめよだし

59 :デフォルトの名無しさん:2018/03/22(木) 22:06:01.51 ID:/EkTHIgP.net
>>51
よく考えたら内包表記でもifしたら速度出ないですね
これで試してみます

60 :デフォルトの名無しさん:2018/03/22(木) 22:14:23.56 ID:+AIswhSt.net
要素が含まれてるか検知するのに、lenやifを使うなんて
頭が悪すぎる。

粛清せねば成らない。

61 :デフォルトの名無しさん:2018/03/22(木) 22:15:25.38 ID:+AIswhSt.net
ifは必要だ

62 :デフォルトの名無しさん:2018/03/22(木) 22:17:04.96 ID:+wYf8aa1.net
おまえは何をいっているんだ

63 :デフォルトの名無しさん:2018/03/22(木) 22:17:06.65 ID:RnvqqGyo.net
んあ、パイソンってループより内包表記のほうが速いってマジ?

64 :デフォルトの名無しさん:2018/03/22(木) 22:23:11.07 ID:+wYf8aa1.net
内包表記でリストを作る場合は専用命令を使うので、微々たる物だが速くなる

65 :デフォルトの名無しさん:2018/03/22(木) 23:35:44.33 ID:q/Ja7+Ba.net
>>50
> 配列aの要素が配列bにすべて含まれていればTrue
> 例えば以下のような形です
> #True
> a=(1,2,3,4)
> b=(2,1,3)

???
4が配列bに含まれていないようだが?
なぜにTrue???

66 :デフォルトの名無しさん:2018/03/23(金) 00:03:52.46 ID:qUw1cRZJ.net
え?

67 :デフォルトの名無しさん:2018/03/23(金) 00:22:49.84 ID:i31Fn5mw.net
うーんまあ
配列aの要素が配列bの要素をすべて含んでいる場合
あるいは
配列bの要素が配列aにすべて含まれている場合
と書くのが正確ね

68 :デフォルトの名無しさん:2018/03/23(金) 00:53:01.08 ID:0pO3RnAr.net
>>65
このスレの質問者は超低脳が多い。
そんな奴の質問は辻褄が合うことはあまりない
そんなもんだから回答者は真の質問を見抜ける高脳でないと駄目

len(a)>=len(b)なら、配列aの要素が配列bにすべて含まれている可能性あるのは....

69 :デフォルトの名無しさん:2018/03/23(金) 00:57:09.20 ID:0pO3RnAr.net
>>67
a,bが逆になっているだけじゃないのか

70 :デフォルトの名無しさん:2018/03/23(金) 04:01:48.52 ID:NfdpbbfG.net
誰かアプリ作れる人いませんか?

71 :デフォルトの名無しさん:2018/03/23(金) 07:22:27.94 ID:qUw1cRZJ.net
このスレでアプリ作れるのは俺くらいのもんだろ

72 :デフォルトの名無しさん:2018/03/23(金) 11:51:11.90 ID:L1wsKiud.net
pythonでアプリ(実行ファイル)作るのは難しいよな
俺もスクリプト作るのが限界だわw

73 :デフォルトの名無しさん:2018/03/23(金) 12:22:07.12 ID:kM32haS5.net
わざわざ()してくれたとこ悪いんだけど.pyも実行ファイルなんだよね

74 :デフォルトの名無しさん:2018/03/23(金) 12:33:36.05 ID:dRbnJSq+.net
Windowsみたいなオモチャだと難しいよなw

75 :デフォルトの名無しさん:2018/03/23(金) 18:11:07.27 ID:OUYN8NdW.net
class NewClass:
hoge = "hoge"

class NewClass:
def __init__(self):
self.hoge = "hoge"
この2つに違いってありますか?

76 :デフォルトの名無しさん:2018/03/23(金) 18:43:03.09 ID:GtydX90K.net
あるよ

77 :デフォルトの名無しさん:2018/03/23(金) 19:37:01.46 ID:ZnDm/A5o.net
>>64
それってジェネレータに勝てるの?

78 :デフォルトの名無しさん:2018/03/23(金) 19:42:15.36 ID:OUYN8NdW.net
>>76
なるほど継承するときに違いが出るということですね
ありがとうございました

79 :デフォルトの名無しさん:2018/03/23(金) 21:21:46.68 ID:9yghwvRE.net
>>78
違うよ

80 :デフォルトの名無しさん:2018/03/23(金) 21:50:35.83 ID:cWFdcGfI.net
こうかな?

class A:
hage="hage"

class NewClass:
hoge=A()

a=NewClass()
b=NewClass()

b.hoge.hage="huga"

print(a.hoge.hage)
print(b.hoge.hage)

class NewClass2:
def __init__(self):
self.hoge=A()

a=NewClass2()
b=NewClass2()

b.hoge.hage="huga"

print(a.hoge.hage)
print(b.hoge.hage)

81 :デフォルトの名無しさん:2018/03/24(土) 00:06:55.67 ID:ua0H29LU.net
>>80
なるほどコンストラクタ外に記述したプロパティは参照するたびに更新されるということですかね
ありがとうございました

82 :デフォルトの名無しさん:2018/03/24(土) 00:26:27.77 ID:6+fQqcMh.net
えぇ…

83 :デフォルトの名無しさん:2018/03/24(土) 01:02:21.46 ID:M254L+Kv.net
コンストラクタってどれのことを言っているんだろ
ダンダーinitのことかな?

84 :デフォルトの名無しさん:2018/03/24(土) 01:36:03.13 ID:ua0H29LU.net
なるほどクラス変数とインスタンス変数の違いですかね
これが別物だということを分かっていませんでした
ありがとうございました

85 :デフォルトの名無しさん:2018/03/24(土) 03:51:20.06 ID:5DHcZkrY.net
リストの2次元配列に文字列をappendしていきたいのですが、
完全に空な2次元リストはどのように宣言すればいいんですか?

arr = [[]]
arr.append("apple")
arr.append("hage")
とすると
[[],[apple],[hage]]
となってしまいます

[[apple],[hage]]というリストを作りたいです

86 :デフォルトの名無しさん:2018/03/24(土) 04:12:14.60 ID:DtiNFwiJ.net
リストにリストを持たせたければ
リストをappendするしかないんじゃないか

>>> arr = []
>>> arr.append(['apple'])
>>> arr.append(['hage'])
>>> arr
[['apple'], ['hage']]

87 :デフォルトの名無しさん:2018/03/24(土) 04:14:39.51 ID:SVLgN11o.net
arr = [[] for _ in range(2)]

88 :デフォルトの名無しさん:2018/03/24(土) 04:19:39.81 ID:SVLgN11o.net
あとは arr[0] と arr[1] にappendすればOK

89 :デフォルトの名無しさん:2018/03/24(土) 09:20:52.26 ID:3cN93bef.net
2次元配列じゃなくて配列の配列だけどな。

90 :デフォルトの名無しさん:2018/03/24(土) 14:39:47.54 ID:1M7APlB/.net
>>85
です
ありがとうございます出来ました

91 :遊園地-24:2018/03/24(土) 14:45:04.21 ID:iVzkwtpj.net
.pyをexe形式する方法有るケドな

92 :デフォルトの名無しさん:2018/03/24(土) 17:35:00.31 ID:CjNpxR1+.net
Mac用アプリにも出来る

93 :デフォルトの名無しさん:2018/03/24(土) 21:02:13.48 ID:6+fQqcMh.net
Linux上で動いてるパイソンコード(ライブラリ等も含めて)をWindows exeにする方法ってありますか?

94 :デフォルトの名無しさん:2018/03/24(土) 21:13:03.17 ID:qA6u9GtS.net
お前には無理

95 :デフォルトの名無しさん:2018/03/24(土) 21:42:22.06 ID:OpmPJ6Nw.net
Pythonにmain関数はないの?

96 :デフォルトの名無しさん:2018/03/24(土) 21:48:08.73 ID:dZ11fZcx.net
winexe.jar

97 :デフォルトの名無しさん:2018/03/24(土) 21:50:51.20 ID:CjNpxR1+.net
Linuxは全然分からないけど、windowsとかMACのモジュールと同じモジュールでも動くならあるよ

98 :デフォルトの名無しさん:2018/03/25(日) 02:06:35.44 ID:vGx9Wf9w.net
>>93
pythonコードをLinux上でwinのexeに変換するプログラムはあるんじゃないのか。
これの需要はかなりありそうだし
ただ、WinにはないLinux独特の機能を使っているコードだとだめだろうが。

99 :デフォルトの名無しさん:2018/03/25(日) 14:03:56.05 ID:ydE12e/a.net
UbuntuのB shellでワンライナーで実行したいんですけど、
文字列をprintしようとすると変数と解釈されてしまうみたいでエラーが出てしまいます。
整数だったらエラーにならないんですが...
どうすればいいのでしょうか?

python -c "print("aaa")"

Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'aaa' is not defined


python -c "print("1")"
1

100 :デフォルトの名無しさん:2018/03/25(日) 14:05:23.73 ID:WaYZZq21.net
python -c 'print("aaa")'

101 :デフォルトの名無しさん:2018/03/25(日) 14:05:55.21 ID:ydE12e/a.net
>>99
すみません
自己解決しました
シングルクオートにしたらできました

102 :デフォルトの名無しさん:2018/03/25(日) 14:06:16.39 ID:ydE12e/a.net
>>100
ありがとうございました

103 :デフォルトの名無しさん:2018/03/25(日) 23:15:11.80 ID:DaTr1DzF.net
for を使って単純な足し算引き算を10億回の処理したら、皆のPCならどれくらいの時間かかる?

104 :デフォルトの名無しさん:2018/03/25(日) 23:33:31.13 ID:DaTr1DzF.net
>>103
ごめん、計算する数値は1億桁で

105 :デフォルトの名無しさん:2018/03/25(日) 23:52:02.81 ID:R2VPlajs.net
そんなこと聞いてどうする。言語の違いでもそんなの意味ないのに。

106 :デフォルトの名無しさん:2018/03/26(月) 00:15:48.82 ID:HKDZDkOJ.net
知りたいから聞く

ダメか?

107 :デフォルトの名無しさん:2018/03/26(月) 00:18:27.51 ID:mhu6xXG+.net
いやこのスレ的に python の long の性能の話だろ多分

108 :デフォルトの名無しさん:2018/03/26(月) 01:51:48.59 ID:KvFIiPGN.net
いいんじゃねーの聞くくらい
俺はやらないし答えないけど

109 :デフォルトの名無しさん:2018/03/26(月) 05:05:05.33 ID:OxsjGzhh.net
普通の知能持ってる人は対数使う

110 :デフォルトの名無しさん:2018/03/26(月) 07:13:54.70 ID:WZ1ZCWjW.net
つまり天才は対数使わない。

111 :デフォルトの名無しさん:2018/03/26(月) 07:16:38.08 ID:xZZfGuVF.net
>>109
若宮正子さんも対数使っているのかな?

112 :デフォルトの名無しさん:2018/03/26(月) 08:33:11.81 ID:ipWiSu89.net
while ture でループ中に計算してだした値をリストに入れて次のループでもそのリストを使いたいんだがどうするんですか?
例えば[1] [1,1] [1,1,1] とループで表示していきたいとき

while true:
list=[]
list.append(1)
print(list)
time.sleep(5)

ってやってもずっと[1]が表示され続けるんですが

113 :デフォルトの名無しさん:2018/03/26(月) 08:36:59.62 ID:u5mr1n2+.net
>>112
そりゃ毎回list作り直してるからな
> list=[]
をループ外に出せばいい

114 :デフォルトの名無しさん:2018/03/26(月) 08:41:48.81 ID:ipWiSu89.net
>>113
迅速なご回答ありがとうございます!

115 :デフォルトの名無しさん:2018/03/26(月) 10:39:10.61 ID:ULwk/4nL.net
半年前からC#を始めて、最近pythonの勉強も始めました
今は参考書を見ながら基本文法を勉強しているのですが、何か形にしてイメージを掴みたいなと思っています
みなさんが勉強する時に参考にしたアプリや、これを作ってみろ、というような物がありましたら是非教えてください

116 :デフォルトの名無しさん:2018/03/26(月) 11:08:23.56 ID:Uam8iqco.net
scratch

117 :デフォルトの名無しさん:2018/03/26(月) 11:10:21.19 ID:yutowq4u.net
https://www.amazon.co.jp/dp/4800711657
http://bibinbaleo.hatenablog.com/entry/2017/07/08/173710
http://ichibariki.hatenablog.com/entry/2017/05/03/184753
https://qiita.com/noanoa07/items/19d9d83867d2226c76c8
https://www.timeless-education.com/five-steps-to-start-python-programming-in-minecraft-2607.html

118 :遊園地-24:2018/03/26(月) 12:11:08.82 ID:wYtYQOPu.net
GUI部分をC#
3目並べをモンテカルロ or ミニマックス法 python

受け渡し実装

119 :遊園地-24:2018/03/26(月) 12:16:16.01 ID:wYtYQOPu.net
古典的に分かり易い
ミニマックス法が良いんじゃね?[不明]

嫌なら、ネガマックス法とか
かな

120 :遊園地-24:2018/03/26(月) 16:51:46.83 ID:wYtYQOPu.net
遊園地の為のURL
http://ustimaw.hatenablog.com/entry/2014/12/14/081423

メモ

121 :デフォルトの名無しさん:2018/03/26(月) 21:12:37.13 ID:ujJRTdDM.net
他人の押し付けより自分が一番興味あることを言ってみろ
それに関連するものをやればいい

122 :デフォルトの名無しさん:2018/03/26(月) 21:29:58.56 ID:PunXNe2v.net
これ作ってみ?
http://connect4.gamesolver.org/?pos=

123 :デフォルトの名無しさん:2018/03/27(火) 13:32:18.34 ID:ZLXZGkXc.net
class A,B,Cを継承したMainクラス内でそれぞれをsuper()するとき
(MAIN,self) (A,self) (B,self)となるのはどうしてなんですか
すごい気持ち悪いんですが、どうにかなりませんか?

124 :デフォルトの名無しさん:2018/03/27(火) 15:46:36.73 ID:7pnb7M0m.net
明示的は暗黙的より優れています

125 :デフォルトの名無しさん:2018/03/27(火) 16:59:12.46 ID:ZnJBL61E.net
Guido の重要な洞察のひとつに、コードは書くよりも読まれることの方が多い、というものがあります。

126 :デフォルトの名無しさん:2018/03/27(火) 17:03:14.16 ID:1GrWb10a.net
あ、いや、明示とか可読性の話じゃなくて
なんでsuper(A)~(C)じゃないのか、という疑問です

127 :デフォルトの名無しさん:2018/03/27(火) 18:25:55.89 ID:PajNg8Dj.net
開発者に聞いてこい
開発者の気持ちを答えなさいって国語の教師気取りかテメーはよ

128 :デフォルトの名無しさん:2018/03/27(火) 20:32:11.17 ID:AF1pc4aA.net
多重継承したらいかんよ、という暗黙戒め

129 :デフォルトの名無しさん:2018/03/27(火) 20:48:27.46 ID:SJRVUf0s.net
プログラマに文系が歓迎される理由が>>127のおかげでわかった

130 :デフォルトの名無しさん:2018/03/27(火) 23:30:39.85 ID:88y58jW2.net
エクセルソルバーのGRGみたいな非線形最適化制約有りをやりたいんだけど、Pythonでできる?

131 :デフォルトの名無しさん:2018/03/28(水) 00:00:14.22 ID:GSIqg02F.net
俺らに気持ちを悪さを>>123から読み解けだからな
文系なら、
>>123からなぜ気持ち悪いかがわかるし、どう何とかしても当然わかるんだろうな。
でも、理系だと無理で、>>126のような大補足が必要なんだろうな
理系だと手間がかかるからプログラマに文系が歓迎されるわけだ

>>123はPython開発者の気持ちを分かったうえで>>123なのかな

132 :デフォルトの名無しさん:2018/03/28(水) 00:37:51.86 ID:29gqJ3C5.net
いや単純に、superは引数の親クラスを呼んでくるということがわかってないために違和感生じてるんじゃないか
引数で指定したクラスの中身がそのまま使えるみたいな感覚でおるんでは?

133 :デフォルトの名無しさん:2018/03/28(水) 00:46:45.55 ID:3+G1HR/o.net
他の言語を色々やって、その経験からPythonはすごい気持ち悪いんですがなんじゃないのか?

134 :デフォルトの名無しさん:2018/03/28(水) 02:14:08.09 ID:817KgWeW.net
>130
scipy.optimize
を使ったらできるんじゃないかな

135 :デフォルトの名無しさん:2018/03/28(水) 02:27:45.00 ID:jH5P0ocQ.net
Pythonごときで気持ち悪いとか言ってる人は、Haskellみたら制約多過ぎて即死するだろうなw

136 :デフォルトの名無しさん:2018/03/28(水) 07:14:12.27 ID:ooTjeloS.net
>>134
ありがとうございます、やってみます

137 :デフォルトの名無しさん:2018/03/28(水) 07:25:24.29 ID:1/4U3eU2.net
>>135
気持ちのいい制約っていうのが大事なんだよ

138 :デフォルトの名無しさん:2018/03/28(水) 07:55:50.50 ID:WKkXmrtt.net
>>137
いいですね、気持ちのいい緊縛

139 :デフォルトの名無しさん:2018/03/28(水) 14:46:32.18 ID:TfqKuNVG.net
最近出たオライリーのHead First Python
第2版は買いですか?

140 :デフォルトの名無しさん:2018/03/28(水) 15:32:48.18 ID:wWS6mS4+.net
Foot Last Pythonが出るまで待ちです。

141 :デフォルトの名無しさん:2018/03/28(水) 18:44:07.37 ID:c16Hwi83.net
Head Firstは人を選ぶから自分で判断しなさい
俺はデザインパターンのを買ったが5ページで挫折した
あのノリにはついていけん

142 :デフォルトの名無しさん:2018/03/28(水) 20:36:48.44 ID:m/YBLUNl.net
Hip Middle Python
は、いつ出ますか?
尻好きの私は待ち遠しくてたまりません。

143 :デフォルトの名無しさん:2018/03/28(水) 21:07:18.06 ID:zdJ231FE.net
Head Firstは意識高い系な雰囲気が嫌い
Java系ばっかだと思ってたがPythonも出てんのね

144 :デフォルトの名無しさん:2018/03/30(金) 15:05:36.16 ID:jcL5BjSg.net
python2.xと3.xを同居させられないの。
#ifdef(PYTHON3)
print('world')
#else
print 'world'
#endif とか。

145 :デフォルトの名無しさん:2018/03/30(金) 15:29:09.19 ID:pqp5DZ1s.net
>>144
__future__ で両対応せよ

146 :デフォルトの名無しさん:2018/03/30(金) 15:41:59.16 ID:LJCUuJpX.net
>>144
sixていうライブラリが便利

147 :デフォルトの名無しさん:2018/03/30(金) 15:49:21.37 ID:Ll1emnsv.net
threading.Threadのrunにwin32com入れるにはpythoncom.CoInitialize()が必要というのは調べてわかったのですが、なぜこれが必要なのかわかりません
どなたかお教えいただければ幸いです

148 :デフォルトの名無しさん:2018/03/30(金) 17:43:53.70 ID:FxYI+k+J.net
>>147
Win32 というか COM 自体がスレッド毎に CoInitialize が必要だから

149 :デフォルトの名無しさん:2018/03/30(金) 22:49:49.98 ID:HIF6e78a.net
>>148
なるほどありがとうございます

150 :デフォルトの名無しさん:2018/03/31(土) 01:31:01.40 ID:HKQg3i4s.net
windows10
python 3.6.4です
multiprocessingについて教えていただけないでしょうか?
ttps://docs.python.jp/3/library/multiprocessing.html
↑を見て例題にある

from multiprocessing import Process

def f(name):
print('hello', name)

if __name__ == '__main__':
p = Process(target=f, args=('bob',))
p.start()
p.join()
をやってみましたが
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Users\nanasi\AppData\Local\Programs\Python\Python36\lib\multiprocessing\spawn.py", line 105, in spawn_main
exitcode = _main(fd)
File "C:\Users\nanasi\AppData\Local\Programs\Python\Python36\lib\multiprocessing\spawn.py", line 115, in _main
self = reduction.pickle.load(from_parent)
AttributeError: Can't get attribute 'f' on <module '__main__' (built-in)>
というエラーがでて動きません。
いくつか他のもマルチプルプロセッシングがあるものをコピペしたりしてみたのですが
だいたいp.startのあたりでエラー出ます。
windowsではサポートしてない所があって動かないんでしょうか?
どうしたらwindowsで動くようになりますか?

151 :デフォルトの名無しさん:2018/03/31(土) 01:59:18.72 ID:uh3Jaudz.net
>>150
普通に*.pyファイルに保存して、VisualStudioデバッガやPowerShellから動かせたけど・・・
対話モードだとダメっぽいね

152 :デフォルトの名無しさん:2018/03/31(土) 04:31:36.97 ID:2Z4gCLvW.net
__main__じゃないからな

153 :150:2018/03/31(土) 22:04:28.61 ID:HKQg3i4s.net
>>152
import しない限り__name__の中身って__main__になるんじゃなかったですっけ???

154 :デフォルトの名無しさん:2018/03/31(土) 22:25:31.18 ID:RRMYNfyR.net
気にしたこと無いけど取り敢えずプリントしてみなよ

155 :150:2018/03/31(土) 22:52:00.57 ID:HKQg3i4s.net
>>154
メインでますね。
>>> print(__name__)
__main__

156 :デフォルトの名無しさん:2018/03/31(土) 23:02:30.33 ID:RRMYNfyR.net
へぇ〜

157 :デフォルトの名無しさん:2018/04/01(日) 03:19:09.43 ID:MskEivG4.net
自分のいる場所が __main__ でも
def f() で f が作られる場所の問題じゃね
global f
してみ

158 :150:2018/04/01(日) 14:36:00.98 ID:PqizwVxV.net
>>157
いたるところにglobal f 入れてみましたがpythonコマンドにコピペすると
動かないですね

def fのところの___name__調べてみましたが
あるところだけ__main__になってないですね・・・

sub=__main__ #ほかのdefをifの中で名前()で呼び出した場合
hello bob
mp=__mp_main__ #def fの中
mein=__main__  #ifの中

かといってif無しでやっても
おんなじエラー出ます。
とりあえず、.py保存してから実行なら動くから実際問題はないのかな?

159 :デフォルトの名無しさん:2018/04/01(日) 19:37:25.39 ID:i3M0z6WT.net
ubuntuにanacondaをインストールしたのですけど、
pythonでは起動できなくて、python3で起動するように
なってしまいました。
インストールをどこか間違ったのでしょうか?

160 :デフォルトの名無しさん:2018/04/01(日) 20:31:59.52 ID:d99K3tnG.net
echo $PATH
which python3
ってやってみろ
どうせパス通ってないだけ

161 :デフォルトの名無しさん:2018/04/01(日) 21:27:08.68 ID:8+KQdOcW.net
>>159
python3に慣れておいた方がいい

162 :デフォルトの名無しさん:2018/04/01(日) 23:02:55.06 ID:ECJY99tL.net
漏れのWindows10・Ubuntu・WSL では、
which python3 (3.5)で、/usr/bin/python3 (3.5)

which python としても、そういうコマンドは無い。
そもそも、python2 か3か、あいまいだし

Windowsでは、元からpythonが入っていないから、
Anaconda をインストールするだけで良いけど、

Ubuntuだと、システムで使っているpythonが、元から入っているから、
もし、Anacondaのpythonのバージョンと異なると誤動作する

システムの方の/usr/bin/python3 を何かのアプリで使っている可能性があるから、
こちらは、うかつにバージョンアップできない

だから、Anacondaだけを仮想環境に閉じ込めて使えば、
自由にpythonのバージョンを変えても、システムに影響ない

Ruby on Rails を使うときの、rbenv みたいなもの。
Anacondaを、virtualenv(venv)で使えば?

163 :デフォルトの名無しさん:2018/04/01(日) 23:17:11.91 ID:Wu6copxJ.net
pyenvだろ

164 :デフォルトの名無しさん:2018/04/01(日) 23:22:48.01 ID:c8SUuMzE.net
conda createからのactivateするんじゃないの?

165 :デフォルトの名無しさん:2018/04/02(月) 04:35:50.85 ID:3ewhMOuh.net
先にやらんと手遅れになる

166 :デフォルトの名無しさん:2018/04/02(月) 09:28:50.22 ID:s7mweyB2.net
>>162
仮想環境はインストールした後の話だろ。
Anacondaをインストールするだけならシステムには影響ない。
それとも、その「仮想環境」ってのはDockerとかVMのことを言っているのか?

167 :デフォルトの名無しさん:2018/04/02(月) 09:31:53.60 ID:YeEQ96Xi.net
そいつに触るな

168 :デフォルトの名無しさん:2018/04/02(月) 09:43:17.23 ID:YeEQ96Xi.net
時期柄もあるだろうから書いておく

>>162はRubyスレを含む多数のスレで適当なことを書いて煙たがられているユーザーだ
触らないように

レス番号以外の固定ハンドルをつけている奴にも触らないように
それらは基本的に自意識過剰か承認欲求で頭がおかしくなっている

169 :デフォルトの名無しさん:2018/04/02(月) 18:13:02.77 ID:eTpURbiZ.net
tupleをlistに変換したいのですが、ぐぐって見つけたコードを真似て入力してもTypeErrorになります。
t = ('one', 'two', 'three')
l = list(t)

なんか間違ってる?

170 :デフォルトの名無しさん:2018/04/02(月) 18:35:49.91 ID:DE0uBPvp.net
>>169
間違ってない
うちのPython3.6.4のコマンドウインドウにコピペして実行した結果は以下のとおり

>>> t = ('one', 'two', 'three')
>>> l = list(t)
>>> l
['one', 'two', 'three']

171 :デフォルトの名無しさん:2018/04/02(月) 18:55:55.33 ID:eTpURbiZ.net
本当だ、コマンドウィンドウだと問題ないな・・・

172 :デフォルトの名無しさん:2018/04/02(月) 19:47:24.41 ID:sa9ZyrCn.net
>>171
ファイル作ってもいけた

k = ('one', 'two', 'three')
l = list(k)
print(l)

173 :デフォルトの名無しさん:2018/04/02(月) 22:26:30.77 ID:wIbB0b4n.net
こういうのはゲームだと思ってやらなきゃ…
仕事と思っちゃダメだ…楽しまないと覚えられん…
…何から手をつけて良いか分からん泣

174 :デフォルトの名無しさん:2018/04/02(月) 22:33:00.67 ID:gbB6Aon1.net
仕事なら目標が明確だから何から手を付けていいかわからんてことはないだろう

175 :遊園地:2018/04/02(月) 23:48:30.12 ID:LJEqcqCm.net
色々教えてくれた。スレ内の知り合いが、一年近く来ない。
今頃、どうしてるんだろう。

176 :デフォルトの名無しさん:2018/04/03(火) 00:56:56.37 ID:cU9BUIMs.net
秋田

177 :162:2018/04/03(火) 02:02:15.57 ID:hZewAlsv.net
漏れは、10言語ぐらい知ってるけど「みんなのPython」にも書いてある

Anaconda は、元からPython が入っていない、Windows を対象にしている。
元からPythonが入っていないから、
Pythonを入れても、バッティングしないから大丈夫

元からPythonが入っている環境では、
専門家じゃないと環境構築できないから、説明しないって書いてある

これは、Pythonを入れるとバッティングするから、
素人では環境構築できないっていう事

仮想OS とか、virtualenv(venv) とか、何らかの仮想環境を使わないと無理

漏れのWindows10・Ubuntu・WSL では、
which python3 (3.5)で、/usr/bin/python3 (3.5)

これを例えば、python3 を、3.5 とは異なるバージョンと結び付けたいのなら、
/usr/bin/python3 (3.5)よりも前方に、探索パスを追加しないといけない。
コマンドの実行ファイルは、探索パスの前方からの順に探されるから

だから、rbenv, virtualenv などで、activate すると、
$PATH の一番最初に、自分が使いたいバージョンのパスが追加される

PATH="$VIRTUAL_ENV/bin:$PATH"
まあ「python virtualenv 仕組み」で検索して

こういう仕組みを、初心者に説明するのが無理だから、
「みんなのPython」では説明していない

Linux の環境構築なんて、素人じゃ無理。
LPIC などの、Linux資格を持っていないと無理

178 :デフォルトの名無しさん:2018/04/03(火) 04:44:48.90 ID:QsfDg0d7.net
数だけ追うとこうなるという悪い見本

179 :デフォルトの名無しさん:2018/04/03(火) 08:24:49.81 ID:G1GaWyXd.net
ダメだこりゃ。

180 :デフォルトの名無しさん:2018/04/03(火) 09:32:07.49 ID:u1C9H1Ty.net
きっとrubyが欠陥言語だからユーザーがこんなんなんでしょうな

181 :デフォルトの名無しさん:2018/04/03(火) 09:49:39.77 ID:7FhHUoJB.net
>>173
とりあえず覚えたいじゃなくて、仕事なら最初からやること決まってるじゃん?

自分は明確な目的がないから、思い付いたものはとりあえずpython で出来るかどうか試す、なんて無駄なことやってるぞ
この道に嵌まりたかったら、それで良いけど

182 :デフォルトの名無しさん:2018/04/03(火) 11:35:27.28 ID:R6gDm2yr.net
実際やろうと思えば出来てしまう

183 :遊園地:2018/04/03(火) 15:14:47.21 ID:oFzsxu0w.net
テキスト内のキーワード指定して、集計データ返してくれるなら、
スクリプトじゃなくて良い。ただ、なでしこ言語は挫折した。

184 :デフォルトの名無しさん:2018/04/04(水) 01:30:08.57 ID:eXsheJZd.net
>>182
神降臨

185 :デフォルトの名無しさん:2018/04/05(木) 01:01:12.89 ID:Qe5jM9cj.net
画像のような仕組みは何と言えば良いのですか?

取得したデータをPythonで画像のように出力したいので、やり方か仕組みを調べようとしたのですが、何と検索して良いのか分かりません

https://i.imgur.com/4fXnUAH.jpg

186 :デフォルトの名無しさん:2018/04/05(木) 02:04:09.01 ID:COvjSQ0t.net
>>185
Windows なら python windows gui
Linux なら python linux gui
とかで検査

187 :デフォルトの名無しさん:2018/04/05(木) 02:12:11.97 ID:G4evJUNh.net
>>185
PythonならWebアプリにしてHTMLで出力したほうがいいよ
ネイティブGUIをPythonで作ろうと思うと、極めてマイナーなフレームワークにどっぷり浸かることになる
極めても全く価値のないスキルであり、時間の無駄だ

188 :デフォルトの名無しさん:2018/04/05(木) 04:28:32.13 ID:mpYxecTp.net
本についてなんですが、ソーテック社の「いちばんやさしいPython入門教室」って
本は良いですか?

189 :デフォルトの名無しさん:2018/04/05(木) 07:39:52.11 ID:fmq90VfQ.net
>>185
パワポ出力じゃあかんのか?

190 :デフォルトの名無しさん:2018/04/05(木) 09:53:13.44 ID:Qe5jM9cj.net
返答ありがとうございます

>>186
これがGUIというんですね…
よく耳にするTkinter がいいのかな?こちらも調べてみます

>>187
なるほどhtmlですか
こちらでも良さそう… 調べたら分かりやすかったので、こちらからやってみます スマホアプリにも出来そうですし
Python ってGUIを作るのが大変なんですね

>>189
その場でパッとデータを確認できたらいいことと、更新したら即データが反映されるようになってほしいので…
でも、パワポ出力は他で使えそうなのでまた調べてみます

191 :遊園地:2018/04/05(木) 10:47:59.49 ID:yVXnCZRq.net
いつも、お世話に成ってますw

トランプからカードを引いて、マークつけを行いたいです。
関数Sample2の結果を返すにはどうすれば良いでしょうか?
教えて下さい。


https://ideone.com/085uNT

192 :デフォルトの名無しさん:2018/04/05(木) 15:22:14.86 ID:pkmC89pn.net
sudo update-alternatives --config python

193 :デフォルトの名無しさん:2018/04/05(木) 18:37:25.68 ID:166ySDeQ.net
>>186
怪しいので、身体を検査させてもらいます。

194 :デフォルトの名無しさん:2018/04/05(木) 23:52:36.33 ID:A+SSmePb.net
>>189
出力だけで入力イラネであればパワポやpdf出力の方がファイルセーブもできて良いよな。

195 :デフォルトの名無しさん:2018/04/06(金) 23:17:04.19 ID:4KCjI5eb.net
>>188
Amazonだと高評価だけどどうだろう
実際に本屋に行って見るのが良いかもね〜
かく言う俺もガチガチの初心者だから本探ししてる

196 :デフォルトの名無しさん:2018/04/06(金) 23:40:31.97 ID:eal1pYjS.net
「みんなのPython 第4版、2017」が定本

そこに、なでしこの作者・クジラ飛行机が参入。
その後、掌田津耶乃・大津真など、多言語の作者も参入

197 :デフォルトの名無しさん:2018/04/07(土) 03:30:14.58 ID:0IMs8tmt.net
1 2 3
4 5 6
7 8 9
の入力があった時に行ごとの計算結果を出したいときってどうしたらいいですか?

198 :デフォルトの名無しさん:2018/04/07(土) 04:03:02.27 ID:ic1KeMb4.net
ちょっと状況分かんないけど
合計ならforで行ごとに
sum([1, 2, 3])
とか

199 :デフォルトの名無しさん:2018/04/07(土) 06:51:19.63 ID:WL4rZ6s4.net
Ruby なら、

text = <<'EOT'
1 2 3
4 5 6
7 8 9
EOT

text.each_line do |line| # 1行ずつ処理する
# 末尾の改行を削除して、空白区切りで、配列に入れる
numbers = line.chomp!.split
# 数値に変換してから、配列内のすべての数字を足す
puts numbers.map(&:to_i).inject(:+)
end

200 :デフォルトの名無しさん:2018/04/07(土) 10:55:48.14 ID:0nAeQwXs.net
酷いなRuby。Perlの悪しき轍を踏んでいるのか。

201 :デフォルトの名無しさん:2018/04/07(土) 12:08:10.14 ID:BRhgC8GS.net
>>197
pandas だと行ごとの map とか reduce とかあるし

202 :デフォルトの名無しさん:2018/04/07(土) 12:49:26.90 ID:vUF6Z2rf.net
Flaskを使ってWebサービスを作ろうと思っています。
その裏ではある処理を行うPythonのプログラムがあって、
その結果をリアルタイムにWebページに反映するという仕組みを作りたいのです。
例えるなら時計のページのようなものです。

このようなものを実現する方法として、どの様にするのが良いでしょうか?
自分なりに考えてみたところでは次のようなやり方で出来るかなと思うのですが
なんだか無駄が多いような気がして、もっとスマートに実現出来るのでは?という気がします。
アドバイスを頂けると嬉しいです、よろしくお願いします。

(1)バックグラウンド処理の部分をthreadingを継承したクラスで作成し
(2)Webサービス本体となるapp.pyで、(1)をインスタンス化して実行
(3)(1)からの処理結果はapp.pyにコールバックで返却
(4)app.pyのコールバック関数はsocketioを使ってWebページに処理結果を送る
(5)websocketを受け取ったWebページは、処理結果をページに反映させる

203 :デフォルトの名無しさん:2018/04/07(土) 13:00:52.26 ID:BRhgC8GS.net
Brython

204 :デフォルトの名無しさん:2018/04/07(土) 14:26:32.33 ID:z2/bO+GF.net
>>188
「めんどうなことはpythonにさせよう」が面白かった。

205 :デフォルトの名無しさん:2018/04/07(土) 14:35:20.07 ID:nRtWZzWw.net
>>202
リアルタイムで更新したいならフロントエンドにreactを使え

206 :遊園地:2018/04/07(土) 15:07:01.03 ID:77S40Xyy.net
>>197

#スペース区切りの数字を受け取り 3回
#l=[list(map(int,input().split())) for _ in range(3)]

#完成するデータ
l=[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

#横の合計
[print(sum(i)) for i in l]

#改行
print()


#縦の合計
[print(sum(i)) for i in list(zip(*l))]

207 :デフォルトの名無しさん:2018/04/07(土) 15:17:10.46 ID:2Xz4c+5M.net
こんくらいブラウザでやれば?
`
1 2 3
4 5 6
7 8 9
`
.trim().split`\n`
.map(row => row.split` `.map(Number).reduce((a, b) => a + b))
.forEach(rowSum => console.log(rowSum));

208 :デフォルトの名無しさん:2018/04/07(土) 17:08:57.70 ID:p0Pua3Pc.net
javaみたいな気持ち悪さ

209 :デフォルトの名無しさん:2018/04/07(土) 17:27:49.50 ID:7ZRXk+Y5.net
なんで最近のプログラミング界ではforが迫害されてmapやreduceがもてはやされてるの?
初心者には分かりにくいと思うんだが。

210 :デフォルトの名無しさん:2018/04/07(土) 17:49:01.49 ID:4dLkJWTk.net
初心者のことなど知らん

211 :デフォルトの名無しさん:2018/04/07(土) 20:07:36.83 ID:VRHJEDN5.net
s.split(",")
s.replace(",","\t")
",".join(s)
joinだけ何故こんな文法に?

212 :デフォルトの名無しさん:2018/04/07(土) 20:15:43.06 ID:WHguHUHL.net
>>209
基本的には、パフォーマンス上のメリットがあるから。
けれど、PythonやJavaScript(ES6)の場合はジェネレータもあるので、
パフォーマンスを保ちつつ、for文を使ったやさしい書き方もできる。
Javaだと、ガチで>>207の書き方しかできない。

213 :デフォルトの名無しさん:2018/04/07(土) 20:19:53.21 ID:iO/NW/s5.net
>>211
join を文字列のメソッドにしたかったから

214 :デフォルトの名無しさん:2018/04/07(土) 20:26:18.12 ID:Iu5gYSvH.net
Python の join() が文字列型のメソッドである理由
https://www.lifewithpython.com/2017/07/why-python-join-is-string-method.html

215 :デフォルトの名無しさん:2018/04/07(土) 22:15:55.69 ID:u6SiCNsb.net
>>210
仕事でソフト開発している人が、初心者のために分かりやすいコーディングをしているとは思えないよな。

216 :188:2018/04/07(土) 22:55:32.20 ID:UAWtR4Cc.net
>>195
あっ、レス付いてる
ありがとうございます
注文することにしました
読んでみたらレビューしますね

217 :デフォルトの名無しさん:2018/04/08(日) 00:14:01.39 ID:j+FIppRr.net
>>202
このスレのレベルを超えた質問で場違いな感じの質問だな

218 :デフォルトの名無しさん:2018/04/08(日) 01:12:18.12 ID:s6V+xdvY.net
>>215
逆だよ。仕事でソフト開発している人が、難読コードを書いちゃいかんだろ。

219 :デフォルトの名無しさん:2018/04/08(日) 01:18:01.50 ID:kOs0IpX+.net
>>218
例えば、リスト内包表記は慣れたらめちゃくちゃわかりやすいんだけど、初心者には不評
でも慣れてる人にはわかりやすいから内包表記を使いまくるってことだろう

220 :デフォルトの名無しさん:2018/04/08(日) 01:33:34.80 ID:ikNNlzZg.net
>>212
>>207よりこっちのほうが分かりやすいと?そうかなぁ?
昔ながらのfor文に慣れてるからそう思うだけで、初心者に聞いてみたらむしろ逆なんじゃない?知らんけど
何より識別子が増えて名付けが辛い。
const mat = `
1 2 3
4 5 6
7 8 9
`.trim();
for (const row of mat.split`\n`) {
const rowAry = row.split` `;
let rowSum = 0;
for (const cel of rowAry) {
rowSum += Number(cel);
}
console.log(rowSum);
}

221 :デフォルトの名無しさん:2018/04/08(日) 02:22:57.13 ID:jNVGKdq/.net
joinは文字列の連結がウリなのに、引数を一個しか指定できないのが謎過ぎる
",".join("A","B","C")ってやりたい時に、実際はあらかじめ"A","B","C"をリストに入れるか
+で連結しとかんといかんって本末転倒だろ

222 :デフォルトの名無しさん:2018/04/08(日) 02:36:06.55 ID:6R1G24Uu.net
>>221
[ ]で囲むだけだろ
Pythonでは可変長引数はあまり好まれない

223 :デフォルトの名無しさん:2018/04/08(日) 06:58:14.21 ID:gxaJAEYd.net
>>210
ここ超初心者のスレ。

224 :デフォルトの名無しさん:2018/04/08(日) 10:08:27.26 ID:kOs0IpX+.net
>>223
いや、>>210>>209への返答よ?

225 :デフォルトの名無しさん:2018/04/08(日) 11:41:56.18 ID:YK+KPtHu.net
>>209
初心者はどっちから教えても一緒だと思う

226 :デフォルトの名無しさん:2018/04/08(日) 11:55:02.04 ID:9/UswNDz.net
>>225
俺も大差ないと思う
forでダラダラ書くより、map,reduce,filterで簡素に書けるなら使ったほうがいいからな

227 :デフォルトの名無しさん:2018/04/08(日) 16:29:56.48 ID:MFf7xIr6.net
こんにちは
タイムカードを処理するアプリを作りたいと思っていて、月の勤務記録を一括で読み込んで実労働時間を出そうと思ってます。
1行毎(1日毎)に実労働時間を出して最後にそれを全て足そうと思っているのですが、行ごとの処理の仕方がわからないんです…
ご回答よろしくお願いします。

228 :デフォルトの名無しさん:2018/04/08(日) 16:43:00.39 ID:GoOLzpCW.net
一行分の入力データと
一行分の入力データから得たい出力データを記載しろ

229 :デフォルトの名無しさん:2018/04/08(日) 16:48:16.19 ID:MFf7xIr6.net
1行分の入力 2017/03/01 12:00-15:00 16:00-24:00

出力 11

こんな感じです
そもそもsys.stdin.readlines()で処理するのが正しいんですかね

230 :デフォルトの名無しさん:2018/04/08(日) 16:59:45.98 ID:nkM5b3tX.net
pandas.read_from_hogehoge

231 :デフォルトの名無しさん:2018/04/08(日) 17:46:41.40 ID:6sp2I/Ld.net
>>> import datetime
>>> import pandas
>>> from io import StringIO
>>> mindif = lambda s: (lambda x: td(x[1])-td(x[0]))(s.split('-'))
>>> td = lambda s: (lambda x: datetime.timedelta(hours=x[0], minutes=x[1]))(list(map(int, s.split(':'))))
>>> f = StringIO('''\
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
''')
>>> a = pandas.read_table(f, header=None, sep=' ')
>>> a[3] = a[1].map(mindif)
>>> a[4] = a[2].map(mindif)
>>> a
0 1 2 3 4
0 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
1 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
2 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
3 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00

232 :デフォルトの名無しさん:2018/04/08(日) 17:50:59.38 ID:6sp2I/Ld.net
>>> a[3] = a[1].map(mindif)
>>> a[4] = a[2].map(mindif)
この2行は
>>> a[3] = a[1].map(mindif) + a[2].map(mindif)
だけで良かった 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)


233 :デフォルトの名無しさん:2018/04/08(日) 18:54:45.02 ID:1mmlbc0v.net
Ruby だと、時刻に、24時は無いけど。
23まで

午前中は、どう表記してる?
03:05, 3:05 のどっち?

234 :遊園地:2018/04/08(日) 20:12:56.50 ID:gmVtfD5c.net
>>229
ごめん。仕様ミスで行数が増えたら対処できない。
そこは改変してくれ。

https://ideone.com/1izELX

235 :遊園地:2018/04/08(日) 20:22:54.67 ID:gmVtfD5c.net
なんか、知らんけど腕が落ちてる。

236 :デフォルトの名無しさん:2018/04/08(日) 20:26:08.17 ID:3hKhfzCU.net
拾っとけ拾っとけ1割もらえるかもよ

237 :遊園地:2018/04/08(日) 20:30:56.58 ID:gmVtfD5c.net
そっちじゃねえよww

238 :デフォルトの名無しさん:2018/04/08(日) 21:23:41.29 ID:MFf7xIr6.net
>>233
午前中は5:00まで29:00の仕様です

239 :デフォルトの名無しさん:2018/04/08(日) 21:24:04.77 ID:MFf7xIr6.net
助かります。参考に書いてみます

240 :デフォルトの名無しさん:2018/04/08(日) 21:46:24.45 ID:5trngRbI.net
>>238
5時がタイムカード上では29時なんか
夜23時から早朝の5時勤務の場合
タイムカードは23:00-29:00
夜23時から早朝の6:00時勤務の場合
タイムカードは23:00-06:00
夜1時から早朝の5時勤務の場合
タイムカードは25:00-29:00
とかになるのか

241 :デフォルトの名無しさん:2018/04/08(日) 22:02:44.17 ID:MFf7xIr6.net
>>240
そうです
なのであり得ませんがフル勤務の場合は5:00-29:00になりますね

242 :デフォルトの名無しさん:2018/04/08(日) 22:54:58.64 ID:eu3b+r+J.net
>>238
それって残業代どうなるの?深夜勤務、8時間超えたら、〇時間超えたら何割増しってあるんでしょ?

243 :遊園地:2018/04/08(日) 23:52:48.14 ID:gmVtfD5c.net
規模によるがw
数百万から数千万の未払金が発生するなww

ただの問題サイトのテストケースだろうけどなw

244 :デフォルトの名無しさん:2018/04/09(月) 04:01:32.98 ID:WaD3v69G.net
>>242
そこからは自力で書いてみようと思ってます

245 :デフォルトの名無しさん:2018/04/09(月) 10:27:28.30 ID:l0CeQllx.net
>>229
医師とかだとこういう勤務形態になるのかな

246 :遊園地:2018/04/09(月) 10:40:52.05 ID:Ptdpw/63.net
朝4時に起きとか、怖過ぎ。

247 :デフォルトの名無しさん:2018/04/09(月) 10:59:02.77 ID:s1r7cemC.net
月200時間以上ざんぎょーしてた頃がなつかしーわー
3れんきん(中日は24時間勤務)とかふつうにあった

書類上は
5分仕事 15分休憩
の繰り返しになってた

248 :遊園地:2018/04/09(月) 14:05:06.99 ID:Ptdpw/63.net
仕様が決定して有るなら、作業みたいなモノだろうに。
そんなに仕事を抱え込めるのかな?

管理も兼任してたら、オーバーフローでオーバーロードですな。ww

249 :デフォルトの名無しさん:2018/04/09(月) 14:23:31.09 ID:GdkyYm9A.net
rubyスレにマルチするのやめれ

250 :デフォルトの名無しさん:2018/04/09(月) 15:40:06.66 ID:WaD3v69G.net
>>234
これ曜日って出せますか?

251 :デフォルトの名無しさん:2018/04/09(月) 16:03:42.19 ID:M/BmQ9Z1.net
Ruby スレに書き込んだのは、python スレの書き込みとは別人。
ID も異なるはず

python スレの書き込みを見て、
Ruby ではどうプログラミングするべきか、考えてみたが難しかった

252 :デフォルトの名無しさん:2018/04/09(月) 20:54:36.31 ID:dNOi8uH1.net
pythonで書けてrubyで難しいなんてことがあるのか。
ちょっと意外

253 :遊園地:2018/04/09(月) 21:07:06.94 ID:Ptdpw/63.net
>>250
出せるけど、書式変更が あーーー
https://ideone.com/aCw7iG

調べても2,3分で実装まで5分掛からないんだから、頑張ろうな。

実質、2行増えただけだしな。

254 :デフォルトの名無しさん:2018/04/09(月) 21:37:50.56 ID:0kSx2Pnj.net
>調べても2,3分で実装まで5分掛からないんだから、頑張ろうな。
"超"初心者=>調べることができない、調べようとしない、頑張ることができない人
超初心者に不可能なことを要求するなよ。初心者ならこれらのことは出来るんだが

255 :遊園地:2018/04/09(月) 22:13:27.53 ID:Ptdpw/63.net
>>255

>>244 で
自分で書いてみます。って書いてるやん

256 :遊園地:2018/04/09(月) 22:26:44.43 ID:Ptdpw/63.net
とは言え。偉そうにしたのはスマンかった。

>>250
ごめん。ちょっと調子に乗ってた。
失礼しました。

257 :デフォルトの名無しさん:2018/04/10(火) 00:18:50.47 ID:RB2jjZ4g.net
>>255
いえいえとんでもないです
本当にありがとうございます!調べても分からなかったところだったので…

258 :遊園地:2018/04/10(火) 09:44:44.25 ID:QiXBaC3n.net
検索の仕方は

言語 項目

python 日付

python 曜日

とかで、hitする。と思う。

259 :遊園地:2018/04/10(火) 09:48:10.16 ID:QiXBaC3n.net
素直に行くなら、
公式Documentを落として、

英語で、ファイル内検索

かな。

260 :遊園地:2018/04/10(火) 11:25:34.63 ID:QiXBaC3n.net
https://ideone.com/lDwos1

261 :デフォルトの名無しさん:2018/04/10(火) 20:30:36.44 ID:CXD6eMLO.net
for index, row in mr.iterrows():
a = row.ix[0]
a.replace(u"月","a")
月をaに置換したいんだけどうまくいかない・・・どうすればいい?

262 :デフォルトの名無しさん:2018/04/10(火) 21:31:07.93 ID:6CkCb20Q.net
'nichi月🔥水moku金do'.replace(/月/gu, 'a');

263 :デフォルトの名無しさん:2018/04/10(火) 22:15:50.26 ID:tEeQ8k7E.net
>261
panda は使ったことないのでよくわからないけれど、

str.replace(s, t) について言うと
文字列はイミューダブルだから、replaceでstrが書き換わるわけではない。
書き換わった値が返ってくるので、それを変数に代入することが必要。
つまり、a = a.replace(s, t) のようにする。
さらに、aに再代入しても、
iter.ix[0]の中身は変わらない。
なので、
iter.ix[0]=iter.ix[0].replace(s, t)
のようにする必要があるのだと思う。
外してたらゴメン

264 :デフォルトの名無しさん:2018/04/10(火) 22:22:55.45 ID:CXD6eMLO.net
>>263
まさに知りたかった答えです助かりました!

>>262
セミコロンが付いてるし、他の言語かな?

265 :デフォルトの名無しさん:2018/04/11(水) 00:45:52.55 ID:5V3NvSPI.net
rrrubyyy

266 :デフォルトの名無しさん:2018/04/11(水) 08:15:34.43 ID:vlh3mMKJ.net
Githubで公開されていたライブラリ?モジュール?を利用したプログラムを書いているのですが、
このライブラリの関数の中に、WebからJson形式で値を取得するものがあります。
これを実行するとコンソールにズラーっと結果がPrintされるのですが、
このPrintを無効にしてコンソール上に出力しないようにする事は出来るでしょうか?

デバッグ用のPrint等が流れて読めなくなってしまい、邪魔なので出さないようにしたいです。
よろしくお願い致します。

267 :デフォルトの名無しさん:2018/04/11(水) 09:01:53.43 ID:qa2FEnRq.net
ライブラリなら普通はlogging使ってるはずだから設定で消せる
もし直接printしてるようならそんなものは今すぐ投げ捨てて他を探せ
そんな低品質なゴミを使ってると後々取り返しのつかないトラブルの原因になりかねない

268 :デフォルトの名無しさん:2018/04/11(水) 09:35:50.44 ID:cUARpOdH.net
>>266
頭が良い奴なら、ソース弄らないで動的に関数内のprint部分だけコメントになるようにするとかできるんだろうが(デコレータのような使い方で)。
でも、そんな奴は5chのpythonスレにはいないだろう

269 :遊園地:2018/04/11(水) 10:02:21.51 ID:y+NDlg77.net
無効にする割合は、40ぐらいに設定して置いた方が無難

270 :遊園地:2018/04/11(水) 10:13:12.84 ID:y+NDlg77.net
優秀な奴が、労力をかける場所を間違わないと思うけどな。
ほんの1つのライブラリなんだから、他を探すのが正解だと思うぞい!ww

271 :デフォルトの名無しさん:2018/04/11(水) 12:37:06.54 ID:bG1z7LTF.net
マジレスするとstdoutのトラップで桶

272 :デフォルトの名無しさん:2018/04/11(水) 14:41:24.70 ID:nGNQyhwo.net
意地悪な憶測だがライセンスも読んでないに違いない

273 :デフォルトの名無しさん:2018/04/11(水) 23:09:57.05 ID:QNR3RY4l.net
まじめにライセンスを読むのはいかがわしい事を考えてる奴だけ説

274 :デフォルトの名無しさん:2018/04/11(水) 23:13:13.16 ID:DormuVYu.net
ぐう正論

275 :デフォルトの名無しさん:2018/04/11(水) 23:54:01.75 ID:VAa2HaB9.net
@GPS取得

Aネットにあるjsonを取得

BGPS内容・json内容を0.5秒おきに出力

↑の処理をするプログラムを組んでいます。
@はすぐ処理が終わるので問題ありませんが、Aは使用環境が外でモバイル通信を使用しているためかAの処理だけで最大5秒かかることがあってBの処理が大幅に遅れてしまいます。
Aのみ裏で処理して、@とBをループさせたいのですが、いい方法ありますでしょうか?

276 :275:2018/04/12(木) 00:05:44.68 ID:qBx4xR6B.net
先ほどの書き方だとjsonを0.5秒以内に取得するということになってしまうので修正します。

@GPS取得(0.5秒ごとに処理)

Aネットにあるjsonを取得(10秒ごとに処理)

BGPS内容・json内容を出力(0.5秒ごとに処理)

10秒に1回以外は@とBのループなので問題ありませんが、↑の処理だと10秒に1回はAを処理するときに時間がかかってしまってBの処理が0.5秒で処理できなくなってしまうのが問題です。

277 :デフォルトの名無しさん:2018/04/12(木) 00:15:41.74 ID:4IaDzy3O.net
2を実行するために1の結果が要らないならご自由に

278 :275:2018/04/12(木) 00:53:20.19 ID:qBx4xR6B.net
スレッドという処理があったのでこれを使えばいけそうでした
自己解決すみません。

279 :デフォルトの名無しさん:2018/04/12(木) 00:58:33.43 ID:3KpeTxH4.net
俺ならGPSロギングとJSON取得はそれぞれ全く別個に作って別プロセスで動かすわ
結果はタイムスタンプを使って後で結合すればいい

280 :デフォルトの名無しさん:2018/04/12(木) 01:08:15.09 ID:iaId0hiD.net
f = open("precictor_result.txt","a")
f.write(result," ",predict," ",data_test,"\n" )
f.close()
これだと、引数が多いとエラーが出る
,の代わりに+を使うと、数値として計算するようで、
TypeError: ufunc 'add' did not contain a loop with signature matching types dtype('<U21') dtype('<U21') dtype('<U21')
とエラーが出る

とりあえず、簡単に出力させて中身を確認したいがどのようするのがスマートだろうか?

281 :デフォルトの名無しさん:2018/04/12(木) 01:20:58.84 ID:ViqCrKfL.net
変数が何なのかは知らんが
>数値として計算する
なら文字列に変換すれば良いだろ

282 :デフォルトの名無しさん:2018/04/12(木) 01:27:04.11 ID:iaId0hiD.net
>>281
レスありがとうございます
変数全てに対して文字列に変換するのが面倒で・・・
例えば、
print(result," ",predict," ",data_test,)
であれば問題なく出力されますので
ファイルに保存する場合ももっとスマートにできる方法があれば助かります

283 :遊園地:2018/04/12(木) 01:37:46.68 ID:tAnO53/m.net
これで、良いのかな?

f = open('text.txt', 'r')
for i in f:
print (str(i))
f.close()

284 :遊園地:2018/04/12(木) 01:39:14.90 ID:tAnO53/m.net
見たら分かると思うけど、
f.write( str(i) )

と言う構想

285 :デフォルトの名無しさん:2018/04/12(木) 02:29:34.74 ID:iaId0hiD.net
ありがとうございます。
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
でうまくいきました。ただ、大量の変数を出力する場合、
標準出力ではうまくいくわけですから、全て文字列にキャストするのはちょっと面倒と感じています。
例えば、
print(result," ",predict," ",data_test)  #実際にはもっと多くの変数が並ぶ
こんな場合、これではエラーが出ますが、イメージとしては、
f.write( str((result," ",predict," ",data_test)) )
のような物でもあればもっと気軽にファイル出力できるような感じです

286 :デフォルトの名無しさん:2018/04/12(木) 03:01:07.44 ID:M9kW+xEA.net
str = [result, predict, data_test]
for i in str
f.write()

これで動くっけ?

287 :デフォルトの名無しさん:2018/04/12(木) 04:00:58.45 ID:T93bDVFD.net
>>275-279
スレッドは、同一プロセスだろ。
こういうのは、別のプロセスでよくある

数秒毎に書き込むプロセスAと、1秒毎に読み込むプロセスBがある

B は、ファイルをスタンプを見て、
新たに書き込まれた情報が無ければ、. を出力して、
新情報があれば、o を出力するみたいなやつ

制御・組み込み系で多い

...o....o...o.....o....o..

288 :デフォルトの名無しさん:2018/04/12(木) 04:10:10.14 ID:T93bDVFD.net
name = 'John'
age = 20 + 3

print "名前は #{name}、年齢は #{age}歳"

Ruby では、テンプレート文字列って言うのかな?
文字列の中で、式を展開できる。
最終的に、変数が文字列型に変換される

Python には、こういう機能が無いのか?

289 :デフォルトの名無しさん:2018/04/12(木) 04:49:22.42 ID:t3ixnFe0.net
>>280
printは引数を強制的に文字列に変換するうえに
キーワードオプションで出力先を変更できるから
以下で通るはず。空白も改行も勝手に入る
詳しくはドキュメントの「Python標準ライブラリ-組み込み関数」を参照

print(result, predict, data_test, file=f)

290 :デフォルトの名無しさん:2018/04/12(木) 06:25:29.02 ID:t3ixnFe0.net
>>288
文字列中での式展開はPython3.6から実装された
3.6以前ではこの機能がなく、%記法やstr.formatメソッドを使う

%記法
print("名前は %s、年齢は %d" % (name, age))

str.formatメソッド
print("名前は {}、年齢は {}".format(name, age))

フォーマット済み文字列リテラル
print(f"名前は {name}、年齢は {age}")

291 :遊園地:2018/04/12(木) 09:27:33.72 ID:tAnO53/m.net
>>285
データ構造が不明だから、何とも言えない。

何処かで、
 書き込むべき内容を1つのリストに纏めたり
できない?

292 :デフォルトの名無しさん:2018/04/12(木) 10:53:13.19 ID:iaId0hiD.net
>>291
Pythonを初めて2日目でデータ構造についても正直よく分かってないです
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn import cross_validation, metrics
from sklearn.externals import joblib
import warnings
warnings.filterwarnings("ignore")
mr = pd.read_table("test-data.txt",header=-1)
mr = mr[0:70]
clf = RandomForestClassifier()
clf = joblib.load('cars.pkl');
for row_index, row in mr.iterrows():
result = row.ix[0]
data_test = row.ix[1:]
predict = clf.predict(data_test)

f = open("test.txt","a")
print (result," ",predict," ",data_test )
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
# 標準出力を、ちょっとファイルに出力して中身を確認したいだけで全てキャスト(今は3つなので良いが10くらいになると面倒)するのは面倒なので上の行をもう少し簡素にしたい
f.close()

293 :デフォルトの名無しさん:2018/04/12(木) 10:53:50.49 ID:iaId0hiD.net
>>289
標準出力にその機能があるなら、writeでも何とかならないでしょうかね?

>>286
str = [result, predict, data_test]
for i in str:
f.write(i)
残念ながら、
TypeError: write() argument must be str, not numpy.int64
という結果が表示されます

294 :デフォルトの名無しさん:2018/04/12(木) 11:12:19.94 ID:t3ixnFe0.net
>>293
これはprint関数の機能だからwriteでは使えないよ
こう変えるだけなんだけど、どうしてもwriteじゃなきゃいけないの?

f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )

print(result, predict, data_test, file=f)

295 :デフォルトの名無しさん:2018/04/12(木) 11:18:36.95 ID:JyHXEe/D.net
resultとかの各変数の中身が文字列じゃない気がする

296 :遊園地:2018/04/12(木) 11:38:42.18 ID:tAnO53/m.net
pandasは触った事ないから、協力できない。

差支えが無ければ、test-data.txtの中身(記述形式)を教えてくれ。

でたらめな数値や造語で良い。そうしたら、何か分かるかも。

297 :デフォルトの名無しさん:2018/04/12(木) 12:03:51.11 ID:iaId0hiD.net
>>294
出力されたデータをExcelでグラフにしたり検証したい時などとりあえずテキストデータにしたいのです
普段はperlを使っているのですがそれだとprintそのままにファイルハンドルを付けるだけで
標準でもテキストでも好きに出力できるので同じような使い方ができればと思っています
どちらも出力させて、画面で分かるものはそれでいいですし、
詳細な検討がしたい場合はファイルをExcelなどで開いて再検討する感じです
また、pythonやpandasに慣れて居らずその結果が不安で適宜Excelの結果と照合したいというのもあります
本当はperlでやりたいのですが機械学習について調べているとPythonのモジュールを使う物ばかりで・・・

>>296
生データそのままです
0 1 1 100 99 98 97 101
0 1 1 101 100 99 98 97
1 1 1 97 101 100 99 98
1 1 1 98 97 101 100 99
1 0 1 99 98 97 101 100
1 0 0 100 99 98 97 101
1 0 0 101 100 99 98 97

298 :デフォルトの名無しさん:2018/04/12(木) 12:10:53.36 ID:CLTBB0jT.net
画面に出力する(普通にprintする)プログラムを作って、
ファイルに保存したい場合には
foo.py > filename
という風に実行する、
というやり方はご存知ですか?

299 :デフォルトの名無しさん:2018/04/12(木) 12:16:50.63 ID:rOwLVxdy.net
てかパンダ使ってるならそっちで出力すれば?

300 :デフォルトの名無しさん:2018/04/12(木) 12:40:44.41 ID:T93bDVFD.net
in/out を、標準入出力にしておけば、パイプでファイルにつなげられる

スクリプトファイル < 入力ファイル > 出力ファイル

301 :デフォルトの名無しさん:2018/04/12(木) 12:44:49.97 ID:iaId0hiD.net
>>298,300
おぉーその方法がありましたか
大昔DOSで使ったことがありますが完全に忘れていました!

>>299
とりあえずサンプルプログラムをそのままでpandasもpythonもまだ使いこなせていません
色々なtypeがある場合でも、さくっと出力してくれますか?

302 :遊園地:2018/04/12(木) 12:53:53.14 ID:tAnO53/m.net
聞けば聴くほど分からなくなってくる。

取りあえず出力したいなら、
>>290

303 :デフォルトの名無しさん:2018/04/12(木) 13:02:34.85 ID:O7jP9sqH.net
>>301
Pythonを初めて2日目じゃ何もわからないだろう
ここの連中が言っているアドバイスすら理解不能だろ
一通りさっとでもPython学習をやってから>>292のようなコードに臨んだほうが良い

304 :デフォルトの名無しさん:2018/04/12(木) 17:20:28.88 ID:t3ixnFe0.net
>>297
print(result, predict, data_test)  # 標準出力に出力
print(result, predict, data_test, file=f) # ファイルハンドル f のファイルに出力

これが理解できないならもうワシは知らん

305 :デフォルトの名無しさん:2018/04/12(木) 21:11:22.45 ID:iaId0hiD.net
>>303
貰ったアドバイスは一応理解できてると思う
ただ、以前perlを覚えた頃は掲示板をネットで調べたり、大量のサンプルプログラムを眺めたり
書き換えたりしながら完全に独学で覚えたから用語などがいまいち分からない
良い勉強方法があるなら知りたい
↓についても、その勉強方法ならアドバイスを聞くだけで分かりそう?

>>304
ありがとうございます
お手数おかけしましたが無事動作しました
fh.write()
としていて動作が失敗していました
コメントアウトしたら動作しました

306 :遊園地:2018/04/12(木) 22:31:11.19 ID:tAnO53/m.net
俺もperl5やってたけど、公式ドキュメントが有った。
それと同じ様にpython公式ドキュメントをやれば良い。

307 :デフォルトの名無しさん:2018/04/13(金) 19:12:20.04 ID:vvfD6Twp.net
pythonスレでperlとかrubyとか言い出す奴は
やべー奴ってことか

308 :デフォルトの名無しさん:2018/04/13(金) 19:46:32.40 ID:fIxp3q6f.net
そりゃCバリバリ書ける奴から見ればそうだろうな

309 :デフォルトの名無しさん:2018/04/14(土) 00:27:21.50 ID:fnrer+0Y.net
どこスレでもCとか言い出す奴はアルティメットアンタッチャブル

310 :デフォルトの名無しさん:2018/04/14(土) 00:27:46.56 ID:yt2qqJ9Q.net
>>307
このスレでperlとかrubyとか言い出す奴はperlとかrubyを超使えるやべーレベルの人だからな
そんな人からすればpythonは言語としてperlとかrubyより使えねーとなるだろうな。

311 :デフォルトの名無しさん:2018/04/14(土) 00:46:34.06 ID:EDFUWN6E.net
perlやruby使いが出てきたら、「機械学習」って唱えれば退散するよw

312 :デフォルトの名無しさん:2018/04/14(土) 01:05:01.45 ID:dSQ5MB/j.net
配列の要素数が、
len(list)

Python は、頭おかしいw
この式を、どう解釈せえっちゅーんや!

一方、Ruby では、オブジェクト指向。
ary.length

313 :デフォルトの名無しさん:2018/04/14(土) 01:25:52.09 ID:4BsAOclQ.net
>>310
いや、python使えねーって言うやつはある程度pythonを知っているやつだろう。知らなければ批判も感想もないわけだから。
俺もほとんどわからないから何とも言えない。これまでPerlやCばっかり使っててpythonやろうと思わなかったから。

314 :デフォルトの名無しさん:2018/04/14(土) 01:59:01.25 ID:yt2qqJ9Q.net
>>313
perlの人はPythonを少しは知っているだろ
Pythonプログラム書いているんだし

Perlの人はPythonならPython1日目よりsklearn、pandaを使ったプログラム書ける自信があるという感じで始めたんだろうが。
その自信の元はperlを超使えるやべーレベルな気がする
でも、スレで無様をさらすことになってしまったが

315 :デフォルトの名無しさん:2018/04/14(土) 02:08:23.29 ID:yt2qqJ9Q.net
ここは超初心者スレだからコミュ能力ないのはしょうがないのかもしれないが
perlの人のやりたかったのは>>280からだいぶ後の>>340
>普段はperlを使っているのですがそれだとprintそのままにファイルハンドルを付けるだけで
>標準でもテキストでも好きに出力できるので同じような使い方ができればと思っています
なんだろう。
最初にこれを出せば、面倒を連呼しなくて済んだのにな

316 :デフォルトの名無しさん:2018/04/14(土) 02:23:44.32 ID:RyWPXEl9.net
>>314
超使える訳じゃないけど、そもそもperlしか知らない
そのperlもまともに勉強したわけではなく
サバイバル英語の勉強方法みたいな感じで覚えたから元から無様ですよ
上でも書いたけど、作りたいプログラムを見つけてきたら
それをいじりながら勉強する感じでやってきた
とりあえず、様々なエラーが出たけど、エラーもでることなく10時間CPU回しっぱなしで動作してる
よく分からないながらでも、とりあえず書けば機械学習ができてしまうのは便利だと思ってる
>>311
まじそれ。perlでできるならわざわざ新しい言語を覚えようとは思わなかった
スコープの使い方まで違うし慣れるまで色々嵌りながら学習する必要があると思うと泣けてくる

317 :デフォルトの名無しさん:2018/04/14(土) 02:37:37.23 ID:BdA0jLra.net
perlってテキスト処理ぐらいしかやったことないけど
え、それだけ? ってぐらい簡単に書けちゃうとこがあって面白いね

318 :デフォルトの名無しさん:2018/04/14(土) 02:57:00.89 ID:lnTeyTPJ.net
>340 に期待

319 :デフォルトの名無しさん:2018/04/14(土) 02:59:10.50 ID:lnTeyTPJ.net
>>316-317
書き捨てならperlでも良いと思う
何ヶ月後か何年後かにメンテするときに
忘れてから(あるいは他人のもののメンテ)が勝負
pythonの方にしといて良かったと思える

320 :デフォルトの名無しさん:2018/04/14(土) 06:03:31.69 ID:5tg9pgD6.net
>>312
頭悪いなあ
Rubyにだってstrとかreadlineとかgsubとかあるだろ
pythonのlen(x)は中でx.__len__()を呼んでおり、お前の好きなオブジェクト指向(笑)だ
完全に実装者任せのrubyとは違い、Pythonがlen関数を使うことには下記の2つの意味がある
・メソッド名を確実に統一する(Rubyみたいに自由だとcountとか誤った名前を付ける奴が出てくる)
・__len__の返した結果が規約(必ず整数であること)に従っていることをチェックして保証する
Pythonの方がより規約を重視した高度な仕組みなんだよ

321 :デフォルトの名無しさん:2018/04/14(土) 10:47:57.74 ID:RyWPXEl9.net
>>317
本当にかんたんに書けるよな
Perl使ってる身からすれば、同じP言語だし可能な限りPythonでも簡単にできる方法が知りたくなる

>>319
他の言語は殆ど知らないので何とも・・・メンテかんたんなら良いね
Javaとかネットで良いと言われて、2週間頑張ったけど、長すぎる命令文が覚えきれずタイプが面倒で諦めた
今となっては当時作ったJavaアプリは命令文すら覚えていないから書き直すことすらできないけどね

322 :遊園地:2018/04/14(土) 11:49:28.86 ID:osRawEaB.net
35歳の話ですか?

323 :デフォルトの名無しさん:2018/04/14(土) 22:11:15.45 ID:nq6U0FpM.net
一回importしたモジュールを取り消すことできますか?

324 :デフォルトの名無しさん:2018/04/15(日) 00:11:09.27 ID:LyYRjAz1.net
気の持ちようで過去の事実は変えられる

325 :デフォルトの名無しさん:2018/04/15(日) 00:43:39.53 ID:zL8vaRCQ.net
関数の中でimportしたら、関数処理が終わるごとに解放されるの?

326 :デフォルトの名無しさん:2018/04/15(日) 01:30:36.11 ID:fSFvvger.net
>>325
Pythonはすごい賢い言語だから、importを頭に書いても
必要になった時に動的にインポートし、不要になったら解放してくれるんじゃないのかな。

327 :デフォルトの名無しさん:2018/04/15(日) 01:37:25.53 ID:fSFvvger.net
ただ、毎回インポート・解放すると時間が消費するから
そんなのやめて常駐にしたいときには、キャッシュしといてと指示すれば解放しないで常駐するように
する機能とかも提供している気がする。

328 :デフォルトの名無しさん:2018/04/15(日) 02:41:37.97 ID:K+msyNFc.net
なんだ妄想か

329 :デフォルトの名無しさん:2018/04/15(日) 03:19:09.43 ID:9PmxhzhB.net
試してないけどdel モジュール名はできないの
明示的に参照消したらさすがにガベコレしてくれるだろ

って妄想

330 :デフォルトの名無しさん:2018/04/15(日) 03:26:45.07 ID:9PmxhzhB.net
あまり行儀良くないけど、
使う関数の中でローカルにインポートしてもいいんだよ
いつ使うか分からんからどう扱うか知らんけど、ライブラリとか読んでると後始末に使うモジュールは大体そうしてる
例えば
def Quit():
 import sys, os
  各々のexit関数を試みる
みたいな感じで

これらは軽いからあまりいい例では無いと思うが、ちょっと他の例が思い出せないので

331 :デフォルトの名無しさん:2018/04/15(日) 05:43:37.19 ID:VXOW+WoG.net
>>321
Perl なら、Python ではなく、Ruby

332 :デフォルトの名無しさん:2018/04/15(日) 07:48:45.50 ID:TD/JmgSS.net
Ruby大好きおっさんかあんちゃん。爺さんはないだろうが。

333 :デフォルトの名無しさん:2018/04/15(日) 10:28:50.02 ID:bGi543fi.net
>>331
機械学習が目的だから無理

334 :デフォルトの名無しさん:2018/04/15(日) 10:37:38.96 ID:E1b18XLI.net
rubyはルピーとかルーピーを連想させるから無理

335 :デフォルトの名無しさん:2018/04/15(日) 11:04:43.82 ID:HCEWsKeI.net
Rubyは名前を呼んではいけない(アンカーをつけてはいけない)あの人みたいになると思うと無理

336 :デフォルトの名無しさん:2018/04/15(日) 11:25:09.21 ID:mh4srQnS.net
(´・ω・`)あのーパイソンって小学生でもひと月ぐらいでできるぐらいかんたんってきいたけどほんとなの?
らんらんもプログラマーになれるかなー?

337 :デフォルトの名無しさん:2018/04/15(日) 11:26:32.65 ID:mh4srQnS.net
(´・ω・`)アマゾンで参考書さがしてるけどおすすめの参考書はありますか?
パイソンの本ってむちゃくちゃ多いからまようー

338 :デフォルトの名無しさん:2018/04/15(日) 12:06:53.97 ID:VXOW+WoG.net
この本が、定本。
みんなのPython 第4版、2017

Python は、Ruby よりも難しい。
先に、この本を読め

たのしいRuby 第5版、2016

北大の湊真一が作った、ZDD なら、Ruby gem もある

339 :デフォルトの名無しさん:2018/04/15(日) 12:23:12.55 ID:E1b18XLI.net
>>336
webサイトで充分

340 :デフォルトの名無しさん:2018/04/15(日) 12:33:40.04 ID:Y8r4uZmH.net
パイチンくんの本がいっぱい出すぎで
どれを買っていいかわからないよ
みんなのパイチンくん
スラスラわかるパイチンくん
パイチンくん1年生
いちばんやさしいパイチンくんの教科書
いきなりパイチンくん
やさしいパイチンくん
パイチンくんからはじめる数学入門
独習パイチンくん入門
ホンキで覚えるパイチンくん
パイチンくん機械学習プログラミング

341 :デフォルトの名無しさん:2018/04/15(日) 12:36:21.44 ID:VXOW+WoG.net
「みんなのPython」が定本

そこへ、なでしこの作者・クジラ飛行机が参入した。
そこへ掌田津耶乃・大津真などの、多言語の作者も参入

342 :デフォルトの名無しさん:2018/04/15(日) 12:45:05.14 ID:E1b18XLI.net
rubyの本も急に沢山出た時期があるけど
流行りで出てくる本の九割以上は糞本
スルーでOK

343 :デフォルトの名無しさん:2018/04/15(日) 13:27:09.55 ID:BcrfAPr/.net
まあ流行りで本が沢山出るならまだ良い方だよ。それだけ売れるってことで、それはつまりやってる人が多いということだから。

344 :デフォルトの名無しさん:2018/04/15(日) 13:35:32.50 ID:fpkgMDqC.net
ディレクトリを指定してその中にあるファイルのパスをリストで取得できるモジュールとかないですか?

345 :デフォルトの名無しさん:2018/04/15(日) 13:51:11.42 ID:VXOW+WoG.net
Ruby なら、Dir.glob だけど、

「python list dir glob」で検索!

346 :デフォルトの名無しさん:2018/04/15(日) 13:58:56.84 ID:K+msyNFc.net
rubyが廃れた理由が分かるな。
いやrailsのバッテリーとして余生は安泰かwww

347 :デフォルトの名無しさん:2018/04/15(日) 14:28:51.90 ID:bGi543fi.net
Pythonではタブ記号の代わりにスペースを使う人が多いですが移動が面倒です。
タブ記号だと例えば、インデントが4つあっても4回の右キーを押すだけで移動できますが、
スペースの場合、16回くらい押す必要がありますよね。
どのようにしたらいいでしょうか?
エディタは秀丸を使っています。

348 :デフォルトの名無しさん:2018/04/15(日) 14:30:19.66 ID:Cnmy+aq2.net
>>347
・Sakuraエディタにのりかえる
・インデント機能を使った後、Tab->空白機能を使う

349 :デフォルトの名無しさん:2018/04/15(日) 14:40:56.80 ID:bGi543fi.net
>>348
Sakuraエディタは使ったことないけど、多分秀丸にも同じ機能はあると思うが、
タブにスペースを使うことが問題で
タブがスペースだと結局は16回、もしくは、ショートカットキーで飛ぶことになり面倒でない?

Tab->空白変換 機能は使ってるけど、
サンプルプログラムと手書きを何度もやりとりしてると
タブとスペースの混在で結構良い頻度でエラーになってしまう
統一したいと思ったり・・・

350 :デフォルトの名無しさん:2018/04/15(日) 14:46:01.79 ID:5EOPJhuZ.net
今時秀丸?
VSCodeとか使おうよ

351 :デフォルトの名無しさん:2018/04/15(日) 14:47:30.46 ID:CMfqpLbm.net
>>349
pythonファイルならスペース4つを一回で移動できるエディタたくさんあるよ

352 :デフォルトの名無しさん:2018/04/15(日) 14:57:48.74 ID:fpkgMDqC.net
>>345
globってそういう時に使うのですか
サンクス

353 :デフォルトの名無しさん:2018/04/15(日) 15:27:17.39 ID:Cnmy+aq2.net
>>349
うちは秀丸の設定で1タブ4半角スペース固定にしてる
それで
書いたらはしらせる直前に
全選択して Tab->空白

354 :デフォルトの名無しさん:2018/04/15(日) 15:37:38.38 ID:731FtqJf.net
ソフトタブだっけ?
俺Atomだけどスペース混在がどうのとか気になったことない

355 :デフォルトの名無しさん:2018/04/15(日) 16:10:57.24 ID:Cnmy+aq2.net
今ってたしか
タブとスペースの混在は('A`)ヴァーで
タブは(・A・)イクナイ
スペース4つにしましょうキャンペーン中じゃなかったっけ

356 :デフォルトの名無しさん:2018/04/15(日) 16:22:10.02 ID:7xK+P7p1.net
秀丸最強

357 :デフォルトの名無しさん:2018/04/15(日) 16:25:40.21 ID:7xK+P7p1.net
>>344
os.walk()
os.path.walk()
os.listdir()

358 :aiueo:2018/04/15(日) 16:44:03.35 ID:xfCmajNI.net
windows10
Python 3.6.5 C:\pythonにインストール済み
pip install -U selenium でseleniumインストール済み
ChromeDriver 2.37 インストール済み 
C:\chromedriverに入れて、Pathも通しました

aiueo.pyを作って、C:\myscriptフォルダに入れています
中身は、下になります
from selenium import webdriver
driver = webdriver.Chrome()

これを実行すると、
C:\myscript>python aiueo.py
Traceback (most recent call last):
File "aiueo.py", line 1, in <module>
from selenium import webdriver
File "C:\python\lib\site-packages\selenium\webdriver\__init__.py", line 18, in <module>
from .firefox.webdriver import WebDriver as Firefox # noqa
File "C:\python\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 20, in <module>
import http.client as http_client
File "C:\python\lib\http\client.py", line 72, in <module>
import email.message
File "C:\python\lib\email\message.py", line 10, in <module>
import uu
File "C:\myscript\uu.py", line 7, in <module>
options = webdriver.ChromeOptions()
AttributeError: module 'selenium.webdriver' has no attribute 'ChromeOptions'

エラーで実行できません。。助けてください

359 :aiueo:2018/04/15(日) 17:08:28.73 ID:xfCmajNI.net
できたー!!エラー治りました!

同じフォルダに入っていた、uu.pyというファイルを消したところ治りました
なぜ消したら治ったのか原因がよくわかりません
uu.pyをフォルダに入れると、またエラーが発生します

作っちゃいけないファイル名などがあるのでしょうか。。

360 :デフォルトの名無しさん:2018/04/15(日) 17:21:04.60 ID:CIuag2/D.net
>>359
ライブラリと同じファイル名使ってるだけ
https://docs.python.org/3/library/uu.html

361 :aiueo:2018/04/15(日) 17:30:47.57 ID:xfCmajNI.net
>>360
ありがとうございます。もともとuu.pyというファイルがあったのですね
適当にaa.py test.py cc.py kkk.pyとか適当ファイルいろいろ作って試してました・・
勉強になりました、ありがとうございます

362 :デフォルトの名無しさん:2018/04/15(日) 17:45:04.14 ID:CIuag2/D.net
>>361
ライブラリ作ってるならこの辺りも見ておいた方がいい
https://docs.python.org/ja/3/py-modindex.html

363 :aiueo:2018/04/15(日) 17:51:34.26 ID:xfCmajNI.net
>>362
プログラミングやったことない超初心者です。
スクレイピングでやりたいことがあるのでpythonインストールしてみました。

ライブラリとファイル名、かち合わないように気を付けます
わざわざありがとうございます!

364 :デフォルトの名無しさん:2018/04/15(日) 18:14:44.88 ID:WdW8h5cl.net
openpyxlを使ってExcelファイルのA2セルの値を取り出そうとしたんだけど
そのセルに書かれている計算式が取り出せました。

計算式ではなく、計算結果を取り出すにはどうしたらよいの?
こう書きました→print(ws['A2'].value)

365 :デフォルトの名無しさん:2018/04/15(日) 18:33:21.95 ID:5wGddKlA.net
>>364
使ったことないけどここら辺の話かな?
http://cloudsquare.jp/hibiki/blog/2018/01/30/openpyxl/

366 :デフォルトの名無しさん:2018/04/15(日) 22:39:51.61 ID:UX4y5Mn1.net
ありがd

367 :デフォルトの名無しさん:2018/04/15(日) 23:29:55.35 ID:9jzNqCls.net
長文になって申し訳ないけど、メソッドに関する質問。

1.Pythonで始めから使えるメソッド(.replace()とか)に呼び名はある?
 ビルトインメソッド?、ビルトイン関数?、メソッド?それとも他の呼び名?

2.help()関数のようにビルトインメソッド(仮)の定義を見ることはできるか?
 print(help(replace))と入力すると
 >>>NameError: name 'replace' is not defined となるため見れない

3.ビルトインメソッド(仮)はなぜ存在しているのか?ビルトイン関数で代替できないのか?
 メソッドがオブジェクト指向版の関数という自分の解釈なら、
 メソッドはライブラリかユーザー定義用だけにしておいて、
 ビルトインオブジェクト(クラス)のメソッドなんて用意するべきではないと思うから。

以上3点です。よろしくお願いします。

368 :デフォルトの名無しさん:2018/04/15(日) 23:32:53.30 ID:xpwShDOv.net
help(str.replace)

369 :デフォルトの名無しさん:2018/04/15(日) 23:42:33.10 ID:9jzNqCls.net
>>368
ほんとだ。ありがとうございます。
メソッドを呼び出す際は、ここでもオブジェクトが必要だったんですね。
そして、print()関数は不要でしたねすみません。

370 :デフォルトの名無しさん:2018/04/15(日) 23:44:00.12 ID:xpwShDOv.net
1.間違い
3.何が言いたいのか意味が判らない

371 :デフォルトの名無しさん:2018/04/16(月) 00:48:43.62 ID:+F/asDGP.net
>>370
1.はクラスメソッド、スタティックメソッドのことを言っているような気がするが、
XXXclass.replace()なクラスメソッド、スタティックメソッドはあったっけな感じだが....

>>367
3.に関してはPythonを作っている奴らにきくのが一番良い
ついでにjava,rubyも同様だからjava,rubyスレでも尋ねたほうが良いかも

372 :遊園地:2018/04/16(月) 07:50:52.76 ID:AgptP9w5.net
>>367
3
クラス継承したら良いと思う。

373 :デフォルトの名無しさん:2018/04/16(月) 12:31:15.81 ID:xRFNapub.net
ビルトイン型のメソッドはその型固有の機能だから
ビルトイン関数とは用途が違うんじゃないの

374 :デフォルトの名無しさん:2018/04/16(月) 13:13:36.14 ID:qlfABgAK.net
Ruby では、継承できて、インスタンスを作れる、class と、
継承もできず、インスタンスも作れない、module の2つがある

classに、moduleをインクルードして、機能を付け加えることを、Mix-in と言う

module内の関数は、多くのクラスで使えるような、汎用的なもの

375 :遊園地:2018/04/16(月) 16:33:02.84 ID:AgptP9w5.net
Recognizing hand-written digits

 画像ファイルを読み込んで結果だけ取得したい。

どの様なコードになりますか?

この場合は、421です。
http://fast-uploader.com/file/7079419507797/

376 :デフォルトの名無しさん:2018/04/16(月) 16:40:52.73 ID:r1/f7Sud.net
captcha禁止

377 :遊園地:2018/04/16(月) 17:43:27.26 ID:AgptP9w5.net
これなら、大丈夫ですか?
http://fast-uploader.com/file/7079423736170/

378 :デフォルトの名無しさん:2018/04/16(月) 17:56:18.32 ID:ZFIHRn8x.net
>>376
ちなみに何で?

379 :遊園地:2018/04/16(月) 18:50:38.80 ID:AgptP9w5.net
>>378
https://animeflv.net/ver/42639/getsuyoubi-no-tawawa-1

OK? Low grade

380 :デフォルトの名無しさん:2018/04/16(月) 19:33:30.30 ID:gUfDVwYo.net
url見てから回避余裕でした。アニ豚死ね

381 :デフォルトの名無しさん:2018/04/16(月) 20:14:00.57 ID:5B9l6nEL.net
chainer_pix2pixを自前で用意した画像でやってみたんですが
updater.pyの70行辺りで
x_in[i,:] = xp.asarray(batch[i][0])
Exception in main training loop: Broadcasting failedというエラーが出ました
なんとかnumpyのコピーのエラーという事が分かったのですが
どう直したらいいのか分かりません・・・お助け下さい・・・
batch[0][0]とx_in[i,:]の中身の画像これです
https://imgur.com/a/PViEJ

pix2pix
ttps://github.com/pfnet-research/chainer-pix2pix

ここの解説見ながらちょっとづつやってみたんですがほぼほぼわかってないです・・・。
ttps://spjai.com/pix2pix-image-generation/

windows 10です

382 :デフォルトの名無しさん:2018/04/16(月) 20:37:00.64 ID:OxnvPd0M.net
エラーはわかるが、お前が何をやってるのか全くわからんから答える気にならん

383 :デフォルトの名無しさん:2018/04/16(月) 21:02:19.87 ID:5B9l6nEL.net
>>382
すいませんでした
参考にしたサイトにある魚の線画を描くと魚っぽい写真になるの逆で
カラーの線画のない画像から黒い線画を書かせるという事がやりたいです。

384 :遊園地:2018/04/16(月) 21:06:58.35 ID:AgptP9w5.net
失礼ww IQ220ぐらい有るんですけど

>>375
が解りません

 教えて下さい
http://fast-uploader.com/file/7079435955779/


ぶひぶひぃ ぶひうぃいぃぃぃぃいいっwwww

 ぶひぃいいいいいいいいいいいいいいいwwwwwwwwwww

385 :デフォルトの名無しさん:2018/04/16(月) 21:26:32.35 ID:M9Gf/bCG.net
プログラミング自体初心者&独学です
aizu online judgeを順に解いていっているのですが以下のコードでRuntime Errorが出てしまいました。
なにが悪いのかまったくわからないので教えてください!
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_4_B


pi = 3.14159265359
r = int(input())
area = pi*pi*r
length = pi*r*2

print('{:.5f}'.format(area),'{:.5f}'.format(length))

386 :遊園地:2018/04/16(月) 21:31:05.09 ID:AgptP9w5.net
計算式が違う

387 :デフォルトの名無しさん:2018/04/16(月) 21:39:21.07 ID:M9Gf/bCG.net
小学生からやり直します(汗)
以下に修正しても同じエラーになるんですがなぜでしょうか(泣)

pi = 3.14159265359
r = int(input())
area = r*r*pi
length = 2*r*pi

print('{:.6f}'.format(area),'{:.6f}'.format(length))

388 :デフォルトの名無しさん:2018/04/16(月) 21:47:49.19 ID:M9Gf/bCG.net
なんかこれで通りました。
import math
r = float(input())
pi=math.pi
s = ( r ** 2 ) * pi
l = 2 * r * pi
print(s, l)

389 :遊園地:2018/04/16(月) 21:49:02.84 ID:AgptP9w5.net
試したけど、受け取り値がint型だけど、実際のテストケースではフロート型

390 :遊園地:2018/04/16(月) 21:53:12.17 ID:AgptP9w5.net
既に解決してるけど、12.3が123として計算されてるな。

391 :デフォルトの名無しさん:2018/04/16(月) 23:24:15.51 ID:ovdjG7M8.net
>>390
ありがとうございました!

392 :381:2018/04/17(火) 00:13:29.86 ID:3Zz6leMl.net
>>382
すいませんどこまで何をやったか、という事ですよね???
解説サイトにあったものをfacade_dataset.pyに丸っと上書き保存して
色のみの画像500枚をfacade/labelフォルダー
線のみの画像を500枚をfacade/baseフォルダーにいれて
同じように評価用画像もtest_dにdetabaseからとれるようにちょっと変えて
python train_facade.py -g 0 -o image --snapshot_interval 100実行したところエラーがでたって感じです
(学習用と教師用の画像は500枚用意はしたんですが
動くかどうかも怪しいのでいまは三枚づつしかフォルダーに入れてません)

393 :デフォルトの名無しさん:2018/04/17(火) 01:55:18.50 ID:PvksN2Vg.net
>>392
なんかすごいことをやっているな。俺には出来るレベルの物ではないな。
ただ、>>381のコードはそっくりそのままgithubよりもって来た物なのか?
それとも何がしらの変更を加えている?
>>381は、コードはgithubのままだけどそれだとエラー出るからエラー出ないように修正したいてことかな
ひょっとしたら、中身の画像によっては要コード修正なのかもしれないのかもしれないが

394 :デフォルトの名無しさん:2018/04/17(火) 04:43:58.56 ID:QMWYQNUe.net
>>385
print(f'{area:.5f} {length:.5f}')

395 :デフォルトの名無しさん:2018/04/17(火) 05:33:09.17 ID:Z6U7XFnZ.net
>>381
ブロードキャスト出来ない状態だから、テンソル(numpyアレイ)の次元が合ってないんだろう
元ソースと自分のプログラムで両辺のshapeをプリントかデバッガで見て比較すれば間違えた箇所に気付くと思う

それでもダメなら、もっと簡単なmnistサンプルとかでnumpyの処理を勉強し直した方がいいかも

396 :遊園地:2018/04/17(火) 11:03:58.69 ID:nd6YqIWE.net
darknetで検出した結果だけをキャプチャーするのって、どうするの?
ダメなら、テラテイルで聞くわww

397 :381:2018/04/17(火) 22:12:58.91 ID:3Zz6leMl.net
>>393
いくつか変更というか、
どちらかが途中で変更されたみたいで
そのままだとエラー出る感じです

>>395
ありがとうございます
numpyほぼほぼわかってなかったので
numpy勉強して小さい画像サンプルで
元のと同じ条件でやってみたものと
自分のやってるものと比較してみます。
何をやっていいのかもわからなかったんで
書いてもらった単語調べるだけでヒントザクザクで助かります
ほんとありがとうございます

398 :デフォルトの名無しさん:2018/04/18(水) 01:23:19.17 ID:2l4GI+/x.net
chainerはデータのパックが面倒くさいからあまり好きじゃない
numpy→タプルデータセット→イテレータ→アップデータ→トレーナー

tensorflowはshape未定義のプレースホルダーのままテンソル演算をさせる所が分かりにくい
最終的にC++やC#のアプリに組み込みたい時はこれしかないけど

kerasはnumpyを縦ベクトル化してfit関数に渡すだけだから初心者向けで一番楽だと思う
日本語の解説本が少ないけどwebの記事はそれなりにあるはず

399 :デフォルトの名無しさん:2018/04/18(水) 08:31:52.18 ID:aHPh72wK.net
インポートエラー、format_excみたいなやつが永遠と出るんだがなぜでしょうか...
3日前から急に発症して、前回まで動いてたpyファイル全て実行できない...

python入れ直したり、anacondaで入れ直したりしたけど改善されないです

400 :デフォルトの名無しさん:2018/04/18(水) 09:05:12.90 ID:IyxAGhJK.net
何かが、自動update されたのかも

例えば、moduleA が、moduleB 2.2 に依存しているとする。
ここで、Bが2.3 に、updateされたため、Aが使えなくなったとか

それか、環境変数PATH を上書きしたとか

401 :遊園地:2018/04/18(水) 09:54:49.07 ID:EkJY2Tio.net
anaconda入れ直すしか無いなw

402 :デフォルトの名無しさん:2018/04/18(水) 13:23:44.85 ID:KAGSbSSN.net
Anacondaでトラブってるの見る度に気持ち良くなるわ
バカすぎ

403 :デフォルトの名無しさん:2018/04/18(水) 16:20:24.68 ID:WEKhN2py.net
数字や数字を変えながら、ちょっとスクリプトを作る場合、
def(サブルーチン?関数?) の場所について、物理的に下側にないとエラーが出てしまう
プログラムの書き換える度に、下までカーソルを動かさないといけないし
地味に不便なんだけど、何とかならない?

404 :遊園地:2018/04/18(水) 16:39:07.37 ID:EkJY2Tio.net
深層部にif __name__ == '__main__':を持ってくるか。

clss XX():
def YY()
処理

なら、clss XXのdef YYを
def YY()
処理
として、classから外す。


タスクバーが邪魔なら、非表示か移動
スクロールが無いなら、スクロールが有るエディターに変更する。

出力結果なら、外部ファイルに保存して確認する。


クリックしたら、クリックした文字の横に移動できる。


状況が解らない。
 スクショ上げてくれたら、何か言えるかもな。

405 :デフォルトの名無しさん:2018/04/18(水) 18:50:18.12 ID:RFL5vDmV.net
>>399
×永遠と
○延々と

406 :デフォルトの名無しさん:2018/04/18(水) 23:23:28.17 ID:YRBnqMM/.net
初めまして。
よろしければ回答お願いします!
大学でpython3を使いブロックスというゲームのプレイヤーAIを作ろうとしているのですが、効率の良い攻め方を実現する方法が分かりません。
盤面の状況次第で臨機応変に対処できるようにしたいです。
何か良いアイデアはないでしょうか。
因みにpythonを扱うのはこの授業が初めてです。

以下ブロックスの詳細です!
http://saikoro-table.com/2016/12/05/blokus/

407 :遊園地:2018/04/18(水) 23:32:03.53 ID:EkJY2Tio.net
??

 ??? ?? ???


モンテ使って、機械学習で数百万回読み込ませば良い。

408 :デフォルトの名無しさん:2018/04/18(水) 23:43:26.51 ID:V0vvqvFn.net
alpha zeroのパクりならgithubにいくつか転がってるぞ

409 :デフォルトの名無しさん:2018/04/18(水) 23:45:52.84 ID:YRBnqMM/.net
>>407

すみません。自分含め班員もど素人しかいないので多分難しいです…

410 :デフォルトの名無しさん:2018/04/18(水) 23:50:57.82 ID:V0vvqvFn.net
難しくても丸パクりすればOK
理解は後からついてくる

411 :デフォルトの名無しさん:2018/04/18(水) 23:57:41.25 ID:V0vvqvFn.net
ちなみに素のモンテカルロ木探索だけだとあんまり強さが出ないかべらぼうな時間がかかる可能性があるので注意

412 :デフォルトの名無しさん:2018/04/18(水) 23:58:42.71 ID:YRBnqMM/.net
>>406

追記です。ボードの情報は board[X][Y]で与えられます。また、置ける場所をリスト?で返してくれる関数も与えられています。
ただこれをただ使ってるだけだと弱くて弱くて…笑
ということで、相手のピースとピースのつなぎ目を狙わせたいのですが、(そうすると強い)
いい方法解答お願いします。

413 :デフォルトの名無しさん:2018/04/19(木) 00:03:06.90 ID:K4+BGrIF.net
>>404
===test.py====
def learn(learn_mr,predict_mr):
maxrange = 15000
#・・・・・・・・・・・・
def iroiro:
maxrange = 15000
#・・・・・・・・・・・・
def iroiro2:
maxrange = 2
#・・・・・・・・・・・・
# def が大量に続く

###
input_file = 's1_x33x.txt' 例えばこの辺りを時々更新したい
f = open(input_file, 'r', encoding='utf-8')
Allf = f.read()
f.close()
Allf = Allf.replace("y","0 1 0 0 0") 例えばこの辺りを時々更新したい
row_step = 200
for row in range( row_step , 208900 ): 例えばこの辺りを時々更新したい
l_mr = mr[ row-row_step : row ]
p_mr = mr[ row : row+1 ]
dummy = learn(l_mr,p_mr)
dummy2 = iroiro(Allf)
print ("予備テスト完了")  例えばこの辺りを時々更新したい
###

エディタは秀丸で###と###の間を時々更新するばあい、言語によっては###間を先頭に書いて
下にサブルーチンをだらだら書いて必要に応じて呼び出す使い方ができるけどPythonだとどうすればいいかと思って
ショートカットキーで移動したり方法はあるけど、ファイルを開いてちょっと編集して閉じるみたいな使い方をすると意外とストレスで

414 :デフォルトの名無しさん:2018/04/19(木) 00:20:52.00 ID:4n9OXawP.net
>>403
関数の中にさらにインデントしたdefで関数を書けるから、ちょっとしたマクロっぽいことをしたい時は使う場所の近くに内部関数定義してる
あとは初心者には難しめだけどラムダ式とか

415 :デフォルトの名無しさん:2018/04/19(木) 00:54:21.32 ID:zrUS025p.net
>>413
このスレで有名になったperlさん?

416 :遊園地:2018/04/19(木) 02:43:06.18 ID:+uu+DOll.net
>>413
単純にリストにしたら?

[ [ファイル名], [置き換え] ]


classで纏めれるdefは纏める。
それから、継承して行く形かな。

https://ideone.com/4X41rB

print部分を適当な配列に渡す。ぐらいかな。


最後のfor文は、アイデアが出ない。

417 :デフォルトの名無しさん:2018/04/19(木) 03:37:44.72 ID:T1rC3373.net
>>413
forループの中でしか使わない関数なら、forループ内で内部関数としてdefをすることも可能
関数が大きい場合は、調整が必要な部分だけ内部関数に書いて、その関数内でもう一度外側の関数を呼ぶ二段方式もある

def outfunc(x):
外側の関数

for i in range(10):
def infunc(y):
調整が必要な部分
outfunc()
infunc() # 内部関数呼び出し

変更箇所が少ない関数を下に置きたいだけなら、メインシーケンスを def main(): などで囲んで関数化してから、
一番最後にインデント無しの main() か、if __name__ == '__main__': と インデント付き main() を一緒に書く

def main():
メインの処理
func()

def func(x):
外部関数の処理

if __name__ == '__main__':
main() # この時点で名前解決出来ていればエラーにならない

418 :デフォルトの名無しさん:2018/04/19(木) 03:39:32.00 ID:4mrmpy84.net
ブロックスについては、将棋・囲碁みたいに、評価基準を考える必要がある

1. 敵ピースの角に置く
2. 1マスのピースは、勝負所まで取っておく

まず、こういう高評価される手を列挙して、点数を付ける

AI の研究は、何年も掛かる

419 :デフォルトの名無しさん:2018/04/19(木) 03:50:24.69 ID:4mrmpy84.net
>>413
別のファイルに分けて、import すれば?

変数をコマンドライン引数で渡すとか、
設定ファイルに書いて読み込むとか

エディタは普通、VSCode を使う。
ソースコードのある範囲だけを、右クリックメニューから実行できる

普通、動的言語は関数定義を上に書かないと、関数を呼び出せない。
例外は、JavaScript で、関数の巻き上げ

420 :デフォルトの名無しさん:2018/04/19(木) 04:18:53.20 ID:T1rC3373.net
>>406
つなぎ目ならx,yからx+1,y+1までの4箇所の判定で対角2つ埋まってて2つ空いてる所を探せば良さそう
置ける場所リストの周辺の盤面を検索して、対角パターンを優先して、さらに出来るだけ大きいブロックを選べばいいと思う

全部の角の判定が正確に出来なくても、部分的にでも判定出来ればそこそこ強くなると思う

421 :デフォルトの名無しさん:2018/04/19(木) 04:24:10.12 ID:T1rC3373.net
>>420
訂正
対角2つが敵、1つが自分、1つが空白だった

422 :デフォルトの名無しさん:2018/04/19(木) 08:55:16.93 ID:5y+3njqT.net
>>418

ご回答ありがとです!因みに、あと二週間くらいで完成させなければならないのですが
点数つけるのは時間的にはどうなのでしょうか?

423 :デフォルトの名無しさん:2018/04/19(木) 09:02:53.03 ID:5y+3njqT.net
>>420

回答ありがとです!これは自分もしたいなって考えてたのですが、どう書けばいいか分からなくてですね…

疑問点を列挙すると
@判定の仕方
A判定後の評価
B現在使ってる置ける場所を教えてくれる関数が返してくるリスト?をその評価でソートできるのか。

って感じで前途多難です( i _ i )

424 :デフォルトの名無しさん:2018/04/19(木) 09:37:46.23 ID:4mrmpy84.net
評価基準を決めるには、何年も掛かる。
点数を決めて、敵AI と何千局も対戦して、微調整を続ける

将棋・囲碁もそう

425 :遊園地:2018/04/19(木) 09:54:14.94 ID:+uu+DOll.net
大前提がブロックスを完成済み。として、話が進んでるが、
ブッロク自体を作れてるのか気になる。

426 :デフォルトの名無しさん:2018/04/19(木) 10:09:51.11 ID:3+zW45NU.net
ガキの宿題手伝う必要ないでしょ

427 :遊園地:2018/04/19(木) 10:15:02.85 ID:+uu+DOll.net
期限が2週間も有り、大学費だしてるなら、

直接

  講師[先生]に聞いた方が良いよ。


むしろ、聞け。

 なんの為に学費だしてるんの?

428 :デフォルトの名無しさん:2018/04/19(木) 10:34:58.58 ID:5y+3njqT.net
>>424

そうなんですね!それは厳しい…( i _ i )

>>425

ブロックはアルファベットaから21字が割り振られて最初から与えられていて
置ける場所を
(X座標、Y座標、ブロックの形、回転)
のリストで返してくれる関数?を使ってます。

429 :デフォルトの名無しさん:2018/04/19(木) 10:37:55.70 ID:5y+3njqT.net
>>426

手伝ってくれたら嬉しいです

>>427

先生が答えてくれない先生でですね…
聞いても調べてくださいとしか言われないので
こちらにお邪魔させていただきました…

430 :デフォルトの名無しさん:2018/04/19(木) 10:56:08.16 ID:j5tv0M09.net
Pythonむずい!
なんでこんなむずいの?

431 :デフォルトの名無しさん:2018/04/19(木) 12:13:54.17 ID:cIc2YD7o.net
pythonてかやろうとしてることが難しいんじゃないの?
言語としては簡単な方でしょ、同じことを別の言語でやってみたら分かる

432 :デフォルトの名無しさん:2018/04/19(木) 12:17:59.12 ID:4mrmpy84.net
そりゃあ、ブロックスなんて答えが無いだろ

将棋・囲碁みたいに、対戦コミュニティがあるか?

まず、コミュニティへ行って、AI 同士で、何千局も対戦して、
微調整を続けないと、無理だろ

433 :デフォルトの名無しさん:2018/04/19(木) 12:19:39.36 ID:2nanKMvG.net
>>429
今時そんな殿様商売あるのかあやかりてぇ
いいなー先生様は

434 :デフォルトの名無しさん:2018/04/19(木) 12:23:58.79 ID:4mrmpy84.net
強いAI を作るのは無理だから、

とにかく、次に置けるマスだけを、リストに入れて、
その中からマスを適当に選んで、適当に選んだピースを置け

それで良い

435 :デフォルトの名無しさん:2018/04/19(木) 13:12:52.70 ID:f7DkAV9f.net
AIは可能な選択肢のうち、0点以上の最高得点手を打つ。同点時はランダム。初期値は0
AI同士に勝負させて、打った手は全部保存しておく。最終的に勝ったほうは手のそれぞれにプラス点、負け側はマイナス点
ってやろうぜw
それを二週間延々繰り返させたら強くなるんじゃなーい?

436 :デフォルトの名無しさん:2018/04/19(木) 15:02:28.67 ID:c48O4SX1.net
どんなゲームだか知らんけど
とある局面のとある手に対して、
その後は両者ランダムに打って終わらせる試行を100回くらい繰り返して
勝った回数をその手のスコアとすれば良い

437 :遊園地:2018/04/19(木) 16:16:23.30 ID:+uu+DOll.net
遊べる。ブロックスAIと言う課題なら

目安だと[GUI]は5日

ブロックスのAIを課題にするぐらいだと、逆算して
本人が半日から1日でブロックス自体が完成させれる段階で
長くても2日

残りの3,4日で
CPU AI をコレまでに教えた内容で、調整して下さい。みたいなモノ


どう、考えても[推測上の一日の固定時間 9時から20時45分]
[一日の作業量(思考)2,3時間]と過程しても、
2週間は多すぎる。

1日2日は前後する可能性が有るけど、辻褄が合わないな。


F欄大学か、なんちゃって専門学校かな?

438 :デフォルトの名無しさん:2018/04/19(木) 17:59:06.99 ID:hcjjAGnl.net
>>437

実験の一端でそもそもpythonもこの授業が初めてです。丸投げされました。

439 :デフォルトの名無しさん:2018/04/19(木) 18:01:31.06 ID:hcjjAGnl.net
回答していただいた方ありがとうございます。
参考になります。

440 :デフォルトの名無しさん:2018/04/19(木) 18:40:08.42 ID:VWrPY/vr.net
>>429
yahoo知恵袋の方がいいよ

441 :遊園地:2018/04/19(木) 18:44:18.50 ID:+uu+DOll.net
大学設定は嘘だな。

大学設定が本当だったら、今のお前に「そんな」課題だすアホ教員が悪いのか、
何も教えない大学で大金払ってる馬鹿なのか知らないけど、
質問内容で現在のレベルが分かる。

教えて貰うのに、
理解できてないなら、教えて貰ってないのと一緒。

442 :デフォルトの名無しさん:2018/04/19(木) 19:10:55.84 ID:ar7X8qES.net
>>440

行ってみます!

>>441

なんか自分お邪魔みたいだったですね…失礼しました。勉強します。

443 :遊園地:2018/04/19(木) 19:51:05.39 ID:+uu+DOll.net
おう。
大学受験に失敗して6年引き篭もってる俺には、
大学生は邪魔だぞいww

444 :デフォルトの名無しさん:2018/04/19(木) 20:10:30.03 ID:uEzvz53i.net
2週間ははっきり言って課題に対して期間がみじかすぎるよ。
python精通してる人でも強いAI作ろうとしたら2週間以上かかる。

まあルール部分は用意されてるようだからその分割り引くべきかもだけど。

445 :デフォルトの名無しさん:2018/04/19(木) 21:02:34.32 ID:uEzvz53i.net
2週間なら>>436くらいが適当だとおもう。
あんま強くならないだろうけど。

446 :遊園地:2018/04/19(木) 22:34:07.23 ID:+uu+DOll.net
(^p^)「あうあうあーwwwwwwww」

447 :デフォルトの名無しさん:2018/04/19(木) 23:25:56.00 ID:K4+BGrIF.net
>>416
コード紹介ありがとうございます。
まだ内容がしっかり決まって居無くってちょっと書き換えたいという時にはちょっと大げな感じになりますね
ある程度のコードの中が決まっていると良さそうですね


>>417
ありがとうございます
色々な方法があるのですね
今回の場合、mainを置く方法が手っ取り早そうです
ただ、試しに書いてみるとエラーが出ました
どこか間違えていますかね?


>>419
関数が巻き上げられるのはそこそこ一般的だと思っていました
IDEだとそんなこともできるのですか・・・
大昔、Exlipseを使っていたのですが重たくって重たくって使わなくなっていましたが検討してみようと思います
ありがとうございます。

448 :デフォルトの名無しさん:2018/04/19(木) 23:41:15.47 ID:FEDLlhkO.net
eclipse

449 :デフォルトの名無しさん:2018/04/20(金) 01:21:16.01 ID:p7k7S/mH.net
新年度始まって間もないのにpythonでブロックス+AIの課題が出るような学科は情報系の学科なのかな。
情報系の学科なら今流行りの機械学習系のことも普通にやるんだろうな

450 :デフォルトの名無しさん:2018/04/20(金) 03:06:20.06 ID:qxue6Zgp.net
横からなのですが>>187さんのWebアプリにしてはpythonでサーバー建ててブラウザで表示するで合ってますか?

451 :遊園地:2018/04/20(金) 08:57:52.56 ID:xu4ZA7YN.net
>>450

# sudo pip3 install bottle
# http://localhost:8080/hello/world

from bottle import route, run, template

@route('/hello/<name>')
def index(name):
return template('<b>Hello {{name}}</b>!', name=name)

run(host='localhost', port=8080)

452 :デフォルトの名無しさん:2018/04/20(金) 10:29:12.98 ID:WJk0jxxj.net
日本の大学じゃなさそう

453 :デフォルトの名無しさん:2018/04/20(金) 11:53:43.70 ID:bSpMfw5T.net
>>447
コード貼り付け忘れていました
# ===test.py===
def main():
x = "H"
for num in range(5):
func(str(num))

def func(x,str):
print (x + "ello " + str)

if __name__ == '__main__':
main()

# UnboundLocalError: local variable 'func' referenced before assignment

454 :デフォルトの名無しさん:2018/04/20(金) 12:18:17.84 ID:9v7e203Y.net
ブロックスてそんなに有名なゲームなんか?聞いたことないわ

455 :デフォルトの名無しさん:2018/04/20(金) 12:29:06.14 ID:WJk0jxxj.net
これか
https://studio.beatnix.co.jp/

456 :デフォルトの名無しさん:2018/04/20(金) 12:52:36.38 ID:DDZisBas.net
>>453
> def func(x,str):
の前に
> func(str(num))
の呼び出ししたらそりゃそうなるわな

457 :デフォルトの名無しさん:2018/04/20(金) 12:59:05.08 ID:CLWy02Nm.net
えっパイソンってホイストないの?
c系言語には大抵あるのに。
抽象度の高い処理頭の方に書いて、使用関数の実装はお尻のほうに置いとけて便利なのに

458 :デフォルトの名無しさん:2018/04/20(金) 13:00:03.95 ID:bSpMfw5T.net
>>456
ありがと
全部main()に入れるんだと勝手に思い込んでた

459 :デフォルトの名無しさん:2018/04/20(金) 13:02:16.40 ID:bSpMfw5T.net
Perlと比べてイライラすることがあったけど、
{
}
が不要なのはサクサク書けて良いな
Pythonの良いところまた1つ見つけた


>>457
perlしか知らないけど普段そういった使い方してたからあれば便利だよねー

460 :デフォルトの名無しさん:2018/04/20(金) 13:43:32.65 ID:szszCkSU.net
関数を書く順番はどうでも良いよ
関数は全部グローバルに書いといて、ファイルの最後でmainを呼べばオーケー

461 :デフォルトの名無しさん:2018/04/20(金) 13:46:22.55 ID:szszCkSU.net
ってか、>>453はdef funcのインデント下げれば動くだろう

462 :デフォルトの名無しさん:2018/04/20(金) 13:49:06.94 ID:bSpMfw5T.net
>>460
こういうこと?
# ===test.py===
def main():
 x = "H"
 y = "h"
 for num in range(5):
  func(x,str(num))
  func(y,str(num))

def func(x,str):
 print (x + "ello" + str)

def func2(y,str):
 print (x + "ello" + str)

if __name__ == '__main__':
 main()

463 :デフォルトの名無しさん:2018/04/20(金) 13:56:09.67 ID:bSpMfw5T.net
>>461
それについては456で教えて貰って解決した>>458

>>462
訂正
def func2(y,str):
 print (x + "ello" + str)

def func2(y,str):
 print (y + "ello" + str)

464 :デフォルトの名無しさん:2018/04/20(金) 14:06:06.09 ID:aZdt3WBn.net
呼ぶ側がfunc2になってないから動かないと思うけど、だいたいそういうこと

465 :デフォルトの名無しさん:2018/04/20(金) 15:27:31.37 ID:DDZisBas.net
>>457
そもそもpythonのdefは実行文だから

466 :デフォルトの名無しさん:2018/04/20(金) 17:50:44.02 ID:1rBd94+J.net
spyder使ってるんだけど、defの中の変数が実行後の変数エクスプローラに表示されなくなるんだけど、表示させる方法ない?
もちろん実行時はその変数に値が格納されてるんだけど、defを出た瞬間に破棄されちゃうのかな。
いちいちprintしてデバッグするのめんどくさい

467 :デフォルトの名無しさん:2018/04/20(金) 17:54:59.99 ID:WJk0jxxj.net
global

468 :デフォルトの名無しさん:2018/04/20(金) 19:16:25.14 ID:9TOBYLLi.net
デバッガで何しようとしとんのやこのアホはw

469 :デフォルトの名無しさん:2018/04/20(金) 21:19:08.77 ID:bNn+sorS.net
デバッガはブレークポイント仕掛けたり1行ずつステップ実行しながら変数をウォッチするものだと思うので
実行中にリアルタイムで表示変えるのは超高速なエミュレータでもないと…;

470 :デフォルトの名無しさん:2018/04/20(金) 22:57:24.69 ID:Xu3EKzy5.net
>>467
globalにすれば出来るのは知ってるけど、いちいち関数化したのを戻すのが面倒だから他に方法がないのかと思って。

>>469
リアルタイムでみたいわけじゃなく、プログラム実行後にメモリに残った変数を確認したいって意味ね。

おかげ気づいたけど、defを抜ける直前にブレークポイント置いてそこで確認すりゃあいのかな。けど関数の分割多いと辛いな。

471 :デフォルトの名無しさん:2018/04/20(金) 23:08:48.76 ID:k7m69UuR.net
ログ吐くようにしとけよ

472 :デフォルトの名無しさん:2018/04/20(金) 23:18:23.85 ID:k7m69UuR.net
printめんどくさいとか言ってるがある程度のサイズのあるプログラムはログ残したほうが結局は作業がはかどる。

473 :遊園地:2018/04/20(金) 23:47:55.05 ID:xu4ZA7YN.net
ログはprintでは無いと言う事を肝に免じて置いて下さい。

474 :デフォルトの名無しさん:2018/04/21(土) 00:18:21.37 ID:NjF1F28w.net
>>473
ログをprintで書くことで悦に入っています。

475 :デフォルトの名無しさん:2018/04/21(土) 00:46:49.28 ID:SeoWSMd7.net
>>472
printがめんどくさいと言う人ならログ出すように変更するのもめんどくさいになるだろう。
めんどくさいのいやだいやだで、(コードに手を入れないで)
ツール(デバッガ)で楽々出来るようにしたいにニダと言う感じだろう
実運用ではこのログはイラネなんだろうが。

476 :デフォルトの名無しさん:2018/04/21(土) 01:00:05.67 ID:YdpuWmPR.net
肝に免じてどうする
肝は銘ずる(刻みつける)ものだ

477 :デフォルトの名無しさん:2018/04/21(土) 01:10:45.10 ID:SeoWSMd7.net
>>476
遊園地のいるところは
肝に銘じてが
話し言葉で
>肝にめんじて
になるところなんだよ。
鉛(標準語では訛)がでたんだろ

478 :デフォルトの名無しさん:2018/04/21(土) 01:40:30.99 ID:jRiYYFVC.net
p2exeって日本語は扱えないのですか?

479 :デフォルトの名無しさん:2018/04/21(土) 03:00:26.77 ID:HWyKzA01.net
>>478
py2exeではなく?

480 :デフォルトの名無しさん:2018/04/21(土) 03:26:11.52 ID:jRiYYFVC.net
>>479
間違えました、py2exeです。日本語文字をprintしようとすると
UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequence
って出るんですよね。コードをutf-8にしたり、文字列の先頭にuを付けてみましたが、きちんとexeが生成されません

481 :デフォルトの名無しさん:2018/04/21(土) 07:09:29.13 ID:nN/toUY2.net
肝免わろすwww

482 :遊園地:2018/04/21(土) 07:29:31.66 ID:fW+0Fovn.net
>>477
あああーーーー

  それは、アカンww


明治時代の初期までなら、隣の県に行けば
言葉が通じないのもザラだったしなwww

483 :デフォルトの名無しさん:2018/04/21(土) 08:46:12.30 ID:HWyKzA01.net
>>480
んでもってPythonは2系をつかってるのか?
あるいはWindowsのユーザー名が日本語なのか。

素直に3系つかうことと
py2exeするときはあきらめて日本語を含まないユーザー名を作って
そこからやる

484 :デフォルトの名無しさん:2018/04/21(土) 15:11:14.68 ID:Jlfar8cI.net
py2exeは3.6に対応してないから、バイナリ作るならpyinstallerの方がいいと思う
セットアップファイル作る必要もなくて楽だし

485 :デフォルトの名無しさん:2018/04/21(土) 15:16:38.37 ID:K9lD61bw.net
bytesをfloat配列にする高速な方法無いでしょうか?
4バイトで1floatではなく、1バイトで0.0〜1.0の範囲の1floatの
同じ長さの配列が欲しいのですが

486 :デフォルトの名無しさん:2018/04/21(土) 16:19:45.05 ID:Jlfar8cI.net
pyinstallerで詰まったのは、pandasを使うスクリプトでエラーが出ることぐらい
pandasを 0.20.0 に落とせば通る様になると思う

487 :デフォルトの名無しさん:2018/04/21(土) 16:38:34.70 ID:Zke6MJB8.net
>>485
精度落ちて良いならいくらでもある

488 :デフォルトの名無しさん:2018/04/21(土) 16:42:03.35 ID:K9lD61bw.net
>>487
精度は構いませんので是非

489 :デフォルトの名無しさん:2018/04/21(土) 16:58:38.10 ID:V+d3uri5.net
正の数だけ?

490 :デフォルトの名無しさん:2018/04/21(土) 17:04:24.09 ID:yl7d1HXp.net
精度気にしないなら
0x00 = 0.0
0x01 = 0.004
0x02 = 0.008
...
0xFA = 1.0
0xFB〜0xFF は使わない
とか勝手に決めれば良いだけ

491 :デフォルトの名無しさん:2018/04/21(土) 17:09:59.96 ID:K9lD61bw.net
>>489
0.0〜1.0の正の数だけです

492 :デフォルトの名無しさん:2018/04/21(土) 17:22:36.40 ID:6J3G0l4e.net
>>490
それ普通に255.0で割る方が速いだろw

493 :デフォルトの名無しさん:2018/04/21(土) 17:26:25.82 ID:yl7d1HXp.net
そうか?
>>490 も 250 で割るだけだから速度は一緒だぞ

494 :デフォルトの名無しさん:2018/04/21(土) 17:30:44.93 ID:6J3G0l4e.net
>>493
250.0で割るのだと元のバイト列にある251〜255を1.0に丸める処理が必要になるだろ。
考えてから発言する習慣付けなよ。

495 :デフォルトの名無しさん:2018/04/21(土) 17:34:55.64 ID:yl7d1HXp.net
どうせ使わないんだからいいだろ

496 :デフォルトの名無しさん:2018/04/21(土) 17:45:08.29 ID:nWGazij5.net
おいおい256.0だろ…
おまえは1を0.1にするのに9で割ると言うのかい?

497 :デフォルトの名無しさん:2018/04/21(土) 18:23:41.65 ID:bgp2zzOH.net
>>485
256 しかないんだから float f[256] の配列作って変換すればいいんじゃね?

498 :デフォルトの名無しさん:2018/04/21(土) 18:33:33.34 ID:ZHkY3Ka/.net
頭いいな

499 :デフォルトの名無しさん:2018/04/21(土) 18:37:22.51 ID:CHrbK6wg.net
>>483 >>484
素直にパイインストーラーを使うことにします。ありがとうございました!

500 :遊園地:2018/04/21(土) 19:45:18.90 ID:fW+0Fovn.net
windows辞めて、Ubuntuにしたらデフォルトでpython2,python3入ってるよ。

 なんつってwwww  これぞwww 悪魔の囁きwwwww

501 :デフォルトの名無しさん:2018/04/21(土) 19:47:16.89 ID:fJguH7wu.net
いやシステムのPythonは使わないのか基本だぞ

502 :デフォルトの名無しさん:2018/04/21(土) 19:51:23.74 ID:Af+18o1F.net
それな
むしろデフォで入っていることが余計なトラブルの元になってる

503 :デフォルトの名無しさん:2018/04/21(土) 19:53:02.17 ID:SpcYsUEG.net
Pythonに依存した他のパッケージを動作させるためだけのものだよね
ユーザーが使ってはいけない

504 :デフォルトの名無しさん:2018/04/21(土) 20:04:52.49 ID:nN/toUY2.net
>>501
何に騙されてそんなガセネタ信じとるんやwwwww

505 :デフォルトの名無しさん:2018/04/21(土) 20:09:07.60 ID:+jzprnKY.net
UbuntuとかMacとかはpyenv入れてからAnaconda入れてとか結構面倒くさい

506 :遊園地:2018/04/21(土) 20:54:58.27 ID:fW+0Fovn.net
Ubuntu系のlinux mintにAnaconda入れてる。
起動確認の初回しか、動かしてない。

507 :遊園地:2018/04/21(土) 21:45:02.32 ID:fW+0Fovn.net
オブジェクトをヒープ上にメモリ確保する場面は
どんな時ですか?

508 :デフォルトの名無しさん:2018/04/21(土) 22:00:51.41 ID:ZHkY3Ka/.net
逆にヒープ以外にどこにメモリを確保するんだ?
それが答えじゃね?

509 :デフォルトの名無しさん:2018/04/21(土) 22:05:01.51 ID:zxSpDS2l.net
>>504
開発環境とシステム分けておくの大事だぞ

510 :遊園地:2018/04/21(土) 22:16:07.69 ID:fW+0Fovn.net
実行できない。

  へるぷ

def grade(score, breakpoints=[60, 70, 80, 90], grades='FDCBA'):
□i = bisect(breakpoints, score)
□return grades[i]

[grade(score) for score in [33, 99, 77, 70, 89, 90, 100]]

511 :デフォルトの名無しさん:2018/04/21(土) 23:13:25.47 ID:ZHkY3Ka/.net
実行できないってどういうことよ
エラーメッセージがあるならそれも載せろよ

まあわざと載せてないのかもしれないけど

512 :デフォルトの名無しさん:2018/04/21(土) 23:56:54.79 ID:XrHLCoEo.net
>>510
>>509が言っているだろ。開発環境とシステム分けてないから実行できないんだよ

513 :遊園地:2018/04/22(日) 07:24:22.58 ID:S/aJuoMN.net
NameError: name 'bisect' is not defined

関数内にglobal と書いてもダメだった。

514 :遊園地:2018/04/22(日) 07:35:06.34 ID:S/aJuoMN.net
import bisect

で、TypeError: 'module' object is not callable

$ sudo pip3 install bisect で

Could not find a version that satisfies the requirement bisect (from versions: )
No matching distribution found for bisect


要件bisectを満たすバージョンを見つけることができませんでした(バージョンから:)
二等分線に一致する分布が見つかりませんでした

515 :デフォルトの名無しさん:2018/04/22(日) 07:59:57.89 ID:6LlZ0HWt.net
「みんなのPython」に書いてある

Anaconda は、Windows など予め、Python が入っていないOS が対象です。
Linux など、最初からPython が入っている場合は、プロに聞いて下さい。
この本では教えませんw

つまり、Pythonがバッティングするから。
Python3 というコマンドが、Python 3.4, 3.5 のどれを指すのか、
OSとAnacondaで、異なるバージョンの場合に厄介だから

$ which python3
/usr/bin/python3
$ which python3.5
/usr/bin/python3.5

$ file /usr/bin/python3
/usr/bin/python3: symbolic link to python3.5

つまり、Windows10・WSL・Ubuntu16.04 では、python3 → python3.5

異なるバージョンを使いたければ、仮想環境のvirtualenv(venv)を使って、
環境変数PATH を上書きしないといけない

activate ってすると、PATHが上書きされて、
システムとは異なるバージョンと結び付けられる

それか、Docker を使うとか

516 :遊園地:2018/04/22(日) 08:55:24.40 ID:S/aJuoMN.net
Anaconda使ってないよw

Geanyから起動してる。

linux mint18 mate
python 3.6.3

517 :遊園地:2018/04/22(日) 08:56:08.08 ID:S/aJuoMN.net
システムバージョンの
python 3.5.2でも試したけど、一緒のエラー内容だった。

518 :遊園地:2018/04/22(日) 09:06:16.89 ID:S/aJuoMN.net
公式から、ライブラリ落として
入れないと駄目とか?

分からない。

519 :遊園地:2018/04/22(日) 09:28:09.74 ID:S/aJuoMN.net
本当に分からなかったので教えて貰いました。

https://teratail.com/questions/122985

import bisect
では、なく。

from bisect import bisect
と、記載しなければ成らなかった模様です。

520 :遊園地:2018/04/22(日) 09:30:23.48 ID:S/aJuoMN.net
皆さん、いろいろと
ありがとう、ございました。

521 :デフォルトの名無しさん:2018/04/22(日) 10:07:45.92 ID:clJAmZnE.net
help(help)について
help関数の定義を見たくてhelp(help)を実行したところ、
以下のような出力がありました。

Help on _Helper in module _sitebuiltins object:

class _Helper(builtins.object)
| Define the builtin 'help'.
|
| This is a wrapper around pydoc.help that provides a helpful message
| when 'help' is typed at the Python interactive prompt.
|
| Calling help() at the Python prompt starts an interactive help session.
| Calling help(thing) prints help for the python object 'thing'.
|
| Methods defined here:
|
以下略

見たいのは_Helper in module _sitebuiltinsではなくhelp function、
以下のような説明です。

help(object): help on object or class of object, except
help('name'): help on object/module named 'name'
help(): run utility, which starts with utility help

どうしてそれが出ないのか、ご教授いただけるとありがたいです。
Python3.6、pycharmを使用しています。

522 :デフォルトの名無しさん:2018/04/22(日) 10:29:12.32 ID:Nfi3M0G/.net
>>519
質問をすることでしか得られない、回答やアドバイスがある。
15分調べてもわからないことは、質問しよう!

何このサイト
入門者でも質問OKなのかな?
このスレだと15分調べて質問したらggksとか言われそうなんだが

523 :遊園地:2018/04/22(日) 10:35:53.40 ID:S/aJuoMN.net
>>522
このレベルから受け付けてる。
https://teratail.com/questions/10173

524 :デフォルトの名無しさん:2018/04/22(日) 11:17:20.23 ID:Nfi3M0G/.net
>>523
色々な意味で驚いた
間口が広いはずの、2/5chの存在意義が・・・
ただ、入門者だと実際ここで躓く事もあるし
ディレクトリ構造って実際理解するの結構大変
分かってるとツリーになってると言えるし、そもそも何が大変なのか説明する方が難しいレベルだし・・・
そういえば、最近のOSってアドレスにあるパスが一部しか書いてなかったりするけどみんな困らないのかな?
昔のOS使ってるとパス辿ればいいと分かるけど、パスの概念を勉強する機会が減りそう

525 :デフォルトの名無しさん:2018/04/22(日) 11:28:31.70 ID:WmJ9TmOv.net
>>524
同意を求めるのじゃなくて質問すれば答えてくれんじゃね?そうゆうの?

526 :デフォルトの名無しさん:2018/04/22(日) 11:45:11.71 ID:3qJWMYht.net
python導入の仕方がわからない。。。

527 :デフォルトの名無しさん:2018/04/22(日) 12:05:00.81 ID:8GLco50w.net
>>526
teratailで質問するとここと違いやさしく丁寧に教えてくれるよ

528 :デフォルトの名無しさん:2018/04/22(日) 12:18:40.18 ID:bQIDMX1u.net
>>526
グーグルでpython インストール で検索。
以上。

529 :遊園地:2018/04/22(日) 13:19:51.68 ID:S/aJuoMN.net
>>526
ネタだと思うけど、公式から自分が使用してるOSを選ぶ。
https://www.python.org/downloads/

32bit PCだと 64bit版は動かせない。

x86 32bit
x86-64 64bit

530 :デフォルトの名無しさん:2018/04/22(日) 13:21:25.71 ID:6LlZ0HWt.net
ここは、Python の初心者用のスレだろ。
言語だけの初心者

PC・OS・情報処理の初心者用ではない。
Python以外の事は、知っているべき

531 :遊園地:2018/04/22(日) 13:21:58.00 ID:S/aJuoMN.net
win機で特に理由が無いなら、
Windows x86-64 executable installer

Ubuntuならコッチみてくれ。
https://www.python.jp/install/ubuntu/index.html

532 :遊園地:2018/04/22(日) 13:23:09.27 ID:S/aJuoMN.net
>>530
最初に、どれ動かして良いのか分からなかったからww

 全部ダウンロードして、試した俺が居るぞww

533 :デフォルトの名無しさん:2018/04/22(日) 14:04:12.27 ID:Nfi3M0G/.net
>>530
でもなぁー
毎日PCの電源を入れている人ならともかく
例えば高校数学にコンピュータあるけどあれするだけでもプログラミングソフトのセットアップって
重要で意外と難易度が高い
かといって、WindowsOS向け、Pythonセットアップスレとか作っても多分はやらない
ただ、少し慣れてきてUbuntuとかtensorflow-gpuとか入れろと言われるとトラブってる人も多いし
その記事だけでアフィが成り立つレベルだよ

534 :デフォルトの名無しさん:2018/04/22(日) 16:22:41.42 ID:3qJWMYht.net
526です。pythonのコード書くのはコマンドプロントだけ?

535 :デフォルトの名無しさん:2018/04/22(日) 16:26:30.71 ID:3qJWMYht.net
pythonのエディタはWindowsのコマンドプロントだけ?

536 :デフォルトの名無しさん:2018/04/22(日) 16:57:42.88 ID:/RR+q6wr.net
>>533
学校も含めて他人のPCにインスコするときは
VM用意してその中で遊ぶのがマナー

537 :デフォルトの名無しさん:2018/04/22(日) 17:08:09.84 ID:PsQCMKRd.net
>>530
言語だけの初心者=PC・OS・情報処理の初心者やけど
よっておまえもなw

538 :遊園地:2018/04/22(日) 17:52:06.12 ID:S/aJuoMN.net
>>536
それは無いよ。

USBブートで遊ぶべき。

539 :デフォルトの名無しさん:2018/04/22(日) 19:12:05.56 ID:Nfi3M0G/.net
>>536
VMってシステムに深く入り込むから大変なことになる
というかLANが使えなくなって半日嵌った

540 :デフォルトの名無しさん:2018/04/22(日) 19:37:52.67 ID:HOpx3haN.net
他にもいっぱいあるよ

541 :デフォルトの名無しさん:2018/04/22(日) 19:48:31.90 ID:H/AU6k7y.net
>>539
???
VMware PlayerとかVirtualPCなんかだと普通のアプリケーションと変わらんぞ
ゲスト側のネットワーク設定はちょっとコツが要るけど

542 :デフォルトの名無しさん:2018/04/22(日) 21:53:07.67 ID:2Fk6o3gK.net
アップデートしたら、仮想SW死んだことがある
環境的に物理的なトラブルと切り分けが調べられなくて泣きそうになった

543 :デフォルトの名無しさん:2018/04/22(日) 21:57:51.54 ID:2Fk6o3gK.net
hyper-vだったけどね

544 :デフォルトの名無しさん:2018/04/22(日) 22:24:34.38 ID:SkZxcoIM.net
wxpythonでボタンをクリックしたら別のpyに書いたウィンドウを表示させているのですが、開いたpyウィンドウを閉じるともとのボタンをクリックしても再実行されません。
importは一度だけというのはわかっているのですが・・・

どのような記述をすれば閉じても何度でも再実行できるようになるのでしょうか。

教えて下さい。

545 :遊園地:2018/04/22(日) 23:01:16.94 ID:S/aJuoMN.net
>>544
https://ideone.com/

に全部 ソース貼れw

 それを見てから応える

546 :デフォルトの名無しさん:2018/04/22(日) 23:03:22.02 ID:6LlZ0HWt.net
wxpython を説明している、サイトを見て、勉強する

547 :デフォルトの名無しさん:2018/04/22(日) 23:35:12.62 ID:GW1847bJ.net
>>544
5chのPythonスレのレベルを超えた質問
teratailで尋ねたほうが良いよ

>>546
このスレで出来る回答はそんなもんだよな

548 :デフォルトの名無しさん:2018/04/23(月) 08:33:18.26 ID:1C6OTR8X.net
https://ideone.com/OtTmrTです!

549 :遊園地:2018/04/23(月) 10:37:49.00 ID:/QV9I6Db.net
>>548
実行ボタン処理が定義されて無いから?

詳しい人、どうぞww

550 :デフォルトの名無しさん:2018/04/23(月) 11:17:30.25 ID:DP/vD1RL.net
pythpn初心者だけどオブジェクト指向分からな過ぎて死にそうです
何かおすすめの本ありますか?

551 :デフォルトの名無しさん:2018/04/23(月) 11:18:44.42 ID:zsG77YNH.net
死んだ方がいいよ

552 :遊園地:2018/04/23(月) 11:30:33.57 ID:/QV9I6Db.net
厳し過ぎやろ

 俺が引いてんじゃねぇか!ww


[遊園地は]使い分けると深みに嵌まるから、この形式だけ抑えて後は垂れ流しだな。

https://ideone.com/VuRClI

553 :デフォルトの名無しさん:2018/04/23(月) 13:03:27.78 ID:HUlTGC1I.net
>>548
とりあえず、ボタン押してフレーム出すのはこう。


import wx
class ChildFrame( wx.Frame ):
def __init__( self, parent ):
super().__init__(parent, wx.ID_ANY)
sizer = wx.BoxSizer(wx.VERTICAL)
lb = wx.StaticText(self, wx.ID_ANY, "Hello!")
sizer.Add(lb)
self.SetSizer(sizer)
sizer.Fit(self)
class MainFrame( wx.Frame):
def __init__(self):
super().__init__(None, wx.ID_ANY )
sizer = wx.BoxSizer(wx.VERTICAL)
btn = wx.Button(self, wx.ID_ANY, "Push Me!")
sizer.Add(btn)
self.SetSizer(sizer)
sizer.Fit(self)
btn.Bind(wx.EVT_BUTTON, self.on_button)

def on_button( self, evt ):
child_window = ChildFrame(self)
child_window.Show()
if __name__ == "__main__":
app = wx.App()
frame = MainFrame()
frame.Show()
app.MainLoop()

554 :スッキリ厨:2018/04/23(月) 13:31:39.89 ID:jMm7sVs3.net
>>550
まずこの本で、オブジェクト指向を学ぶ。
スッキリわかる Java入門 第2版、2014

その後、この2冊をこの順に読む。
たのしいRuby 第5版、2016
みんなのPython 第4版、2017

この順番でやらないと、理解できないはず。
特に、オブジェクト指向の本は「スッキリ」しか存在しない

555 :デフォルトの名無しさん:2018/04/23(月) 14:31:38.43 ID:Lf5qXYif.net
>>553さん

ありがとうございます!
ただボタンを押した後のフレームを出す処理を他のファイルに書いています。

そういうやり方は一般的ではないのでしょうか?


def on_button( self, evt ):
import aaa

のようにaaa.pyを呼び出して処理させたいのですが、一回表示させて閉じると再表示させることができません。

556 :デフォルトの名無しさん:2018/04/23(月) 14:47:47.40 ID:HUlTGC1I.net
>>555
ファンクションの中でimportして、しかもそれだけでウィンドウを出すってのはすごく変。
四の五のいわずにやめた方がいい。

大体そんなやり方してたら親ウィンドウすら渡せない。

557 :デフォルトの名無しさん:2018/04/23(月) 14:51:26.42 ID:HUlTGC1I.net
>>555
子ウィンドウのコードを別のファイルにしたいなら、ChildWindowの定義部分を別ファイルにしてimportすればいい。

558 :デフォルトの名無しさん:2018/04/23(月) 15:10:44.56 ID:Sx+lupQ0.net
>>555
偉大なるこのスレの遊園地様が必死に質問しているteratailで聞いたほうがいいよ
処理を書いている他のファイルも提示して動くようにしてくださいと依頼すれば良い

559 :デフォルトの名無しさん:2018/04/23(月) 15:15:35.49 ID:sVI7fOBi.net
importは読み込んで実行というより
定義や宣言を読み込むため(だけ)に使うのが普通よね

560 :デフォルトの名無しさん:2018/04/23(月) 15:19:13.02 ID:Sx+lupQ0.net
>>557
>ChildWindowの定義部分を別ファイルにしてimportすればいい
ChildWindowの定義部分がある別ファイルのaaa.pyをimportしているのが
on_buttonのimport aaaなんだろ

561 :デフォルトの名無しさん:2018/04/23(月) 15:32:45.72 ID:sVI7fOBi.net
import aaa

 def on_button(…):
  child_window = aaa.ChildFrame(…)
  child_window.xxx = yyy
  …

こんな感じかね

562 :デフォルトの名無しさん:2018/04/23(月) 15:57:59.47 ID:sVI7fOBi.net
ついでにimportで1回しか実行されない原因はこれ
http://python.matrix.jp/pages/tips/import.html#id4
C言語でいうインクルードガード的なのが働いてる

563 :デフォルトの名無しさん:2018/04/23(月) 17:22:58.10 ID:Lf5qXYif.net
ありがとうございます、大変勉強になりました。
頑張ります!

564 :デフォルトの名無しさん:2018/04/23(月) 17:39:53.20 ID:HUlTGC1I.net
>>560
wx.Frame.Showをimportするファイルに書くなって意味なんだけど、伝わりませんか、、、そうですか、、、すみません。

565 :デフォルトの名無しさん:2018/04/23(月) 18:24:03.12 ID:NdLOIshu.net
わたしには伝わりました!

566 :遊園地:2018/04/23(月) 18:38:50.30 ID:/QV9I6Db.net
>>555
.pyファイルを1つの関数が代わり使うとは大胆だな。

単純に、 >>561
import aaa

aaa.pyファイルの中身を関数かクラスにする。

567 :遊園地:2018/04/23(月) 18:42:03.15 ID:/QV9I6Db.net
遊園地ww 公式ですと、こんな感じですなww

----aaa.py----
import bbb

bbb.A()

----bbb.py-----

def A():
print('Hello World')

568 :デフォルトの名無しさん:2018/04/23(月) 20:14:08.95 ID:vFsvQnxK.net
>>555
もしかしてimportするスクリプトにグローバルに書いてるのか
もしそうなら、面倒でも何か関数をdefして(例えばopen_window() とか名前を付けて)
その中にグローバルで書いてた処理を移動すべし

def on_button( self, evt ):
 import aaa
 aaa.open_window()

という風にすれば、on_button() を呼び出す度にopen_window()が確実に実行される

569 :デフォルトの名無しさん:2018/04/23(月) 21:07:24.03 ID:6SrNRF4N.net
568さん、今日1日でここまで教えていただけると思わなかったです!

ほんとありがとうございます!

570 :デフォルトの名無しさん:2018/04/23(月) 21:34:33.91 ID:Mytq4Fn/.net
>def on_button( self, evt ):
>import aaa
のaaa.pyのどんなことを書いてあるんだろ?

>>569
>>553のdef on_button( self, evt ): の処理部をaaa.pyに書いて
動くように出来る?

571 :553:2018/04/23(月) 21:59:54.79 ID:3UVOgM3N.net
ああわかったよ、書けばいいんだろ、、、

>>>aaa.py
import wx

class ChildFrame(wx.Frame):
<中略>

>>>main.py
import wx
from aaa import *

class MainFrame(wx.Frame):
<中略>

def on_button(self, evt):
child_frame = new ChildFrame(self, wx.ID_ANY)
child_frame.Show()

572 :553:2018/04/23(月) 22:06:09.88 ID:3UVOgM3N.net
すまん、インデントが消えた。

ちなみにwxの子ウィンドウには親の参照渡しとかないと、親を閉じたときにアプリケーションが勝手に終了してくれないから
アプリケーションのメインウィンドウ以外には親を渡した方が良い。
これはaaa.pyに子ウィンドウを表示するグローバル関数を定義する場合も同じ(関数の引数として親を渡せるようにする)
じゃないと、出したフレーム片っ端から閉じないとプログラム終了しなくなる。

573 :553:2018/04/23(月) 22:17:49.55 ID:3UVOgM3N.net
new ってなんだよ、、俺。
「new ChildFrame(・・・」のnewはいりません、ごめんなさい。

574 :デフォルトの名無しさん:2018/04/23(月) 22:22:44.80 ID:6SrNRF4N.net
奥深いっす…でも楽しみです!
ありがとうございます!

575 :デフォルトの名無しさん:2018/04/23(月) 22:34:59.73 ID:M4g+UNEZ.net
>>572
俺、超低脳でさっぱり分からないんだけど、
>wxの子ウィンドウには親の参照渡しとかないと、親を閉じたときにアプリケーションが勝手に終了してくれない
その親の参照渡しは>>571のどこに記述されているんだ?

576 :デフォルトの名無しさん:2018/04/23(月) 22:36:33.56 ID:3UVOgM3N.net
>>575
ChildFrameのコンストラクタの第一引数。

577 :デフォルトの名無しさん:2018/04/23(月) 22:40:44.90 ID:3UVOgM3N.net
ていうとわかりにくいか?

child_frame=ChildFrame(self・・・
のself

578 :デフォルトの名無しさん:2018/04/23(月) 22:51:42.66 ID:jJWBqt/a.net
遊園地召喚

579 :デフォルトの名無しさん:2018/04/23(月) 23:04:48.51 ID:M4g+UNEZ.net
>>577
俺の知識では理解は無理だが、その部分なのか(そもそも、クラスを理解している奴なら質問しないだろうが)
ついでに、
>>553>>571のような回答をくれればよかったんだろうがな(元の質問が別ファイルに子windowの記述がある)
一方、>>574は素直に>>553>>570のようにするにはどうすれば良い?と質問すればよかったんだろうが
超初心者は俺もだがコミュ力ないから回答得るのに遠回りするよな
このスレは>>576で出たコンストラクタも、これ何?レベルの奴が質問だろうからな

580 :デフォルトの名無しさん:2018/04/23(月) 23:14:47.88 ID:3UVOgM3N.net
すまんね。

553書いたときはクラス一つ別のファイルに移動してそれを使うことが出来ない人がwx使ってウィンドウ出せるなんて思ってなかったんだよ。

581 :デフォルトの名無しさん:2018/04/23(月) 23:27:13.13 ID:M4g+UNEZ.net
>>553
コミュ力ない人の質問だと本当に教えてほしいことが相手に伝わらないことが多いから
回答する人は要エスパー力だからな

582 :デフォルトの名無しさん:2018/04/23(月) 23:31:46.35 ID:M4g+UNEZ.net
>>581>>580

583 :デフォルトの名無しさん:2018/04/23(月) 23:52:25.59 ID:2sWKRyd2.net
以下のコードを実行するとエラーになります
どうすればいいのでしょうか・・・

y = 10
print(f'test y = {y}')

584 :デフォルトの名無しさん:2018/04/23(月) 23:56:38.04 ID:2sWKRyd2.net
すいません3.6から実装されたf文字列というんですね
3.5だからエラーになるわけだ(´・ω・`)

585 :遊園地:2018/04/24(火) 08:01:24.83 ID:G5LttnIJ.net
別バージョンのpython入れてから、物凄いトラブってる。

dpkg-deb: エラー: サブプロセス ペースト がシグナル (Broken pipe) によって強制終了されました
処理中にエラーが発生しました:


フォーカスの処理とかしてないが、呼び出すだけなら、コレで良い?
試しては無い。

def Sample():
sub_win = Tkinter.Toplevel()
sub_win.title(u"Sub Process")
sub_win.geometry("400x300")

Sample()

586 :デフォルトの名無しさん:2018/04/24(火) 08:37:58.18 ID:AdXJnnP5.net
馬鹿には無理

587 :デフォルトの名無しさん:2018/04/24(火) 10:09:50.76 ID:jhtbgK3V.net
jupyter labとnotebookどっも括弧やクォーテーションの補完が効かないんだけどデフォ?
それともなんかおかしい?

588 :デフォルトの名無しさん:2018/04/24(火) 14:47:46.65 ID:xQCRvp4n.net
553さんは普段仕事でpython利用されてるんですか??

589 :デフォルトの名無しさん:2018/04/24(火) 14:48:37.60 ID:QI4dBYy7.net
マルチ拝観

590 :デフォルトの名無しさん:2018/04/24(火) 15:37:30.64 ID:WvdWgq+O.net
現場ですぐに使える! Pythonプログラミング逆引き大全 313の極意 
って初心者向き?

591 :デフォルトの名無しさん:2018/04/24(火) 16:20:06.53 ID:dUrN2wLw.net
>>587
デフォルトでは補完されることになつているはず。
今の状態だとIpythonでも補完できないと思うが?

592 :デフォルトの名無しさん:2018/04/24(火) 17:07:25.08 ID:Mdvhp2Yn.net
すみません、質問です。
初歩的なことかもしれませんが、
Pythonを使うエディタで秀丸使ってるんですけど、
他のsublimeとかのほうが使いやすいですか?

秀丸だとインデント打つのが面倒で・・・。
ご回答よろしくお願いします。

593 :デフォルトの名無しさん:2018/04/24(火) 17:26:32.99 ID:KvfUX4Up.net
そのうちプログラム打つのが面倒とか言い出しそうだな

594 :デフォルトの名無しさん:2018/04/24(火) 17:28:48.89 ID:QI4dBYy7.net
秀丸は割と良い方

595 :デフォルトの名無しさん:2018/04/24(火) 17:39:44.58 ID:1D4v+3Mx.net
VSCode は?

596 :デフォルトの名無しさん:2018/04/24(火) 17:41:28.56 ID:ftYeuzTX.net
>>588
本業はc++
そっちでwx使ってるから、wx周りはそこそこ詳しいってだけ。
pythonは趣味。

597 :デフォルトの名無しさん:2018/04/24(火) 18:12:28.83 ID:eLoUapjt.net
意地張ってないでpycharmにしなさい。どうせpythonしか書かないでしょ。

598 :デフォルトの名無しさん:2018/04/24(火) 19:36:02.20 ID:8pq7pLvE.net
>>592
俺は扱えないけど、プログラムのためのエディタはvimが良いらしいらしいよ

>>597
低脳にはそんな素晴らしいIDEは猫に小判だろう
書くPythonだって100行もいかないだろうし、そして、モジュールの中を見ることもないだろう

599 :デフォルトの名無しさん:2018/04/24(火) 19:47:17.37 ID:h25jwsU+.net
>>591
ipythonでも補完できない。なんかなくちゃいけないファイルが無いんかなあ、探してみます。

600 :デフォルトの名無しさん:2018/04/24(火) 20:18:42.40 ID:Mdvhp2Yn.net
>>598
vimは関係ないですよ。
プログラミング書くのに適してませんし。

>>598
趣味でPythonやっている>>553さんに「低脳」って言うのは言い過ぎだと思いますよ。

601 :デフォルトの名無しさん:2018/04/24(火) 20:28:24.71 ID:PPDUXdzL.net
Vimが適してないとかアホか
お前がプログラミングに適してねえよマヌケ
一生懸命ひでまるおしてろ

602 :デフォルトの名無しさん:2018/04/24(火) 20:35:04.99 ID:Mdvhp2Yn.net
vimでプログラミングするって冗談じゃなかったのかw
これは真性だな・・・

俺はもう実務でPython扱ってるよ
すでに300行以上書いた
明日からちゃんとしたエディタインストールするわ

あとみんなレスするときはアンカー(>>)をつけるように
誰に対して言ってるのかわからない独り言みたいだからね

603 :デフォルトの名無しさん:2018/04/24(火) 20:46:20.64 ID:yGK7zMMt.net
配列の例題なのですが

str = "Hello"
str2 = ""
for n in str:
str2 = str2 + (n * 2) + '~'
print(str2)

これのstr2 = ""は何をする為に必要なんでしょうか?

604 :デフォルトの名無しさん:2018/04/24(火) 20:55:41.97 ID:8pq7pLvE.net
>>603
試しに、str2 = "" を #str2 = "" して見ればOK
str2 = [] や str=0でもOKだが

605 :デフォルトの名無しさん:2018/04/24(火) 20:57:15.34 ID:JriH9xMX.net
試しにコメントアウトしてみ?

606 :デフォルトの名無しさん:2018/04/24(火) 20:58:23.94 ID:JriH9xMX.net
あら、先越されたw

607 :デフォルトの名無しさん:2018/04/24(火) 20:59:12.40 ID:Mdvhp2Yn.net
>>604
えらい!
ちゃんとアンカーつけられたじゃないかw


今日も仕事頑張ったし
もう寝るわ
おやすみノシ

608 :デフォルトの名無しさん:2018/04/24(火) 21:04:38.83 ID:yGK7zMMt.net
コメントアウトしたらNameErrorと出ました。
これはstr2=""でとりあえず文字として定義してるってことですかね

609 :デフォルトの名無しさん:2018/04/24(火) 21:07:01.25 ID:8KBFlzDM.net
>>600
             「 ̄ `ヽ、   ______
             L -‐ '´  ̄ `ヽ- 、   〉
          /           ヽ\ /
        //  /  /      ヽヽ ヽ〈
        ヽ、レ! {  ム-t ハ li 、 i i  }ト、
         ハN | lヽ八l ヽjハVヽ、i j/ l !
         /ハ. l ヽk== , r= 、ノルl lL」
        ヽN、ハ l   ┌‐┐   ゙l ノl l
           ヽトjヽ、 ヽ_ノ   ノ//レ′
    r777777777tノ` ー r ´フ/′
   j´ニゝ        l|ヽ  _/`\
   〈 ‐ 知ってるが lト、 /   〃ゝ、
   〈、ネ..         .lF V=="/ イl.
   ト |お前の態度が とニヽ二/  l
   ヽ.|l         〈ー-   ! `ヽ.   l
      |l気に入らない lトニ、_ノ     ヾ、!
      |l__________l|   \    ソ

610 :デフォルトの名無しさん:2018/04/24(火) 21:07:54.72 ID:ChFyzKk0.net
>>607
まだ見てるよね
ちょっとお母さんと代わってくれる?
お宅のお子さんはちゃんと小学校に通わせましたか?
お猿の学校では駄目ですよ
って教えてあげないといけないんだ

611 :デフォルトの名無しさん:2018/04/24(火) 21:20:09.03 ID:8pq7pLvE.net
>vimは関係ないですよ。
>プログラミング書くのに適してませんし。
vimを使っている奴は、真性だな・・・と主張しているのか

612 :デフォルトの名無しさん:2018/04/24(火) 21:33:10.24 ID:dUrN2wLw.net
>>603
変数にstrが許されるのは小学生まで

613 :デフォルトの名無しさん:2018/04/24(火) 21:46:40.49 ID:gtAr5qY0.net
俺はvim使ってるけど確かにここの超初心者には勧めたくはないな

614 :デフォルトの名無しさん:2018/04/24(火) 21:48:12.19 ID:UZrLd4N8.net
まさかのリアル厨房ワロタw

615 :デフォルトの名無しさん:2018/04/24(火) 21:48:59.19 ID:T7P20eIK.net
実際vimでコーディングする人は多いよ
きちんとカスタマイズしてやればIDEより軽いし機能も必要十分で普通に実用的

616 :デフォルトの名無しさん:2018/04/24(火) 21:52:23.15 ID:8pq7pLvE.net
>>608
何のために、str2=""でとりあえず文字として定義が必要と思った?
str2 = str2 + (n * 2) + '~'

str2 += (n * 2) + '~'
として、とりあえず文字として定義を止めるとNameErrorと出るか?
ついでに、大きく変更して
str2 = 1 + 1 にしたら、str2はNameErrorとでるか?
最後に、NameErrorと出たのは
str2 = str2 + (n * 2) + '~'
のどれだ?(一番目のstr2、2番目のstr2、(n * 2)、'~')
中学あたりの数式計算で、
x = 1
y = y+x
としたとき、yの値は得られると思うか

617 :デフォルトの名無しさん:2018/04/24(火) 21:55:10.72 ID:BAt1Eldp.net
ぶっちゃけ君ら何歳?

618 :デフォルトの名無しさん:2018/04/24(火) 21:56:45.13 ID:T7P20eIK.net
>>608
for文の中でstr2から値を参照しようとしてる
定義していない変数を参照することは出来ないから、空でもいいから初期化しないといけない
初期化していないと「空であるかどうか」すら判定出来ない

619 :デフォルトの名無しさん:2018/04/24(火) 22:00:19.23 ID:UZrLd4N8.net
オレ2年やけど体壊して1年休学してるから本当は3年やからな
なめんじゃねーぞ

620 :遊園地:2018/04/24(火) 22:24:57.07 ID:G5LttnIJ.net
授業で入るなら、小中学生が増えてもおかしない。
ただ、5chに来るかは来ないかだと、来ないだろうけど。

621 :遊園地:2018/04/24(火) 22:26:08.73 ID:G5LttnIJ.net
>>592

Geany使ってる。

622 :デフォルトの名無しさん:2018/04/24(火) 22:32:00.39 ID:yGK7zMMt.net
>>616
>>618
空っぽの変数として定義する必要があったってことですね。
プログラム初心者なもんで申し訳ない・・

623 :デフォルトの名無しさん:2018/04/24(火) 22:41:45.33 ID:WvdWgq+O.net
>>592
普通に秀丸使ってるけどな
なんだかんだ言っても使い慣れたエディタが楽

624 :デフォルトの名無しさん:2018/04/24(火) 22:58:24.77 ID:DKMQJI1I.net
pythonで作ったツールをexe化して配布しようとおもうんですけど
二次配布防止するにはどうすればいいですか?
今考えてるのはアイパスとコンピュータ名とかでhash値作ってサーバーに登録。
ツール起動時に毎回サーバーに問い合わせる、とかです。
ライセンスというほど大それたものでもないので、理想はサーバーつかわずに
初回に起動したそのpcじゃないと使えなくして、からくりがバレれば二次配布できちゃう
程度の精度でもいいんですけど。。

625 :デフォルトの名無しさん:2018/04/24(火) 23:00:51.21 ID:8KBFlzDM.net
exeを入れたzipにパスワードかけろ

626 :デフォルトの名無しさん:2018/04/24(火) 23:01:00.08 ID:1D4v+3Mx.net
ドングルとか?

627 :遊園地:2018/04/24(火) 23:01:33.49 ID:G5LttnIJ.net
Q
 多言語みたいに型だけ宣言して置く方法とか有りますか?


int i
print(type(i))

# era-
SyntaxError: invalid syntax

628 :デフォルトの名無しさん:2018/04/24(火) 23:02:26.10 ID:BAt1Eldp.net
HDD/SSDに署名程度で良くね

629 :デフォルトの名無しさん:2018/04/24(火) 23:13:10.05 ID:WvdWgq+O.net
>>624
大した物でないならならzipにパスワードで良いんじゃね?
そのサーバ維持やメンテナンス延々とするつもりならいいだろうがドメイン維持だけでもそれなりのコストになりそう

630 :遊園地:2018/04/24(火) 23:19:38.12 ID:G5LttnIJ.net
>>624
起動時に、ユーザー名を拾って来て、適当なファイルに暗号化して入れる。

そのユーザー名と一致しなかったら、メッセージボック等を出して終了

631 :遊園地:2018/04/24(火) 23:22:31.35 ID:G5LttnIJ.net
バツ 起動時に
マル 初回起動時に

632 :デフォルトの名無しさん:2018/04/24(火) 23:24:30.20 ID:vOUBS5cl.net
pythonをバイナリ化出来たとしても、中の依存モジュールに1つでもGPLが入ってたらソース公開しないとライセンス違反になる
結局ソース解析されるだけの様な気がするけど…

633 :遊園地:2018/04/24(火) 23:24:54.14 ID:G5LttnIJ.net
win機で動くかわからないけど、下記が動作するか調べてみたら。

import os
T=EMAIL_SUBJECT_PREFIX = '[%s]' % os.uname()[1]
print(T)

634 :デフォルトの名無しさん:2018/04/24(火) 23:24:56.76 ID:DKMQJI1I.net
>>629
zipにパスワードって解凍して中身取り出せば再配布し放題ですよね?
レンタルサーバーは広告ありの無料とかでよいかなぁと。

635 :遊園地:2018/04/24(火) 23:26:30.59 ID:G5LttnIJ.net
んごぉーーー

from socket import gethostname
T=EMAIL_SUBJECT_PREFX = '[%s]' % gethostname()
print(T)

636 :デフォルトの名無しさん:2018/04/24(火) 23:31:45.21 ID:8KBFlzDM.net
>>634
じゃあダウンロードサイトにもパスワードかけとけ

637 :遊園地:2018/04/24(火) 23:37:44.84 ID:G5LttnIJ.net
>>634
心配しなくても、その程度のソフトなら二次配布なんて
しないよ。

638 :デフォルトの名無しさん:2018/04/25(水) 01:21:27.42 ID:kuotvUVn.net
>>636
ダウンロードサイトであーだこーだするなら、
ダウンロードさせるexeの内部に毎ダウンロードごとに異なるパスワード(hashとか)
を組み込んで、管理サーバーでこのパスとPC固有情報を関連付けすれば良いんじゃないのか。
管理サーバーを立てるぐらいの人ならこれぐらいは頑張って実現するだろう

>>624
それでexeの二次配布防止なるのか? exeは全て共通なんだろ。それで
管理サーバーはPC登録情報からexeが2次配布利用であると判断するんだ?
PCが登録しているかはわかると思うが

639 :デフォルトの名無しさん:2018/04/25(水) 02:36:01.53 ID:3okspJRg.net
オープンソースのライセンスを無視してバイナリ配布して
さらに自分だけコピープロテクトを掛けたりしたらサイトが炎上しそうだな

importするモジュールの選択にはくれぐれも気をつけてくれ

640 :デフォルトの名無しさん:2018/04/25(水) 04:16:24.63 ID:wUGQlgZi.net
全部バイナリ化せんでも
肝心な部分だけDLL化pydとかpyc化して
それが無いと動かないようにするだけでもいいのに

641 :デフォルトの名無しさん:2018/04/25(水) 05:17:35.88 ID:uQ1fCNpFH
Pysideで画像(aaa.jpg)をフルスクリーン表示後、0.5秒後フルスクリーン表示のまま次の画像(bbb.jpg)に切り替えたいのですがどうしたらよいでしょうか?
以下プログラムではaaa.jpgが表示され、そのまま動きませんでした。

import sys
import time
from PySide import QtGui

app = QtGui.QApplication(sys.argv)
pixmap = QtGui.QPixmap('aaa.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap)
screen.showFullscreen()
sys.exit(app.exec_())

time.sleep(0.5)

app = QtGui.QApplication(sys.argv)
pixmap = QtGui.QPixmap('bbb.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap)
screen.showFullscreen()
sys.exit(app.exec_())

642 :デフォルトの名無しさん:2018/04/25(水) 09:06:01.80 ID:00WI0MSP.net
>>634
過去何度もレンサバ撤退してる
数年経過して撤退したら日常で使ってたそのソフトが急に使えなくなる
更に開発者の君自身がそのソフトに興味を失っており(良くある話)コンタクトができない
無責任すぎでしょ
独自フォーマットの開発者とか見てても思うけど数は少なくても思いつきでやって
はしご外されると作ってる人の迷惑はかなりの物がある

643 :遊園地:2018/04/25(水) 10:04:00.25 ID:aZgfWxV+.net
二次配布とか考えなくても、Vectorに登録する審査も通ると思えないけどな。

644 :デフォルトの名無しさん:2018/04/25(水) 10:36:51.42 ID:NXDHFefE.net
なんでそんなにオコなの?

645 :遊園地:2018/04/25(水) 10:43:41.21 ID:aZgfWxV+.net
5chの伝統芸だからぁあああwwwwwwwwwwww

年間利用者0とかザラだしww

  公開したら分かるんじゃないww

646 :デフォルトの名無しさん:2018/04/25(水) 10:47:32.52 ID:00WI0MSP.net
それはないと思う
ベクターにサンプルプログラムの教科書に載ってそうなスクリプト置いてるけど
毎月15件くらいDLされてる

647 :デフォルトの名無しさん:2018/04/25(水) 11:44:31.69 ID:OMoW5wMU.net
最初からwebアプリ作ればいいじゃん

648 :遊園地:2018/04/25(水) 11:52:34.70 ID:aZgfWxV+.net
俺も2年間で60ダウンロードぐらいされてる。

コメントは1件だけ来た。


タイトル
無能

本文
無能なんですね。

649 :遊園地:2018/04/25(水) 11:55:04.74 ID:aZgfWxV+.net
python,exe化して、ふぁいるりねーむ公開してたな。
絶対パス + 拡張子[指定] [XXX]付けたい名前 連番りねーむ

それだけの機能

650 :デフォルトの名無しさん:2018/04/25(水) 12:00:31.01 ID:00WI0MSP.net
>>648
www
でも、コメントが付くだけでも正直かなり羨ましわ
もう何年も5個くらいおいたままになってるけど何のコメントもない
でも、俺自身が10年以上使ってるし、使い方があえてば凄く便利だし
絶対に使ってる人いる筈なんだけどなぁ・・・

651 :デフォルトの名無しさん:2018/04/25(水) 12:44:42.62 ID:SjKKaR2L.net
githubにうpしてたら勝手にforkされて勝手にバージョンアップされてた

652 :デフォルトの名無しさん:2018/04/25(水) 12:50:09.33 ID:00WI0MSP.net
>>651
その手も良いな

653 :デフォルトの名無しさん:2018/04/25(水) 12:51:16.27 ID:00WI0MSP.net
因みにどんなソフト
もし良ければ教えて
サンプルみたいなプログラムでも便利なら誰かアップしてくれるかな?
便利だから10年くらい使ってるけど、動作が微妙なんだよなぁー

654 :デフォルトの名無しさん:2018/04/25(水) 13:47:37.24 ID:sTzqaXBb.net
GAEで実行すると、datetimeを変換する際、
tzinfoになにを入れていても
time.mktime(t.timetuple())や
calendar.timegm(t.timetuple())
で、mktimeやtimegmを実行した時点で+9時間されてしまいます。
こういうものなのでしょうか?

655 :デフォルトの名無しさん:2018/04/25(水) 15:21:07.84 ID:sTzqaXBb.net
あ・・・勘違いしてました
ネットの変換ツールの方が+9時間してたようですorz

656 :デフォルトの名無しさん:2018/04/25(水) 15:25:25.19 ID:SjKKaR2L.net
GAEのTimeZoneって変だよな

657 :遊園地:2018/04/25(水) 15:55:32.53 ID:aZgfWxV+.net
,をリアルタイムで数えるには、どうすれば良いでしょうか?

現状では、
1秒毎にファイルを開いて、更新してます。

658 :デフォルトの名無しさん:2018/04/25(水) 16:50:55.24 ID:7/N1jaCm.net
>>657
その質問の仕方であなたが今なにをしていて、これから何をしたいと思っているのか解る人はいないと思う。

659 :遊園地:2018/04/25(水) 18:02:02.68 ID:aZgfWxV+.net
テキストファイルの,カンマをカウントして居ます。
http://fast-uploader.com/file/7080202434072/

660 :デフォルトの名無しさん:2018/04/25(水) 19:41:46.81 ID:D5b6boQj.net
>>659
お前はteratailできけば良いだろ

661 :デフォルトの名無しさん:2018/04/25(水) 20:11:28.16 ID:/xWlXZY2.net
>>624
本体をwww鯖に置いて、配布するコードはそれをDLして呼び出すだけのものにする
配布コードに公開鍵置いて適当な認証コードを生成して鯖に送ってバリデーションする
配布コードは適当に難読化するか、バイナリにコンパイルしておく
プロテクションを強めにするなら毎回DL、そうでなければキャッシュOKにする
DLするファイル側にも日付やIPアドレスから鍵を生成して暗号化するとか、嫌がらせの方法はある

662 :デフォルトの名無しさん:2018/04/25(水) 22:47:23.82 ID:00WI0MSP.net
str = "100 20" #<<色々な組み合わせが入る比較せよ↓だと90点しか取れなかった どこミスしたんだろ?
l = str
list = l.split(" ")
if(list[0] == list[1]):
print("eq")
elif(list[0] > list[1]):
print(list[0])
else:
print(list[1])

663 :デフォルトの名無しさん:2018/04/25(水) 22:54:55.91 ID:0wQkhGBO.net
なんか問題文が雑だな。
もっと正確な仕様があるんじゃないの?

664 :デフォルトの名無しさん:2018/04/25(水) 22:55:24.68 ID:mf+z+VbY.net
文字列で比較してるからじゃないの
問題の要求知らねえけど

665 :デフォルトの名無しさん:2018/04/25(水) 22:59:26.42 ID:00WI0MSP.net
>>663
雑?ベストな書き方ってどんなの?

>>664
某人材派遣会社のテスト問題
10個ほどテストを通したらしいけど1つだけ出力が間違ってるらしい
境界線データなどは全てパスしてる

666 :デフォルトの名無しさん:2018/04/25(水) 23:05:30.22 ID:0wQkhGBO.net
ベストっていうか一言一句たがわず元の問題文書けよ。
もしかしたらテストっていうから漏らしたらいけないのかもしれないけど。

667 :デフォルトの名無しさん:2018/04/25(水) 23:15:11.67 ID:0wQkhGBO.net
それにしても人材派遣会社でパイソンって。
Javaとかじゃないのか?
それとも言語は自由選択なのか?

668 :デフォルトの名無しさん:2018/04/25(水) 23:32:08.52 ID:00WI0MSP.net
>>666
一切漏らしてはダメなんですまん

>>667
好きな言語でOKな所

669 :デフォルトの名無しさん:2018/04/25(水) 23:41:42.22 ID:0wQkhGBO.net
ん〜そうなんか。
じゃあsplitに失敗した時の挙動とかはなんか条件なかった?

670 :デフォルトの名無しさん:2018/04/25(水) 23:50:36.60 ID:00WI0MSP.net
>>669
入力値最終行の末尾に改行が1つ入ります。
とあるけど、多分これではないと思う

問題文は書けないけど他の問題↓でも上の条件はあるけど100点だった
aa = input()
list2 = aa.split(" ")
list2 = sorted(list2)
list2 = reversed(list2)
list = list(list2)
print ( int(list[0])*10+int(list[3]) + int(list[1])*10+int(list[2] ))

671 :デフォルトの名無しさん:2018/04/25(水) 23:52:28.03 ID:mf+z+VbY.net
仕様クイズやってんじゃねえんだよ
言えないなら他を当たれ

672 :デフォルトの名無しさん:2018/04/25(水) 23:55:35.34 ID:00WI0MSP.net
レベルは基礎(年収200万レベル)だから
得意な人が見ればスグに分かるかと思って・・・

673 :デフォルトの名無しさん:2018/04/26(木) 00:04:33.65 ID:A1A9qqDP.net
>>671
確かに、90点の回答から問題文(知っているが言えない)を妄想して
どこミスしたか教えてクレクレだからな。 なんかざんしんなクレクレだな

674 :デフォルトの名無しさん:2018/04/26(木) 00:05:48.88 ID:cVNoJ2TG.net
ほぼ同額ハネてるくせにずいぶん調子こいてんな人売り。

675 :デフォルトの名無しさん:2018/04/26(木) 00:09:44.35 ID:NMIp1ji6.net
正確な使用かNGだった入力データか、せめて一方はないとなぁ

676 :デフォルトの名無しさん:2018/04/26(木) 00:20:56.36 ID:zAODI6nx.net
>>675
スマン
入力データ(10種類テスト)は非公開
問題文はpaizaの規約でNG

677 :デフォルトの名無しさん:2018/04/26(木) 00:23:21.97 ID:NMIp1ji6.net
あんま思いつかないけどたとえば
str="+10 10"
でeqを出力しなきゃいけないとかかなぁ

678 :デフォルトの名無しさん:2018/04/26(木) 07:29:42.61 ID:82+EFsXj.net
>>651
おもろーい

>>650
そりゃいるんじゃね?
普通の人スクリプトかけないし
自分もやりたいことがあってググったら
Pythonのスクリプト見つけて
それがきっかけでPython始めた

679 :デフォルトの名無しさん:2018/04/26(木) 07:39:06.10 ID:L4MEI3Bo.net
知ってるかもだけど、strとかlistとかの組み込み関数の名前を変数に使わない方がいい
例として以下を挙げる

>>> str = "A"
としたあと、組込み関数str()を使うと
以下のようにエラーになる
>>> str(10)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object is not callable

680 :デフォルトの名無しさん:2018/04/26(木) 13:18:56.47 ID:1MtgAGXx.net
https://qiita.com/makaishi2/items/63b7986f6da93dc55edd

上記のサイトを見ながら勉強しています
その中のword2vecを使用して学習させた結果を表示させてる部分に(学習に乱数を使っているので、同じ結果にはなりません)と表記されている箇所があるのですが、乱数はどの部分を指しているのでしょうか?
入力した値に対して毎回結果が変わってしまうのは違和感があるのですが、これが正しい考え方なのでしょうか?

681 :デフォルトの名無しさん:2018/04/26(木) 14:21:52.82 ID:LZqqVlEY.net
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://sketchapp.com/extensions/plugins/
ttp://photoshopvip.net/103903

ttps://goodpatch.com/blog/sketch-plugins/

682 :デフォルトの名無しさん:2018/04/26(木) 16:21:20.54 ID:y8gcXBFr.net
>>662
標準関数を変数名に使うな
コードを貼るなら、ideoneとかcodepad使え
文字列のまま比較するな

683 :デフォルトの名無しさん:2018/04/26(木) 17:23:13.50 ID:HAGSLGUl.net
pythonって遷移的なimportができてしまうのか。知らなかった。
これはちょっと嵌りポイントじゃないかなぁ?

684 :デフォルトの名無しさん:2018/04/26(木) 17:33:22.83 ID:0WGeE1H1.net
日本語でOK

685 :デフォルトの名無しさん:2018/04/26(木) 17:44:22.78 ID:3KE4uQzN.net
>>680
gensimのword2vec実装のなかで乱数を使っているということじゃないかな?
だからこそこに書いてあるコード中にはrandはない

686 :デフォルトの名無しさん:2018/04/26(木) 18:02:11.11 ID:B934JXdm.net
>>683
__init__.py だけだぞ

687 :デフォルトの名無しさん:2018/04/26(木) 18:19:49.65 ID:7TZiBj4A.net
pythonって誰が書いても同じになるように作られたはずなのになんでwith分とか作っちゃったの?

688 :デフォルトの名無しさん:2018/04/26(木) 18:50:08.23 ID:vM7mL5EC.net
足し蟹ー

689 :デフォルトの名無しさん:2018/04/26(木) 19:08:52.46 ID:3Mp4Ty/f.net
>>685
引数seedかな?

690 :デフォルトの名無しさん:2018/04/26(木) 20:11:17.17 ID:bpVzyqdZ.net
with文便利じゃん
途中でエラー出ようがハングしようが
必ずclose()されるし

691 :デフォルトの名無しさん:2018/04/26(木) 20:12:25.88 ID:bpVzyqdZ.net
あぁハングはまずいか・・・

692 :デフォルトの名無しさん:2018/04/26(木) 20:23:38.37 ID:7TZiBj4A.net
with分が許されるなら i++ も付けてほしいのよね

693 :デフォルトの名無しさん:2018/04/26(木) 20:32:37.56 ID:NMIp1ji6.net
Rubyにi++がないのと同様の理由でパイソンにもないんじゃないか?
適当だけど。

694 :デフォルトの名無しさん:2018/04/26(木) 20:49:07.82 ID:zmwnnnGF.net
why?

695 :デフォルトの名無しさん:2018/04/26(木) 21:26:38.69 ID:NMIp1ji6.net
俺もよく知らんが整数がイミュータブルでさらにオブジェクト指向が組み合わさると++が難しいらしい。
理屈は知らん。

696 :デフォルトの名無しさん:2018/04/26(木) 21:54:40.18 ID:vM7mL5EC.net
僕「それはちょっと…むずかしいです」
??「難しいかどうか聞いてるんじゃない!出来るんだな!?」
僕「はい…」

697 :デフォルトの名無しさん:2018/04/26(木) 22:05:57.30 ID:ufB3iyja.net
お願いします。
Pysideで1.jpgのフルスクリーンから1秒後に2.jpgのフルスクリーンに切り替えたいのですが、1.jpgが映ったままで止まってしまいます。
どのようにプログラムを直したら良いでしょうか?
import sys
from PySide import QtGui
import time

app = QtGui.QApplication(sys.argv)
pixmap = QtGui.QPixmap('/home/pi/Pictures/1.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap)
screen.showFullScreen()
sys.exit(app.exec_())

time.sleep(1.0)

app = QtGui.QApplication(sys.argv)
pixmap2 = QtGui.QPixmap('/home/pi/Pictures/2.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap2)
screen.showFullScreen()
sys.exit(app.exec_())

698 :遊園地:2018/04/26(木) 22:14:31.13 ID:zm91irPY.net
.show()

699 :デフォルトの名無しさん:2018/04/26(木) 22:57:40.00 ID:r/dul/Wf.net
遊園地召喚

700 :デフォルトの名無しさん:2018/04/26(木) 23:18:26.87 ID:zm91irPY.net
召喚される度に査問される罠

701 :デフォルトの名無しさん:2018/04/26(木) 23:19:29.18 ID:zm91irPY.net
QtGuiとか使った事ない。

702 :デフォルトの名無しさん:2018/04/26(木) 23:35:00.83 ID:sRtYULlw.net
>>697
なんか、pythonプログラムだけど、Qtのプログラムの質問な感じで
ここできくよりQtスレで尋ねたほうが良いような感じだな。
Qtはpythonで激しく使われているけど、スレレベルからしてこのスレ連中で
使っている奴は激しく少ないだろうからな。
Qtさっぱりな俺でも、上の1.jpgコード部分をコピペして2.jpgに変更では動かんと思う

>>701
俺はQtをインストールすらしていない

703 :デフォルトの名無しさん:2018/04/26(木) 23:44:36.11 ID:JIIZjO4Q.net
>>702
承知しました、コメントありがとうございました。

704 :デフォルトの名無しさん:2018/04/26(木) 23:55:11.10 ID:sRtYULlw.net
>>703
Qtさっぱりな俺がぱっとコード見て妄想で答えるが、
app = QtGui.QApplication(sys.argv) はQtGui初期化だろうからで2回は不要(1回でOK)。
sys.exit(app.exec_()) は終了ってことだから、time.sleep(1.0)の前の
sys.exit(app.exec_())でプログラム終了
な気がする。

705 :デフォルトの名無しさん:2018/04/27(金) 00:13:35.48 ID:sy5ESrYC.net
すいません、前にchainerpix2pixの件で質問した者なんですが
あれからようやくCPUでは動いたものの、GPUではアウトオブメモリーになってしまいます
chainerのmnistのサンプルだとgpuは動いたので
使う画像のサイズを小さくすればいいのではと思って
get_example(self, i, crop_width=256):をcrop_width=1にしてみたのですが
同じくアウトオブメモリーになってしまいます・・・
どうしたらgpuで動くようになるのでしょうか?
あと、cudnnは使えないのでChainer_cudnnは0にしています

706 :デフォルトの名無しさん:2018/04/27(金) 00:30:03.43 ID:kiq1uvQz.net
お前はアウトオブガンチューだから。

707 :デフォルトの名無しさん:2018/04/27(金) 11:03:08.04 ID:24cBGVvy.net
このアプリは、GPU を使いますとか、

何か、そういう設定でもあるのかも

708 :デフォルトの名無しさん:2018/04/27(金) 14:48:29.17 ID:cRxeHPlk.net
matplotlibの文字化けを直そうとしてるんだけどどこにもキャッシュがない…
web見てると3つキャッシュがあるはずなのに1つしかない(fontList.Json)
こういう場合どうすればいいの…?

709 :デフォルトの名無しさん:2018/04/27(金) 16:45:19.19 ID:UfJ+DbX6.net
まずはパンツを下ろします。

710 :デフォルトの名無しさん:2018/04/27(金) 16:46:42.04 ID:l9wD2n6W.net
次にブラを上げます。

711 :デフォルトの名無しさん:2018/04/27(金) 17:53:36.17 ID:ash3pEtl.net
>>697
まるち

712 :デフォルトの名無しさん:2018/04/27(金) 17:54:48.84 ID:ash3pEtl.net
>>708
もっとしっかり探せ

713 :遊園地:2018/04/27(金) 19:07:35.36 ID:00GHpQg1.net
>>707
有るよ。
ドロールとか組み込みなら、CPUで動かすのが基本
従ってインストールした時点でGPUが無効になってるライブラリも多い。

714 :デフォルトの名無しさん:2018/04/27(金) 20:19:58.99 ID:NfYPUu/1.net
ここで初めてティッシュを用意します。

715 :デフォルトの名無しさん:2018/04/27(金) 22:00:53.85 ID:tY4aKNce.net
>>708
よく分からん時はOSのクリーンインストールから初めてmatplotlibをインストール

716 :デフォルトの名無しさん:2018/04/27(金) 23:24:53.90 ID:7d5j5plq.net
OSクリーンインストールとかww
なんというオニ畜アドバイスww

717 :デフォルトの名無しさん:2018/04/27(金) 23:53:02.63 ID:0qxmcM9A.net
もっといいPCを買えとか言われなくてよかった

718 :デフォルトの名無しさん:2018/04/28(土) 01:03:41.04 ID:pRdE14CX.net
https://forum.omz-software.com/topic/2648/download-plain-text-html-document-and-save-content-as-text/3
これの
print=1って何?意味が分からない

719 :デフォルトの名無しさん:2018/04/28(土) 01:25:48.28 ID:sVh1KXTe.net
gamefaqていうサイトのurlパラメータで、print=1ってすると、印刷向けのデータを返してくれるんではないかな。
pythonのprintとは無関係

720 :デフォルトの名無しさん:2018/04/28(土) 01:29:45.66 ID:lzDlBKGG.net
なんでそんな質問しているのかわからない
print=0だと駄目なんだろう

721 :デフォルトの名無しさん:2018/04/28(土) 01:40:25.00 ID:lzDlBKGG.net
>>719
Appending ?print=1 as a parameter, ie, http://www.gamefaqs.com/ps3/959558-fallout-new-vegas/faqs/61226**?print=1**,
simplifies the document for printing such that in a browser, the content appears to be plaintext (of course it's not, it's HTML).
Pythonのことを尋ねているんではなく、英語が分からんから意味が分からないと言うことだろ。

722 :デフォルトの名無しさん:2018/04/28(土) 06:45:20.98 ID:x771LapU.net
BMPファイルのヘッダ情報をいじりたい場合、
C言語だとバイナリーモードでファイルを開いて
ヘッダと同じ構造の構造体に格納→いじるっとしていたのですが
Pythonの場合はどうするのがスタンダードですか?

723 :デフォルトの名無しさん:2018/04/28(土) 08:59:37.34 ID:Mqg+X9l/.net
>>722
bytearrayオブジェクトを作って添え字でアクセスするか、
ctypesモジュールにあるCの構造体互換の機能を使うかだけど
それならCでいいじゃんって話になる
そもそもスクリプト言語でバイナリデータを操作すること自体、あんまりメジャーじゃないと思う

724 :デフォルトの名無しさん:2018/04/28(土) 08:59:39.51 ID:6G75OsfQ.net
PILを使うのはダメなの?

725 :デフォルトの名無しさん:2018/04/28(土) 10:47:54.22 ID:8aPDsti0.net
中出ししてもオッケー☆ミ

726 :デフォルトの名無しさん:2018/04/28(土) 19:25:00.09 ID:nZGgJ1mK.net
>>722
スタンダードかどうかは知らんが
ファイルヘッダのようにバイナリで色々なサイズのデータがあり、フォーマットが決まっている場合は
structモジュールのpack() とunpack() が使える
ファイルをバイナリモードで開くことと、結果がタプルで返ってくること(値を変えるならlist()を通す)、
書式指定文字列がperlよりタイトで厳密に一致しないといけないことに注意

727 :デフォルトの名無しさん:2018/04/30(月) 02:59:51.66 ID:0BaYNXC/.net
>>722
725 よりは ctypes の方が結果的に楽
どうせやってることは同じ

728 :デフォルトの名無しさん:2018/05/01(火) 13:16:05.51 ID:nK8NGTs9.net
csvの書き込みで特定の列にのみ値を入れるってどうすればいいでしょうか?
例えば3列目にCと入れる場合、
writerow(['','','C'])
とはできると思うんですが、indexの[2]とかで挿入したいです。

729 :デフォルトの名無しさん:2018/05/01(火) 13:23:24.66 ID:nK8NGTs9.net
>>728
['']*3で空配列作ってinsertでindex指定すればいけそうでした。
無視してください

730 :デフォルトの名無しさん:2018/05/01(火) 17:47:40.92 ID:ZCA4YmfM.net
pythonista3で
カメラロールに保存した画像のパスを取得したいんですが
どうすればできますか?

731 :デフォルトの名無しさん:2018/05/01(火) 21:26:52.34 ID:CgwFbzLc.net
遊園地の出番

732 :遊園地:2018/05/01(火) 21:36:37.58 ID:mOb9XiF3.net
前提として、pythonista3を始めて知った。

iPad持って無い& Pythonista3-omz:softwareは有料アプリ 1200円

いろいろ見たけど、appex.get_file_path()だと不可なので、

 appex.get_attachments()


参考サイト
https://qiita.com/lm0x/items/28d5f7ef433a9654474c


 別途、環境による共有ライブラリの不具合が有るかは不明

733 :遊園地:2018/05/01(火) 21:39:00.39 ID:mOb9XiF3.net
最悪、自分で保存場所を決めて[デフォルト位置を特定も可能]

 自ら、取得しに行く手も有る。

734 :デフォルトの名無しさん:2018/05/01(火) 21:50:09.23 ID:ZCA4YmfM.net
>>732
pythonistaで画像をカメラロールに保存してそのパスを取得したい

735 :遊園地:2018/05/01(火) 22:47:44.63 ID:mOb9XiF3.net
>>734
前提として、StaShの導入[pip等が使える?] 不要かも知れない?

通常のカメラロールにあるファイルは、
 Pythonista3で直接扱えないのでDropboxを利用するらしい。
# そんな事ないかも?


import os
os.getcwd() #パス取得


何の画像か分からないよ。
WEB上の画像なのか? カメラ起動からの取得した画像なのか?

それによって回答も変わる。 取り敢えず、

web上のURLからの取得[ダウンロード]
http://alba.blog.jp/archives/74055809.html

写真のアクセスなど
http://omz-software.com/pythonista/docs/ios/photos.html

736 :遊園地:2018/05/01(火) 22:56:54.46 ID:mOb9XiF3.net
写真へのアクセス
http://omz-software.com/editorial/docs/ios/photos.html

んーー 力不足だ。すまん。

テラテイルなら答えてくれるかも知れない。そっちで聞いてくれ。


 ただ、画像はデフォルトでカメラロールに送られると書かれてるから、

カメラロールのURLさえ分かれば、直接叩いたりできないのかなー? とかは思う。

737 :デフォルトの名無しさん:2018/05/01(火) 23:13:50.80 ID:Ta/u7tID.net
え、もしかして遊園地って意外と実力あるの?

738 :遊園地:2018/05/01(火) 23:49:23.22 ID:mOb9XiF3.net
>>737
どぴゅうーーー!!?ww どうしてそう成ったw
まだまだ。5ch初心者だなww

739 :デフォルトの名無しさん:2018/05/01(火) 23:59:49.36 ID:ZCA4YmfM.net
stashは導入してます

もしかしてAsset.local_idってのがパスのかわり?

740 :デフォルトの名無しさん:2018/05/02(水) 00:12:33.26 ID:AOzOSF/o.net
普通にPCでやった方が無駄なこと考えなくていいから楽だと思う

741 :デフォルトの名無しさん:2018/05/02(水) 00:38:48.40 ID:lacLZL+z.net
やだ
何でもiPhoneでやりたい
ファンや電源ユニットの音を聞きたくない

742 :デフォルトの名無しさん:2018/05/02(水) 00:38:54.21 ID:W+so90CJ.net
遊園地メンバーに出来ないことはないだろう。

743 :デフォルトの名無しさん:2018/05/02(水) 00:58:24.50 ID:Th+lVB8S.net
Python上級者の遊園地メンバーならなんとかしてくれるよね

744 :デフォルトの名無しさん:2018/05/02(水) 06:54:05.31 ID:RMStXXKk.net
他のメンバーから謝罪されそう

745 :遊園地:2018/05/02(水) 07:38:44.05 ID:GpduyO95.net
>>741
カメラロール 保存場所はPCで言うと
/home/use/ピクチャ

Androidだとギャラリーの所

 命令文で取るんじゃなくて、直接して画像を取りに行くスタイル

ファイルマネージャとかでソコのURLが分かれば、可能かと

746 :デフォルトの名無しさん:2018/05/02(水) 08:19:06.48 ID:lacLZL+z.net
appex.get_attachments()で取得する
アプリの写真が渡す時に使う場所
/var/mobile/Media/PhotoData/OutgoingTemp/
たぶんパス指定して直接は見れないようになってる
API通さないと無理なんじゃないかな

747 :遊園地:2018/05/02(水) 09:30:47.44 ID:GpduyO95.net
皆が調べたけど、限界だ!

 って所からがスタートかな?

取り敢えず。 下記を実行して見た結果は どうなる?

import photos
all_assets = photos.get_assets()
last_asset = all_assets[-1]
img = last_asset.get_image()
img.show()

748 :遊園地:2018/05/02(水) 09:38:13.34 ID:GpduyO95.net
見た?
https://halspg.wordpress.com/2017/11/20/pythonista_photos/

749 :遊園地:2018/05/02(水) 09:48:38.35 ID:GpduyO95.net
手段として、延期かなー。

テラテイル と スタッフオーバーフロー
で質問(本人が)

その間に別の事に取り込んだ方が良いかもなー

進めて行くうちに、類似箇所や該当操作に辿り着くかも知れない。

750 :デフォルトの名無しさん:2018/05/02(水) 14:07:48.31 ID:lacLZL+z.net
すでに出来たよ
assetからObjCInstance使って出来た

751 :デフォルトの名無しさん:2018/05/02(水) 14:20:13.88 ID:lacLZL+z.net
パスで何かしようとするとPermissionErrorがでるよ

752 :デフォルトの名無しさん:2018/05/02(水) 14:34:52.65 ID:lacLZL+z.net
一応
print(str(ObjCInstance(picasset).pathForOriginalFile()))

753 :遊園地:2018/05/02(水) 15:24:12.28 ID:GpduyO95.net
おめー

754 :デフォルトの名無しさん:2018/05/02(水) 18:20:09.23 ID:iLuEzONp.net
質問1
 C#とかC系しか知らんものがパイソンを素早く概括的に理解してマスターするには
どのような手順を取るのがベストかを述べよ。

755 :デフォルトの名無しさん:2018/05/02(水) 18:24:11.36 ID:fFtFAs1e.net
帰れチンカス

756 :デフォルトの名無しさん:2018/05/02(水) 18:27:01.60 ID:iLuEzONp.net
質問2
 「C++からパイソンを呼び出す」などC++とパイソンを組み合わせて使うケースについて
散見するが、C#とパイソンの組み合わせがないのはなぜだろうか? その理由を述べよ。

質問3
 他の言語特にC#にくらべてパイソンの優位性もしくは劣性について述べよ

757 :デフォルトの名無しさん:2018/05/02(水) 19:06:36.46 ID:hCUFBC/P.net
Pythonをパイソンと書くようなキチガイははよ死ね

758 :デフォルトの名無しさん:2018/05/02(水) 19:09:38.38 ID:OevC1MDQ.net
バカって外来語をネイティブな表記で書くよねw読めないからw

759 :デフォルトの名無しさん:2018/05/02(水) 19:22:17.68 ID:W+so90CJ.net
>>754みたいなガキは、遊園地メンバーのちんぽナメナメしたら、答えてやるわ。

760 :デフォルトの名無しさん:2018/05/02(水) 20:05:02.60 ID:iLuEzONp.net
パーがトンほどいるからパートン

761 :デフォルトの名無しさん:2018/05/02(水) 20:09:22.51 ID:iLuEzONp.net
質問1の模範解答
 このような粒度の荒い質問にここで回答を期待するのは無理。

762 :遊園地:2018/05/02(水) 20:12:29.50 ID:GpduyO95.net
遊園地メンバーではなく。
遊園地ランドの一員な。

問1
公式Documentを読む
(その判断が下せなかった君には難しい)

問2
pythonとc#の組み合わせは有ります。
日本語記事が少ないのは確かです。

問3
全ての言語に置いて、優位性と劣性は
状況により、変わります。

大事なのは目的との適切な判断です。


なお、遊園地ランドの5ch民は標準スキルにフレンドリーファイアーと成ってますww

763 :遊園地:2018/05/02(水) 20:15:54.36 ID:GpduyO95.net
初代のくだすれ だと、
「pythonのパイは おっぱいですか?!」

だった様な気がする。

764 :遊園地:2018/05/02(水) 20:24:18.02 ID:GpduyO95.net
雪風だった時に叩かれた頃と
そっくりで、大爆笑だなw

低い所から、始めたら
上がるしかないから、良いと思う。

765 :デフォルトの名無しさん:2018/05/02(水) 20:31:09.60 ID:iLuEzONp.net
>大事なのは目的との適切な判断です。
そもそもどのような目的でpythonは作られたのか? 優秀な言語が五万とあるのに
わざわざ作るにはそれなりなりの理由があるはずだ。その理由について手短に簡潔に述べなさい。
その程度の説明ができないなら、pythonを使う意味がない。
仮に説明できるだけの能力があるにせよ、その程度のことをめんどくさがって説明できないと
したらプログラミングのようにめんどくさい仕事には向かないと思える。

766 :デフォルトの名無しさん:2018/05/02(水) 20:35:39.56 ID:MvV5oHQH.net
無能はPython使わなくていいよ

767 :デフォルトの名無しさん:2018/05/02(水) 20:49:31.16 ID:+C3apNC8.net
確かにPythonとか何がいいのかまだ理解してないわ。
人工知能界隈では流行ってるみたいだけど。

768 :デフォルトの名無しさん:2018/05/02(水) 21:06:22.47 ID:lacLZL+z.net
最近使い始めた
いまいち理解してない
それでもある程度便利に使える
誰も使ってないと開発止まるし流行りにはのるスタイルです

769 :遊園地:2018/05/02(水) 21:08:14.07 ID:GpduyO95.net
>>765
グイド・ヴァン・ロッサムがクリスマス休暇中に
分散OS「Amoeba」向けにスクリプト言語を作りたかった から

以上

770 : :2018/05/02(水) 21:10:46.50 ID:R3g8E+PO.net
>>769
>分散OS「Amoeba」
MINIX のタネンバウムの amoeba のスクリプト言語?妙な縁があるんだね

771 :遊園地:2018/05/02(水) 21:15:47.99 ID:GpduyO95.net
Basicが代表だと思うが、当時の開発者は自分の作ったモノの価値は殆ど知らなかったよ。

772 :遊園地:2018/05/02(水) 21:25:25.12 ID:GpduyO95.net
駄目だ。
持ってる書籍だと、第4世代の事は
殆ど記述されてない。

773 :遊園地:2018/05/02(水) 21:48:30.08 ID:GpduyO95.net
休暇中に軽く創られただけなのにw
明確な意志と理由が有ると思い込んでたの?


まあw低い所から始めたら
上がるしか無いからなww良いんじゃねw

774 :遊園地:2018/05/02(水) 22:29:07.24 ID:GpduyO95.net
ボクが考えた、すぺちゃるな事は
ネタ切れかな?

775 :遊園地:2018/05/02(水) 22:41:28.82 ID:GpduyO95.net
せっかくの新人を逃してしまったかw
pythonで何が、したかったのかき聴きそびれた

776 :デフォルトの名無しさん:2018/05/02(水) 23:18:15.88 ID:g5pj+rNO.net
numpyの高階テンソルをいじろうとしたら、演算子1個でサクッと出来るPythonじゃないとまず無理
C++やC#で3次元以上の配列作ってディープラーニングの設計なんかしたくないよ

777 :デフォルトの名無しさん:2018/05/02(水) 23:24:22.74 ID:FhWmuzwV.net
それはライブラリの有無の問題だろ
演算子オーバーロードはC++でもC#でもできる

778 : :2018/05/02(水) 23:27:05.75 ID:R3g8E+PO.net
>>777
任意の文字または文字列を演算子として定義することは C++ ではできないからなあ…

779 :デフォルトの名無しさん:2018/05/02(水) 23:29:25.56 ID:vNfS6ImN.net
なんだc++も大したことないね

780 :デフォルトの名無しさん:2018/05/02(水) 23:32:00.53 ID:+C3apNC8.net
javaに比べればマシw

781 :デフォルトの名無しさん:2018/05/02(水) 23:32:27.71 ID:FhWmuzwV.net
>>778
そんなもんPythonでも無理

782 :デフォルトの名無しさん:2018/05/03(木) 00:08:27.41 ID:uGBeKqoZ.net
pythonってCで作られてると聞いたけど、
pythonでCを作る事ってできないの?

783 :デフォルトの名無しさん:2018/05/03(木) 00:09:40.12 ID:q8kum/8T.net
コンパイラは性能求められるからな

784 :デフォルトの名無しさん:2018/05/03(木) 00:43:11.48 ID:q8kum/8T.net
>>782
まあ遊園地先生が答えてくれるだろう

785 :遊園地:2018/05/03(木) 01:15:04.63 ID:Jyt9WmzK.net
分かりません。


C言語のアプリケーションとしてpythonを作ったのかも?です。

 本人に聞いて見たら、どうだろうか?

ツイッターかフェイスブックで探したら?

786 :デフォルトの名無しさん:2018/05/03(木) 09:41:39.44 ID:QuUFIGoc.net
>>763
まるで福田前財務事務次官だ。

787 :デフォルトの名無しさん:2018/05/03(木) 09:44:16.37 ID:QuUFIGoc.net
>>765
五万と言語はないだろう。808くらいだろう。

788 :デフォルトの名無しさん:2018/05/03(木) 09:46:17.46 ID:QuUFIGoc.net
>>779
あんたみたいにマシン語でさくさく書ける人にとっては?

789 :デフォルトの名無しさん:2018/05/03(木) 13:04:25.86 ID:q8kum/8T.net
>>782
マジレスすると「チューリング完全」でググれ

790 :デフォルトの名無しさん:2018/05/03(木) 16:18:50.24 ID:uGBeKqoZ.net
>>789
それマジレス?

ググったけど、
https://ja.wikipedia.org/wiki/チューリング完全
>コンピュータ言語のうち、少なくともチューリング完全でなければプログラミング言語とは呼ばれない。

つまり、pythonはプログラミング言語ではないってこと???

791 :デフォルトの名無しさん:2018/05/03(木) 17:39:44.38 ID:8x5o8R0g.net
[1, 2, 3, 4, 5]みたいな整数のリストを
"1 2 3 4 5"という文字列に変換したいんですが簡単な方法ありますか

792 :デフォルトの名無しさん:2018/05/03(木) 17:48:47.71 ID:M52LYEAa.net
>>791
簡単な方法だな?
ブラウザを開く→F12押す→以下を張り付けenterを押す
[1, 2, 3, 4, 5].join` `

793 :デフォルトの名無しさん:2018/05/03(木) 19:33:56.79 ID:uGBeKqoZ.net
>>791
python入門者なんでサンプルプログラム見ながら作ってみた
間違ってたらスマソ

list = []
for n in range(1,6):
 list.append(n)
list = map(str,list)#mapでlist中のintをstrにキャストする
print ( " ".join(list) )

もしくは

list = []
for n in range(1,6):
 list.append(str(n))#文字列としてlistに保存する
print ( " ".join(list) )

794 :デフォルトの名無しさん:2018/05/03(木) 21:07:16.43 ID:EsICZB1E.net
俺もゴルウィーから勉強し始めた初心者だけどそれでいけると思う

795 :デフォルトの名無しさん:2018/05/03(木) 23:35:17.25 ID:aADwc621.net
ゴルウィーて格好ええやんw

796 :デフォルトの名無しさん:2018/05/04(金) 00:01:40.30 ID:l7T91Gwe.net
Python書いてるとバカになりそう
やっぱC++かな…w

797 :デフォルトの名無しさん:2018/05/04(金) 00:08:41.17 ID:plo/RuVs.net
さすが知性溢れるレスだねww

798 :デフォルトの名無しさん:2018/05/04(金) 01:28:14.50 ID:Qby9wARQ.net
>>793
C++でやったらどうなるんだ?

799 :遊園地:2018/05/04(金) 01:37:35.84 ID:W3Q83w8C.net
>>791
取り敢えずコレで、後は自分で拡張してくれ。


□がインデント

# 1から5を作成 int
l=[i for i in range(1,6)]
# 空の文字列 宣言
r=''

# 表示だけ l配列
print(*l)

# ループアクセス
for i in l:
# 文字列の結合
□r+=str(i)+' '

# 望む出力結果
print(r)

800 :デフォルトの名無しさん:2018/05/04(金) 01:54:51.37 ID:l7T91Gwe.net
>>793
どうでも良いけどlist型の変数名をlistにすると、以降list型のコンストラクタ呼べなくなるから不適切だな

801 :デフォルトの名無しさん:2018/05/04(金) 12:31:48.88 ID:92ZHjtyM.net
iPhoneのpythonistaでTumblr APIの利用登録しないでtumblrに画像とコメントをアップロードしたい
どうやったら出来ますか?

workflowはtumblrにアップロード出来るのですが
HTMLダウンロードすると落ちるバグがあったりで使えません

802 :デフォルトの名無しさん:2018/05/04(金) 12:36:23.98 ID:92ZHjtyM.net
もっとworkflowの不満を言うと
文字検索で対象が少し大きいと検索出来ないウンコです

803 :デフォルトの名無しさん:2018/05/04(金) 14:08:21.81 ID:pxf8i2Ti.net
>>801
ヘッダに認証情報書けばうp出来たはず

804 :デフォルトの名無しさん:2018/05/04(金) 14:29:13.94 ID:l7T91Gwe.net
>>801
大抵のwebサービスはアクセストークン無しでは外部からアクセス出来ないだろ
利用登録しろってことだ

805 :デフォルトの名無しさん:2018/05/04(金) 15:21:49.21 ID:lWNtUYcr.net
Tumblrは登録しなくてもうp出来るのがいいのに

806 :デフォルトの名無しさん:2018/05/04(金) 16:58:15.14 ID:92ZHjtyM.net
まずpythonでtumblrにログインするにはどうしたらいいのかも分からない
誰か教えて

807 :デフォルトの名無しさん:2018/05/04(金) 17:14:58.41 ID:BzCDJ0Mp.net
Pythonを使ってヤフオクで入札したいがログインが出来ない
どうすればいい?
API公開されてるけど入札は対象外なんだよなぁー

808 :デフォルトの名無しさん:2018/05/04(金) 17:41:15.14 ID:QSaueu9Z.net
ブラウザの挙動を調べて真似する
それ以外に何かあるの?

809 :デフォルトの名無しさん:2018/05/04(金) 17:44:41.28 ID:DIAOZzIz.net
効率悪
それを車輪の再発明と余分だよ
大手サイトだから同じ事やってるスクリプト探せば良いんじゃね?

810 :デフォルトの名無しさん:2018/05/04(金) 19:13:26.68 ID:BzCDJ0Mp.net
確かに車輪の再発明はあれだね
ただ、探せと言う人多いけど、どこにあるんだろ?
808に限らないけどみんなはそんな時、どうやって探してる?
ググったけど見つからない><

811 :デフォルトの名無しさん:2018/05/04(金) 20:09:09.82 ID:3WMufHHm.net
>>806
ググればいくらでも出てくるが

812 :デフォルトの名無しさん:2018/05/04(金) 21:25:20.26 ID:xupEw6nX.net
日本語だと有用な情報が見つけられないこともあるね
C++やC#は日本語だけでも事足りるけど、Pythonを使いだしてから英語サイトを読む機会が増えたと思う

813 :デフォルトの名無しさん:2018/05/04(金) 21:50:09.50 ID:yv6Fgdi6.net
突然誰も教えてくれなくなるのね

814 :デフォルトの名無しさん:2018/05/04(金) 21:55:41.82 ID:yv6Fgdi6.net
今日は詳しい人いないのかな?

815 :デフォルトの名無しさん:2018/05/04(金) 22:38:04.81 ID:elviK+/K.net
>>810
いやログインはAPIあるんだから
まずは使えよ

816 :デフォルトの名無しさん:2018/05/04(金) 23:20:08.28 ID:LjKjJrNY.net
遊園地カモン

817 :デフォルトの名無しさん:2018/05/04(金) 23:22:10.71 ID:Ry3XO9FI.net
普通は、Ruby で、Mechanize, Selenium WebDriver で、ブラウザを自動操作する

iMacros も良いかも

漏れは、図書館にログインしたり、Showroom のアバターを消したり、色々自動化してる

818 :デフォルトの名無しさん:2018/05/04(金) 23:54:22.51 ID:YRex42LX.net
>>817
いまのrubyは低脳がやるものでないからな。非低脳なら自分でそん事は出来る。
一方、いまのPythonユーザーには超低脳がいっぱいで
Pythonユーザーにはそんなことを自分で調べて実現出来ない奴が超多い。
だからここ超初心者スレがあるんだけど、でも、回答する人も低脳になるから
超低レベル質問でないと駄目なorzスレ。

819 :デフォルトの名無しさん:2018/05/05(土) 02:00:17.39 ID:/2WiSCQi.net
俺も遊園地レベルまで出来るようになりてえなぁ
本一冊読み込んでみてるがアウトプットが全くできてないや

820 :デフォルトの名無しさん:2018/05/05(土) 02:16:21.24 ID:55mLO8lT.net
見てない間に・・・
マジで適当なことばっかり言うなよ
TumblrのpostメソッドはOAuthで認証しなきゃダメだし、登録無しで画像だろうがコメントだろうがポストできない
アプリ登録してOAuthキー発行してpostメソッドのURI構造調べてHTTPリクエストpostして終了だよ
こんなとこで聞くより調べた方が早いだろ

821 :デフォルトの名無しさん:2018/05/05(土) 02:22:38.97 ID:t2xghRBN.net
workflowはどうやってpostしてるんだ?

822 :デフォルトの名無しさん:2018/05/05(土) 03:18:18.84 ID:t2xghRBN.net
難しいとくぐれで終わるけど
検索してもAPI関連ばかりで分からないなあ

823 :デフォルトの名無しさん:2018/05/05(土) 04:59:33.12 ID:9WwmGhCc.net
ネットでスナフキンという方が公開していたchannelbreakoutbotというもの(自動売買Botのソースコード)を動かしてみました
すると最初のimportのとこのtornado.genとかがないよー!ってエラーが出ました

これって全部とりあえずpip tornado.genとかでインストールできるのでしょうか?

あとバックテストでは出てなくて、実際注文だして見ようとするとエラーにぶつかったのですが、バックテストでは必要ない関数なんですか?→tornado.gen

824 :デフォルトの名無しさん:2018/05/05(土) 05:43:17.44 ID:t2xghRBN.net
方針変更でpostはworkflowにやらせる

w_url = "workflow://x-callback-url/run-workflow?name=post_tumblr&input={0},{1}". format( urllib.parse.quote(str(picasset.creation_date)), str(ObjCInstance(picasset).valueForKey_('filename'))))
後はコメントとタグはworkflowにまかせたらいいか
役に立たないと思っていたファイルパスの取得が役立ったよ

825 :デフォルトの名無しさん:2018/05/05(土) 08:55:18.86 ID:Dytpdbqo.net
>>823
pip install tornado

826 :デフォルトの名無しさん:2018/05/05(土) 14:10:41.36 ID:2XyTqGXx.net
遊園地は南の島でバカンス中

827 :デフォルトの名無しさん:2018/05/05(土) 14:52:59.74 ID:clN8FwVi.net
それなりの観光地ならネットくらい使えるだろ

828 :デフォルトの名無しさん:2018/05/05(土) 17:12:41.13 ID:snVgileo.net
おかしい・・・
ぐぐるとpickleは標準ライブラリと出てくるのに、俺のUbuntuマシンではimport pickleすると
 Python 3.5.2 (default, Nov 23 2017, 16:37:01)
 [GCC 5.4.0 20160609] on linux
 Type "help", "copyright", "credits" or "license" for more information.
 >>> import piclke
 Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
 ImportError: No module named 'piclke'
 Error in sys.excepthook:
 (以下省略)
と表示される。
apt-getで何か入れないとダメなんですか????

829 :デフォルトの名無しさん:2018/05/05(土) 17:29:19.14 ID:L1Bh6jaq.net
>>828
piclke じゃなくてpickleだよ

830 :デフォルトの名無しさん:2018/05/05(土) 17:29:38.33 ID:JV+fv9fZ.net
テストコードをpickle.pyという名前で保存してないか?

831 :デフォルトの名無しさん:2018/05/05(土) 19:28:14.95 ID:qWioDQTf.net
その程度の英語が読めないとさすがにキツイなぁw

832 :デフォルトの名無しさん:2018/05/05(土) 22:21:25.57 ID:9WwmGhCc.net
deque out of rangeってエラー出たんすけど、dequeの概念がググっても分からないんすけど

833 :デフォルトの名無しさん:2018/05/05(土) 22:55:01.87 ID:mh2HOjNZ.net
嘘つくな
ググったら分かる
プログラマーのくせに英語結果ハブいてんじゃねーぞ

834 :デフォルトの名無しさん:2018/05/05(土) 23:50:17.41 ID:G3Y8fJfc.net
dequeはぐいーんってかんじ

835 :デフォルトの名無しさん:2018/05/05(土) 23:55:20.11 ID:mh2HOjNZ.net
日本語でも出るじゃねーか
http://wa3.i-3-i.info/word14722.html
自分でまともに調べもしないで便利に使ってんじゃねぇ

836 :デフォルトの名無しさん:2018/05/06(日) 01:24:24.37 ID:DjYgqdRZ.net
ツンデレ過ぎて惚れそう>>835

837 :デフォルトの名無しさん:2018/05/06(日) 01:58:56.62 ID:QoUz7B42.net
>>835
>>832が言っているのはdeque(double-ended queue)のことで
お前がどやがをで示したqueueのdequeueのことではないだろ
なんか超初心者スレらしいほのぼのしたコミュだよな

838 :デフォルトの名無しさん:2018/05/06(日) 18:15:10.66 ID:+TLL+PtE.net
with open('aa.txt','r') as f:
 d = f.read()
d[0] = 'A'  ←TypeError: 'str' object does not support item assignment

テキストファイルから読み込んだ文字列の一部だけ書き換えたいんだけど・・・どうしたよいの?

839 :デフォルトの名無しさん:2018/05/06(日) 18:39:36.10 ID:hMxfhnzD.net
>>838
python 文字列 書き換え
辺りでググれ
http://minus9d.hatenablog.com/entry/20130528/1369745960

840 :デフォルトの名無しさん:2018/05/06(日) 19:08:56.21 ID:EQ0QpkW3.net
入門書読みながら書いたりしてるけど全然進まない…
連休中に1冊終わらせたかったのに…

841 :デフォルトの名無しさん:2018/05/06(日) 19:25:00.26 ID:uPY9E+2K.net
入門書っつっても2〜300ページはあるんだろ?
そりゃそんな早く終わんねぇよ

842 :デフォルトの名無しさん:2018/05/06(日) 20:30:43.62 ID:0qnrl+oj.net
>>837
ほんそれ

843 :デフォルトの名無しさん:2018/05/06(日) 20:35:27.96 ID:rNPvQ0s2.net
>>840
俺も勉強しながら入門書を書いているところだ。頑張ろう、お互いに。

844 :デフォルトの名無しさん:2018/05/06(日) 20:41:27.99 ID:CpJPf7oU.net
初心者向けって聞いたから期待してたのにお前らがなにいってるのかすらわからんわ

845 :デフォルトの名無しさん:2018/05/06(日) 21:56:06.57 ID:dQpq8g2J.net
基本本人しか分かってないから気にすんなw

846 :デフォルトの名無しさん:2018/05/06(日) 22:15:18.65 ID:I9BdKpFq.net
初心者といっても、
言語についての初心者と、プログラミング自体の初心者では、
自ずと理解できるものが違うからなぁ。

847 :デフォルトの名無しさん:2018/05/06(日) 23:01:53.97 ID:LrvTqzkb.net
>>838
文字列型(str, bytes)は、変更不可能(immutable)

一方、文字列型も属する、シーケンスは変更可能(mutable)

848 :デフォルトの名無しさん:2018/05/06(日) 23:03:40.41 ID:aIgnZyXq.net
TypeError: 'dict_keys' object is not an iterator
と出るのですが、dict_keysオブジェクトってiteratorではないんですか?

Python3.0について解説しているブログによると、
  d=dict(a=1, b=2, c=3)
  ks = d.keys()
  print(ks)
  >>>dict_keys object at 0x33d9d0
print(next(ks))
>>>"a"
となるはずなんですけど、私のPCで実行してみると
  print(ks)
  >>>dict_keys(['a', 'b', 'c'])
print(next(ks))
>>>TypeError: 'dict_keys' object is not an iterator
と出ました。

これはブログの情報が古い(最新版のPythonではイテラブルではない)
ということでしょうか?
実行環境はPycharmでPython3.6です。 👀
Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)


849 :デフォルトの名無しさん:2018/05/06(日) 23:13:25.70 ID:aIgnZyXq.net
>>>848です。ところどころ間違っていたので、申し訳ないですが再投稿です。

TypeError: 'dict_keys' object is not an iterator
と出るのですが、dict_keysオブジェクトってiteratorではないんですか?

Python3.0について解説しているブログによると、
  d=dict(a=1, b=2, c=3)
  ks = d.keys()
  print(ks)
  >>>dict_keys object at 0x33d9d0
  print(next(ks))
  >>>"a"

となるはずなんですけど、私のPCで実行してみると

  print(ks)
  >>>dict_keys(['a', 'b', 'c'])
  print(next(ks))
  >>>TypeError: 'dict_keys' object is not an iterator

と出ました。

これはブログの情報が古い(最新版のPythonではiteratorではない)
ということでしょうか?
実行環境はPycharmでPython3.6です

850 :デフォルトの名無しさん:2018/05/06(日) 23:29:17.26 ID:FM60XSV8.net
dict_keys は、iterator object ではなくview objectなので、
iterでイテレータを取得して、
kks = iter(ks)
print(next(kks))
とすれば、所望の結果が得られると思います。
Python3の当初から、例示されたコードが動かなかったのか、Python3.xのどこかの時点で動かなくなったのかは、自分はあまり詳しくないので分からない。

851 :デフォルトの名無しさん:2018/05/07(月) 18:53:41.29 ID:tk6smyAu.net
(´・ω・`)最初は参考書読んで勉強しようとおもいます
それで実際に練習でコードを書くのはなにがおすすめですか?
なんかパイザ?とかいうブラウザでできるのかあるみたいだけどああいうのは無料でつかえるの?
それとも統合開発環境とかいうソフトをかわないといけないの?
くわしいひとよろしくお願いします。

852 :デフォルトの名無しさん:2018/05/07(月) 18:58:19.84 ID:vcCBTAP6.net
>>851
まあ、世評の高い「みんなのpython」でも読んでみんシャイ

853 :デフォルトの名無しさん:2018/05/07(月) 19:16:59.68 ID:HDpHdk03.net
舐め腐ったゆとり乙

854 :デフォルトの名無しさん:2018/05/07(月) 21:18:56.60 ID:p9C83SuN.net
>>851
>コードを書く
Sakuraエディタがいいぉ
無料だし
自動できれいにインデントしてくれるし

855 :デフォルトの名無しさん:2018/05/07(月) 21:34:23.94 ID:XwJVL+CV.net
Pythonの基礎はある程度学んだつもりだけど、AI作るのにライブラリはどれがいい?
最初は画像とか文字とかの分類とか、最終的には音声聞き取りでアシスタントAIを作りたいなと

あと、AIとかってグループ作って皆で分担して作ったほうがいいの?

856 :デフォルトの名無しさん:2018/05/07(月) 21:56:38.10 ID:Z9lWSZxl.net
マジレスするとGoogleHomeを買ってきた方が速い

857 :デフォルトの名無しさん:2018/05/07(月) 22:01:31.28 ID:XwJVL+CV.net
>>856
正論過ぎてぐぅの音も出ないわ

858 :デフォルトの名無しさん:2018/05/08(火) 00:39:54.00 ID:l1fYAek+.net
>>857
このスレに来るようなレベルの奴が俺趣味で作成した激ヘタレものより、
すごいプロが作ったのを使ったほうがずっと実用的で良いからな。

859 :デフォルトの名無しさん:2018/05/08(火) 01:34:32.79 ID:bJmig+hX.net
>>855
AIを作るってなんだ?
AIなどという言葉を使ってるくらいなので知識も殆ど無いんだと思う、なのでGoogleとかの音声認識APIとか画像認識APIを使うのを勧める
1から勉強して,trainプログラム書いて,学習させて,モデルの評価して,出来上がったモデル使ってシステムやアプリを作って・・・って相当大変だぞ?
まぁ、ありきたりなAPI使ったところで、劣化Siriくらいしか作れないだろうが・・・
https://i.imgur.com/PzJbcpU.jpg

860 :デフォルトの名無しさん:2018/05/08(火) 01:38:55.50 ID:BHPMRb7G.net
raspberrypiで音声入り動画を撮ろうと検索したところ、以下のターミナルコマンドがありました。コマンド自体はターミナルで動作確認済みです。
https://qiita.com/shibabuki_yuta/items/4f38e46d48908a16fca1

raspivid -t 0 -w 640 -h 480 -b 10000000 -fps 30 -awb fluorescent -o - | \
ffmpeg -y -ac 2 -f alsa -ar 16000 -i plughw:1 -r 30 -i pipe:0 -vcodec copy test.mkv

このターミナルコマンドをpythonで実行するためにsubprocess.runを使おうと思いましたがうまくいきません。
subprocess.run('raspivid’,’-t’,’0’,’-w’,’640’,’-h’,’480’,’-b’,’10000000’,’-fps’,’30’,’-awb’,’fluorescent’,’-o’,’-’,’|’,'\',
’ffmpeg’,’-y’,’-ac’,’2’,’-f’,’alsa’,’-ar’,’16000’,’-i’,’plughw:1’,’-r’,’30’,’-i’,’pipe:0’,’-vcodec’,’copy’,’test.mkv')
上のようにすると
Invalid command line option(\)

Invalid command line option(|)
が出て、\は削除しても影響ありませんでしたが、|を削除するとコマンドが機能しなくなります。
うまく行く方法がありましたらご教示ください。

861 :デフォルトの名無しさん:2018/05/08(火) 01:48:38.00 ID:tXP19YNA.net
そりゃパイプなんだから実行できるわけない
subprocess パイプでググれ

862 :デフォルトの名無しさん:2018/05/08(火) 01:52:12.21 ID:aYgx+AtW.net
質問ですが
学習済みモデルを読み込んで256×256ピクセルの画像を変換してみたところ
chainer、cpuで10〜20秒掛かりました
実際こんなに時間かかるものなのでしょうか?
tensorflow,caffeなどなどの方でも画像を実際変換してみた時の
経過時間を教えてもらえないでしょうか?

学習時間が何時間とかそういうのは検索で見かけるのですが
モデルから変換した場合の時間は検索してもなかなか見かけません

863 :デフォルトの名無しさん:2018/05/08(火) 02:45:47.83 ID:aYgx+AtW.net
もう一つ質問ですが
機械学習とかAIとか質問とか交流するサイトあるんでしょうか?
独学しんどいです。。。

864 :デフォルトの名無しさん:2018/05/08(火) 03:56:49.52 ID:ws+EcsEk.net
`date`
#=> "2018年 5月 8日 火曜日 03:43:25 DST\n"
`date | cut -c -4`
#=> "2018\n"

Ruby なら、`Linux コマンド` で実行できるけど。
cut で、先頭4文字を切り出す

他にも、pipeline で、
指定したコマンドのリストを、パイプで繋いで順番に実行できる

Python でも、同じような機能があるんじゃないの?

865 :デフォルトの名無しさん:2018/05/08(火) 07:26:09.48 ID:BHPMRb7G.net
>>861
ありがとうございます!

866 :デフォルトの名無しさん:2018/05/08(火) 09:19:30.59 ID:8rfWV9vw.net
>>863
海外のmoocsなら学習者同士のコミュニティが盛況なのが普通。

867 :デフォルトの名無しさん:2018/05/08(火) 12:19:46.83 ID:iV08+v4/.net
>>863
なければ作るDjangoで

868 :デフォルトの名無しさん:2018/05/08(火) 16:58:36.72 ID:75TKeVia.net
燃え尽き

869 :デフォルトの名無しさん:2018/05/08(火) 17:43:37.77 ID:zAHKiKIb.net
>>859
ありがとうございます
まだ知識が足りないようなので、本を買ってきて勉強したいと思います

870 :デフォルトの名無しさん:2018/05/08(火) 18:10:21.68 ID:3Qc+jKU9.net
>>862
そんなもんcpuのスペックというかPCのスペックに激しくよるだろ
うちのボロパソ(CPU2GHzない)で自然言語の学習やらすと
文庫本100ページぶんくらいに一ヶ月半とかかかったぞw

871 :デフォルトの名無しさん:2018/05/08(火) 18:26:42.19 ID:hk49TKVY.net
漏れの頭よりは速い

872 :デフォルトの名無しさん:2018/05/08(火) 21:43:47.50 ID:/oTWe9RZ.net
listのソートなんだけど、重複する要素が多い順に並び替えることを1行、2行程度で行えたりしますか?

for文を使って並び替える処理を書こうかと思ったんですがpythonなら
そんなことしなくても出来たりしないかと思いましてw

873 :デフォルトの名無しさん:2018/05/08(火) 21:58:09.18 ID:F8VqdogY.net
import collections
lst = [1, 2, 1, 3, 6, 3, 3]
result = collections.Counter(lst).most_common()
print(result)

874 :デフォルトの名無しさん:2018/05/08(火) 22:00:08.79 ID:7bdwBE1v.net
(´・ω・`)pycharmっていうのが無料でなかなかいいみたいなことみたのでダウンロードしてみた
みんなはこれの有料版とかつかってるの?

875 :861:2018/05/08(火) 22:11:28.95 ID:aYgx+AtW.net
>>870
学習済みモデルを使って
変換したらどのぐらい時間かかりました?

>>866
日本人はシャイなんですかね・・・
自分もですけど・・・

876 :デフォルトの名無しさん:2018/05/09(水) 02:47:00.38 ID:l026hdRL.net
>>875
放置してたから記憶が曖昧なんだけど
たぶん2−3時間@出力は400文字

877 :デフォルトの名無しさん:2018/05/09(水) 07:32:19.46 ID:dzXKaqfN.net
>>855
tensoflowとkerasでいいだろう。

878 :デフォルトの名無しさん:2018/05/09(水) 18:50:09.29 ID:xr813k83.net
プログラミング初めてでPython触ってみたんだが実際にコード書いて初心者に分かりやすいサイトない?

879 :デフォルトの名無しさん:2018/05/09(水) 18:56:37.87 ID:l026hdRL.net
>>878
Python hello でぐぐってすきなところを選びたまへ
とほほのところが有名だ

尚これから始めるなら3.x系がよいとおもわれ

880 :デフォルトの名無しさん:2018/05/09(水) 19:04:13.82 ID:xr813k83.net
サンクス
人工知能に興味あったから始めたけどもっと早く学習すれば良かった後悔してる
頑張ってみるわ

881 :デフォルトの名無しさん:2018/05/09(水) 19:15:17.42 ID:lQ6TY/rX.net
AIやゲームを作りたいと言ってプログラミングを始める人の9割は挫折する

882 :デフォルトの名無しさん:2018/05/09(水) 19:26:34.41 ID:l026hdRL.net
>>880
おうがんがれ

883 :デフォルトの名無しさん:2018/05/09(水) 21:31:26.20 ID:69m7eV1A.net
>>881
じゃあ初心者の最初の目標は何にしたらええの?

884 :デフォルトの名無しさん:2018/05/09(水) 21:43:03.46 ID:nNF1Fkq1.net
AIをエロに活かせばいけるだろ

885 :デフォルトの名無しさん:2018/05/09(水) 21:54:41.07 ID:28IRmfG3.net
エロかゲーム作り趣味などホビーの人は長く続く印象

886 :デフォルトの名無しさん:2018/05/09(水) 22:01:14.33 ID:emXNCpjE.net
ゲーム作り最強やろ
むしろほかの用途探すのが難しいくらい

887 :デフォルトの名無しさん:2018/05/09(水) 22:53:57.01 ID:4HCwAo+O.net
最近pythonを勉強し始めてwebのサンプルコピペしてTensorBoardに表示させて遊んでたんだけど機械学習の知識ゼロだから結局表示させたものが何なのか意味が分からなかったから機械学習の勉強したい
理系の知識もない人間が一から始めようとすると何から始めれば良い?

888 :デフォルトの名無しさん:2018/05/09(水) 23:01:23.90 ID:emXNCpjE.net
マジレスすると機械学習アルゴリズムの細部まで理解するのは相当しんどいと思う。
俺は挫折した。

889 :861:2018/05/10(木) 00:04:46.17 ID:cGWvll+c.net
>>876
教えてくれてありがとう。
けっこう時間かかるもんなんですね

>>883
初心者でもどうしても作りたい明確な(機能)ものが
あればゲームでもAIでも続くんじゃないかな
どうしても分からないところを質問できるコミュニティは必要だと思うけど。

>>887
初心者用のネットの日本語無料講座あったんじゃなかったっけ??
そういう所でざっくりとだけ概要をつかんだ方がいいと思う。

890 :デフォルトの名無しさん:2018/05/10(木) 00:22:11.98 ID:fgcyrTHu.net
>>887
クダスレで尋ねるような超ゆとりではな
一番大事なのはその人の特性だからな。ゆとりは何やってもゆとりレベルまでしか行かない
超ゆとりは勉強始めてもすぐに挫折だろうし

>>888
例えば、働きながら独学で弁護士になるような奴ぐらいの奴なら良いんだろうがな。
俺らゆとりではしんどいから止めたになるよな

891 :デフォルトの名無しさん:2018/05/10(木) 00:29:36.24 ID:awjQTZQI.net
なんか説教臭い、いい歳したおじさんかな

892 :デフォルトの名無しさん:2018/05/10(木) 00:43:50.81 ID:fgcyrTHu.net
>>891
5chではまだ若手の36だよ
この歳になると社内の20前半の若い奴の普段の行動から
こいつは俺同様にダメだな・逆に見込みあるとなんとなくわかるんだよな。

893 :デフォルトの名無しさん:2018/05/10(木) 03:59:12.23 ID:lQRujbAq.net
ディープラーニングは理系の院生ぐらいの脳みそがないと無理
数学・英語が出来ないと自力で問題解決出来ないし、誰かに手取り足取り教えてもらえるほど甘い分野じゃない

894 :デフォルトの名無しさん:2018/05/10(木) 04:13:16.52 ID:Tz1SMPWH.net
Pythonだって本気で使いこなそうとしたら
Cで書かれた挙動とか最低限必要だろけど
実際にはよく分からんでも
適当にやってたら動いてくれる
スマホでタッチで動くほどじゃないけど
実際には、良いフレームワークとかあるし
更にラッパーとかあるしいずれは
ビジュアルプログラミングとかでも使えるレベルになるだろうし
DLも良い物なら誰でも使えるようになりそう

895 :デフォルトの名無しさん:2018/05/10(木) 10:57:50.92 ID:HQu2vVOs.net
>>887
理系の知識が全くないなら本当に厳しいよ
本気で機械学習の勉強したいならPRML(ビショップ本)と微積・確率統計・線形代数・情報理論の本買って,Pythonの数値計算ライブラリで実装すれば相当力付くけど

896 :デフォルトの名無しさん:2018/05/10(木) 11:50:56.55 ID:z2FsQALD.net
>>895
ベクトル解析も追加。岡谷貴之先生の「深層学習」もおススメ。

897 :デフォルトの名無しさん:2018/05/10(木) 12:03:55.44 ID:gCOAvs5z.net
独学でプログラミングの勉強始めたけど、めっちゃ難しい。そもそもきっかけが小学校でも必須になるぐらいだから知っとかないと駄目だろうと始めただけで目標がないし。最終的に個人のレベルで何が出来るようになるのかも分からない。

898 :デフォルトの名無しさん:2018/05/10(木) 13:21:33.60 ID:O+ANAa9X.net
そういう理由なら当然ダンスも習ってるんだろうな

899 :デフォルトの名無しさん:2018/05/10(木) 13:41:17.69 ID:nvwcDEeW.net
open関数について教えてください
ファイルがなければ新規作成する、というのは分かったのですが、もしファイルが存在している場合はそのファイルの中身を全て真っさらにしてから書き込む、という挙動であっていますか?

900 :デフォルトの名無しさん:2018/05/10(木) 13:56:10.24 ID:+a5m9EF5.net
>>899
実際にやってみれば良いんじゃない?

901 :デフォルトの名無しさん:2018/05/10(木) 14:13:23.74 ID:PiSsd1+y.net
>>898
どうして分った!?

902 :デフォルトの名無しさん:2018/05/10(木) 14:39:32.47 ID:nvwcDEeW.net
>>900
ありがとうございます
自分の環境でやってみた結果、ファイルの容量を見ていると既に存在してるファイルが500KBだったのが0KBに変わってから書き込まれたような挙動をしていたのでこれが本来の挙動であっているのかなと思って質問させて頂きました

903 :デフォルトの名無しさん:2018/05/10(木) 19:46:14.64 ID:qfiWpAWD.net
>>899
引数で指定できるんじゃね?普通の言語は指定できる。パイソンは知らんけどw

904 :デフォルトの名無しさん:2018/05/10(木) 19:50:57.63 ID:+TSTlbnk.net
>>897
fx自動売買など

905 :デフォルトの名無しさん:2018/05/10(木) 20:08:10.25 ID:g7n9xSc7.net
掃除とかゴミ出し、家事を物理レベルで自動化してほしい。

906 :デフォルトの名無しさん:2018/05/10(木) 20:12:17.24 ID:qfiWpAWD.net
万能メイドロボができるのは20年後かな?

907 :デフォルトの名無しさん:2018/05/10(木) 20:56:14.26 ID:BnDtJXlu.net
pythonでお願いします。

908 :デフォルトの名無しさん:2018/05/10(木) 22:52:42.39 ID:yoOX74ZE.net
>>899-903
ファイル書き込みには、上書き・追記・trunc とか、様々な種類がある

909 :デフォルトの名無しさん:2018/05/11(金) 04:57:11.77 ID:uqXGozXF.net
with open('input/lunch.csv', encoding = 'utf-8')as f:
for row in f:
colnms = row.rstrip().split(',')
name = colnms[0]
lunch = colnms[1]

if lunch == 'コロッケ弁当':
print(name)


colnms[0]
colnms[1]

この[0] [1] 意味教えてさいお願いします。

910 :デフォルトの名無しさん:2018/05/11(金) 07:38:43.53 ID:vQCkIPpY.net
リストなどのシーケンス[index]

index は、0 origin で、0, 1, 2〜と順番に、要素が並んでいる

911 :デフォルトの名無しさん:2018/05/11(金) 11:16:18.85 ID:eFEUpfi5.net
うんこすれ

912 :デフォルトの名無しさん:2018/05/11(金) 13:47:06.39 ID:SUjyRpfE.net
>>909
確かになにこれだよな
例えば
1 + 1で+の意味が分からないと、これが何をしているのかわからないよな
俺らは学校で"+が引き算を表す記号(演算子)"だと洗脳されていから、この結果は0
で、"-が足し算を表す記号(演算子)"と洗脳されているから、1-1は2になると分かるよな
で、
name = colnms[0] 場合の[]はPythonではget itemするアルヨを表す記号
逆にしてcolnms[0] = name の時の[]はPythonではset itemするニダを表す記号
Pythonの__getitem__、__setitem__ を調べれば[]の意味は分かる
最後にここまで読んだお前はうんこだよ。うんこは嘘を読んで信じるからな

913 :デフォルトの名無しさん:2018/05/11(金) 18:59:36.18 ID:wsKfkjHh.net
colnmsの意味を教えてください

914 :デフォルトの名無しさん:2018/05/11(金) 21:05:28.71 ID:613lDHdi.net
colnmsの意味はcolumnsだろうな多分

915 :デフォルトの名無しさん:2018/05/11(金) 23:37:29.76 ID:iRrzHK7E.net
とりあえず、csvモジュール使ったほうがいいと思います

916 :デフォルトの名無しさん:2018/05/12(土) 00:02:44.49 ID:f2N3rmqf.net
とにかくうんこスレには来ないほうが良い
うんこスレに来るとウジ虫な奴になる

with open('input/lunch.csv', encoding = 'utf-8')as f:
for row in f:
colnms = row.rstrip().split(',')
の意味が分かるからきかない、で、下の[0] [1]で 意味は分からんって不思議な感じ
俺なら[]どころか1行目のwith〜で意味わからんだが

917 :デフォルトの名無しさん:2018/05/12(土) 01:40:06.80 ID:hwxaPbIq.net
Ruby で、以下のコロン区切りのCSV 入力ファイルを、1行ずつ処理する

"1":"Fri, 02 Mar 2018 01:10:15 +0900":"abc"
"2":"Fri, 02 Mar 2018 01:10:20 +0900":"def"

CSV.foreach("abc.csv", col_sep: ":") { |row| p row }

出力結果
["1", "Fri, 02 Mar 2018 01:10:15 +0900", "abc"]
["2", "Fri, 02 Mar 2018 01:10:20 +0900", "def"]

row[1] 要素内のコロンでは、区切れていないだろ。
これを自分で、split で区切ったら、5要素になってしまう

だから各要素中に、区切り文字がある場合にも、
正常に動くためには、CSV のモジュールを使わないといけない

918 :デフォルトの名無しさん:2018/05/12(土) 01:44:14.61 ID:f2N3rmqf.net
うんこスレだとPythonではなく他言語のRubyのことを語るだからな

919 :デフォルトの名無しさん:2018/05/12(土) 10:07:27.69 ID:PhPFRMEv.net
スレタイにエクスキューズがあるからといって何をしても良い訳ではない

920 :デフォルトの名無しさん:2018/05/12(土) 12:00:15.73 ID:R/twbybb.net
>>917
子々孫々汚辱にまみれて苦しみ抜いて死にますように。

921 :デフォルトの名無しさん:2018/05/12(土) 12:05:17.55 ID:baCqg7K+.net
これは子孫がいない>>917の勝ち

922 :デフォルトの名無しさん:2018/05/12(土) 12:16:34.10 ID:TElP4mcm.net
Vectorに公開してるしょぼいPythonのスクリプトをGithubでNYSLで公開したいんだけどとりあえずどうしたらいい?
あまよくば、誰かが勝手に改良してくれることを期待
とりあえず、ユーザー登録まではしたけど、英語だしチュートリアル読む気にもなれない
手短にやり方分かるHPあったら教えて

923 :デフォルトの名無しさん:2018/05/12(土) 12:22:17.95 ID:XqIGE8bt.net
デザインパターンのブログ(ヤフーブログ)・・・・なかなか良い。

https://blogs.yahoo.co.jp/kamyu_2010/35442561.html

924 :デフォルトの名無しさん:2018/05/12(土) 13:36:42.82 ID:jVncCHkO.net
Python超初心者スレらしくRuby語り、github相談となんでもありだな

925 :デフォルトの名無しさん:2018/05/12(土) 17:31:12.57 ID:AgnQJ85k.net
じゃあつぎはおでんの具の話しよう

926 :デフォルトの名無しさん:2018/05/12(土) 17:58:10.85 ID:vrXL3+qd.net
おでんは大根に限る

927 :デフォルトの名無しさん:2018/05/12(土) 18:27:31.08 ID:TkoJoFTb.net
ばれたら大根にも課税してくるぞ。

928 :デフォルトの名無しさん:2018/05/12(土) 19:22:23.63 ID:Z9eJs0up.net
>>922
あきらめてチュートリアル嫁

929 :デフォルトの名無しさん:2018/05/12(土) 21:00:12.16 ID:MhU9MMPk.net
こんど勉強するつもりなんだけどネットに学習サイトみたいなのあるけど
ああいうのはどうなの?

930 :デフォルトの名無しさん:2018/05/12(土) 21:40:58.38 ID:vrXL3+qd.net
学習サイトってなんだよ?具体的にURLだせよ

931 :デフォルトの名無しさん:2018/05/12(土) 21:55:01.35 ID:Z9eJs0up.net
>>929
続きは課金版で!とかいうかんじのやつのことか?

932 :デフォルトの名無しさん:2018/05/12(土) 23:54:25.51 ID:TElP4mcm.net
>>928
プログラマだといって英語が当たり前に読める前提は辞めて欲しい
英検3級落ちたOrz

933 :デフォルトの名無しさん:2018/05/13(日) 00:16:45.23 ID:uzXbRXrC.net
つGoogle翻訳

934 :デフォルトの名無しさん:2018/05/13(日) 01:54:43.20 ID:56pGVkb8.net
>>933
>>932は実は英語”超初心者"でも英訳を出来るHPあったら教えて
と言うここらしい質問を間接的に(ダイレクトには流れ的にしずらい?)しているんだからな。

githubの次は英語、ほんと>>919だよな
勉強する気がある奴のための初心者用スレとは違い、超初心者用スレ==実は勉強する気ない奴用スレ

935 :デフォルトの名無しさん:2018/05/13(日) 03:39:04.31 ID:BxSSHPxy.net
最近始めたんですが、ファイルを分割したいのでimportを使うようなのですが、スコープが全然解らなくて教えてください。

main.py
class Filelorder():
 data=読み込んだデータをここに保持
class Calcfunc():
 def なんちゃら:
  file_lorder.data と参照して使用
file_lorder=Filelorder()
file_lorder.load() クラス内にdef loadは作ってあります

この様にしていたのですが

fileloader.py にclass Filelorderを移動
calcfunc.py にclass Calcfuncを移動
main.py
from fileloader import *
from calcfunc import *
file_lorder=Filelorder()
file_lorder.load()

として、file_lorderを切り分けたファイル側から参照するにはどうしたらいいのでしょうか
又は、Filelorder()のインスタンスの置き場所としてfile_lorderをグローバルに置くべきではないのでしょうか
class Filelorder の中を外部から直接見る方法はあるのか、fileloader.py 内でインスタンスを作ってしまってそれを他のファイルから参照できるのでしょうか
教えてくださいよろしくお願いします。

936 :デフォルトの名無しさん:2018/05/13(日) 03:54:47.75 ID:gEMGN+Hk.net
かと言って難しい質問くると困るんだろ?

937 :デフォルトの名無しさん:2018/05/13(日) 04:13:04.78 ID:ya8BaCcb.net
>class Filelorder の中を外部から直接見る方法はあるのか
となりのクラスとかからみたいときは
Filelorder.data
でとりだせるはず
なかみはいってるならな!

938 :デフォルトの名無しさん:2018/05/13(日) 05:07:55.74 ID:zLnIxXxX.net
>>936
別に困らんよ。難しとか関係なくてきとうに妄想レスするだけだし

>>935
テラテイルできけ。ある程度の以上の実力がある奴がたくさんいるところで質問したほうが良い。
ここだと俺のような超低レベル激多く、そいつらのあほ回答を訂正してくれるそれなりの実力ある奴がいない。
お前自身も自分でそれが良くないって分からんだろうし。
ここにはrubyの上級者がいるからその人が気合を入れてrubyではと説明してくれるかな

939 :デフォルトの名無しさん:2018/05/13(日) 06:05:01.61 ID:BxSSHPxy.net
レスありがとうございます。
試行錯誤してみたのですが、ひとつのファイルならクラス外のグローバルにアクセスできるけど、ファイルを分けると完全に切り分けされてしまってグローバルにアクセスできなくなる感じだというのが解りました。
Calcfuncのインスタンスを作る時にfile_lorderを持たせて保持してもらうことで対応できそうです。
どうでもいいけど、lorderでなくてloaderですね、lordなら意味は通じなくもないけどerは付かない・・・
どうもありがとうございました。

940 :デフォルトの名無しさん:2018/05/13(日) 06:10:57.49 ID:u4TQvgwd.net
Python のglobal は、モジュール(ファイル)スコープのglobal

アプリ全体のglobal は無い

941 :デフォルトの名無しさん:2018/05/13(日) 06:11:49.39 ID:A9i0212o.net
http://www.netcom-ir.com/about.html

942 :デフォルトの名無しさん:2018/05/13(日) 06:16:08.95 ID:u4TQvgwd.net
>>935
>from fileloader import *
* を使うのは、名前がバッティングする事もあるから危険

>class Filelorder の中を外部から直接見る方法はあるのか
見れたら危険、ダメ!
カプセル化にならない

943 :デフォルトの名無しさん:2018/05/13(日) 14:21:28.34 ID:44h/7/Ui.net
lorderなのにloaderでimportか

944 :デフォルトの名無しさん:2018/05/13(日) 20:59:45.78 ID:NxCcWPip.net
matplotlibで座標を繋いだり画像変換してみたのですが
画像自体を保存するとグラフの縦軸や横軸なしで画像を保存する方法はないでしょうか?
plt.savefig(savefile)すると縦軸横軸も合わせて小さいサイズで保存されてしまいます。

宜しくお願いします。

945 :943:2018/05/13(日) 22:47:43.29 ID:NxCcWPip.net
自己解決です
以下にいくつかの解決方法が書いてありました。

ttps://stackoverflow.com/questions/9295026/matplotlib-plots-removing-axis-legends-and-white-spaces

946 :デフォルトの名無しさん:2018/05/13(日) 22:52:21.76 ID:u4TQvgwd.net
どこかで、辞書とOrderedDict の違いについて書いていたけど、

Python3.6 以降の辞書は、追加された順序を保持するけど、
OrderedDict とは異なる

比較する際、OrderedDictでは並び順も含めて、一致と判定されるが、
普通の辞書では、並び順を考慮しないで、一致と判定される

「みんなのPython 第4版、2017」に書いてある

947 :デフォルトの名無しさん:2018/05/14(月) 13:39:40.34 ID:dnGRWxRE.net


948 :デフォルトの名無しさん:2018/05/14(月) 21:33:13.64 ID:bWj41az5.net


949 :デフォルトの名無しさん:2018/05/14(月) 22:26:45.42 ID:qyA4ekTm.net
>>554
「スッキリわかるJava入門」読んだけど、ホントにスッキリ分かった。みんなのPython読んでもあんまりよく分かんなかったから、すごく助かった。ありがとう。

950 :デフォルトの名無しさん:2018/05/15(火) 23:50:23.47 ID:kemdIyiU.net
テステス

951 :デフォルトの名無しさん:2018/05/15(火) 23:52:53.79 ID:aPHBzWqI.net
スマホゲームで3dcg(アイマス)が動いてるのを見ましたが
ああいう3dcgを表示させてなおかつキャラの線画をpythonで表示させるのって
どうやってやるんです??
なんかライブラリとかあるんでしょうか???

952 :デフォルトの名無しさん:2018/05/15(火) 23:59:00.22 ID:yA5cZ/bV.net
Unityでも使え
Pythonはそういうのには向かない

953 :950:2018/05/16(水) 00:26:52.64 ID:/ybNsX95.net
>>952
そーなんですかー
3dグラフとか表示できるなら
3dcgの表示もできそうな気もしたんですが・・・

954 :デフォルトの名無しさん:2018/05/16(水) 00:57:32.22 ID:tDn46mBr.net
なんでUnityのほうがうまく出来ると言ってるのにPythonでやりたいの???
せっかくPythonなんだからDEEPラーニングでもやりなよ。

955 :デフォルトの名無しさん:2018/05/16(水) 01:03:42.96 ID:fNF/e1WT.net
Blenderでも弄ってればいい
死ぬまでに目的は達成できないだろうけど

956 :デフォルトの名無しさん:2018/05/16(水) 01:28:28.79 ID:OHqFGkDt.net
キャラの線画が欲しいのであればUnityかUnreal Engineでシェーダっていう機能をつかうのが1番だよ
おすすめはUnity

957 :950:2018/05/16(水) 01:35:32.76 ID:/ybNsX95.net
>>954>>955
単純に自作のスクリプトで表示させてみたかっただけで
unity、blenderとなるとなんかもうソフトウェアの力で自作のスクリプトって感じじゃないから・・・
deepラーニングもやってみましたけどグラボがしんどいですね・・・

958 :デフォルトの名無しさん:2018/05/16(水) 01:39:16.21 ID:FA14v5TT.net
>>953
お前が素敵なPython用3dcgライブラリを作れば良い

959 :950:2018/05/16(水) 01:47:22.67 ID:/ybNsX95.net
>>958
ライブラリ無しでマイナー系画像変換自力でやったらしんどかったから
もうライブラリ欲しいところです・・・

960 :デフォルトの名無しさん:2018/05/16(水) 02:00:01.10 ID:FA14v5TT.net
>>959
ライブラリ作るのいやなら
Pythonでunity・blenderを使えるようにするラッパーライブラリは恐らくあるだろうからそれらを使うと。
でも、これ実質unity・blenderを覚える感じになるだろうからな。それなりに大変だろう。

961 :デフォルトの名無しさん:2018/05/16(水) 03:16:37.10 ID:OVunt3L8.net
D3.js もある

962 :デフォルトの名無しさん:2018/05/16(水) 04:02:53.59 ID:y2yRZUTM.net
three.jsとかをブラウザで動かすのをpythonで作ればいいかも

963 :デフォルトの名無しさん:2018/05/16(水) 04:10:59.94 ID:Amb3YQ8Z.net
それjsでやればよくね
せっかくpythonならではなことあるのに…

964 :デフォルトの名無しさん:2018/05/16(水) 04:30:42.28 ID:y2yRZUTM.net
ああBlenderあるじゃん
pythonで動かせるし、シェーダーとか画像いじる機能あるからいろいろできるよ

965 :デフォルトの名無しさん:2018/05/16(水) 05:49:08.99 ID:QHwJxR1m.net
if-else文で else: を打ったあとにエンターを打つとエラーが出る
外側のインデントレベルと一致しないって書いてるけど
if と else は揃えてるのになんでだろう
わからなすぎる

966 :デフォルトの名無しさん:2018/05/16(水) 06:33:53.50 ID:QHwJxR1m.net
エディタウィンドウに書いてランモジュールしたらできたわすまん

967 :デフォルトの名無しさん:2018/05/16(水) 08:16:33.90 ID:lTPRUXuf.net
vimでpython快適すぎる

968 :デフォルトの名無しさん:2018/05/16(水) 08:57:30.38 ID:qkrXN4I4.net
ショートカット覚えるの大変そう

969 :デフォルトの名無しさん:2018/05/16(水) 08:58:49.08 ID:1kumNLOc.net
>>968
慣れの問題でしょ
Ctrl + z 使えないのはクソだけど

970 :デフォルトの名無しさん:2018/05/16(水) 09:31:00.24 ID:L2yt4rd4.net
ギリシャ語もサンスクリット語も慣れの問題だしな。

971 :デフォルトの名無しさん:2018/05/16(水) 10:40:34.70 ID:A9RQXItD.net
IDE使えば良いのにって思うのは俺だけか?

972 :デフォルトの名無しさん:2018/05/16(水) 10:56:32.16 ID:lTPRUXuf.net
vim>>>IDE

973 :デフォルトの名無しさん:2018/05/16(水) 12:16:40.52 ID:RMjO9vAG.net
今どきのvimは絶妙に厨心をくすぐってくるからのうw

974 :デフォルトの名無しさん:2018/05/16(水) 12:19:56.97 ID:ZMymGWPG.net
スパイダー快適だが、他のideためしたことないのでこれがベストなのかは定かでない

975 :デフォルトの名無しさん:2018/05/16(水) 12:30:21.84 ID:xuEEDw5Q.net
プロプログラマーはメモ帳で十分

976 :デフォルトの名無しさん:2018/05/16(水) 13:15:44.53 ID:ARH2jIFi.net
Vimは依存症になるから最後の手段にすべきだと思うわ(末期)

977 :デフォルトの名無しさん:2018/05/16(水) 14:25:01.39 ID:jhSq8YOA.net
pycharmにvimのキーバインドじゃいかんのか?

978 :デフォルトの名無しさん:2018/05/16(水) 19:33:40.53 ID:aR/wC9wE.net
Vimとか慣れるまでが苦痛すぎて初期のころに代替案あった人は挫けるだろふつうw
おれは挫けたwww

979 :デフォルトの名無しさん:2018/05/16(水) 22:36:02.43 ID:NsysEXLf.net
みんなのpythonを地道に読みながら勉強してる
まだまだ基本の構文も覚えきれてないところが多いから背伸びしちゃダメなのかもしれないけど、他に勉強する時にこういうのもやっておくと良い事があれば教えてください
やりたい事は知識もないからすごくぼんやりしてるけど機械学習や自然言語処理は面白そうだなと思っています

980 :デフォルトの名無しさん:2018/05/16(水) 22:58:10.26 ID:aR/wC9wE.net
何度も言われてることだけど、プログラム自体の初心者か他の言語の経験があってpythonだけ初心者かで話が全然違う。
プログラム自体の初心者ならいきなり機械学習や自然言語処理は不可能に近い。

981 :デフォルトの名無しさん:2018/05/16(水) 23:28:16.46 ID:NsysEXLf.net
>>980
ありがとうございます
C#は基本的な部分だけですが理解はあります
機械学習などは実装するだけでも難しいのにアルゴリズムまで理解するのは初心者にはハードルが高いですよね
数式も大量ですし…

982 :デフォルトの名無しさん:2018/05/17(木) 00:44:29.39 ID:Lzp2Vc2q.net
>>981
俺もプログラミング超初心者だけど
>C#は基本的な部分だけですが理解はあります
こんなレベルでは俺同様プログラミング超初心者。
なのに機械学習や自然言語処理をやるってのは、
幼稚園児・小学低学年レベルが大学の専門課程でやるような応用物理解してやる感じだからな。

983 :デフォルトの名無しさん:2018/05/17(木) 00:47:46.86 ID:XX3nCjY+.net
超初心者が超初心者に偉そうにwwwww
何がわかるってんだ恥知らずwwwww

984 :デフォルトの名無しさん:2018/05/17(木) 01:20:08.19 ID:3xWF9DId.net
そんなこと言っても実際にプログラムに触って物作ってる奴は形にするけどな
多分このスレで下から数えた方が早いけどチャットソフトを改造したものがバズって
その後アクセ数が増えて広告だけで3万ドルくらい入った事がある
因みにPaizaでCランクの頃の話
価値あるモノを作り出すのに必ずしもプログラムスキルが必要とは限らない

未だにBランクだからプログラムを極めたいならお薦めしないけど
自分が社長でとりあえず使えるモノを作りたいってのなら、さっさとやってみるってのが早いかもしれない
不足な知識はその都度学習するとかね

自然言語は分からないけど、機械学習の基礎だと ゼロから作るDeep Learning とか面白いと思う
書いてあることは何となく分かるけど、これやってると放送大学でコンピュータが何故動くか?
真理表から半加算機を作ったりしてる講座を思い出した
知ってた方が良いのは分かるけどこんな事知らなくても使えるアプリなら普通に作れるしねー

985 :デフォルトの名無しさん:2018/05/17(木) 01:50:10.21 ID:YG+mq+e5.net
すいません、教えていただけないでしょうか?
以下のサイトのexrからopencvに変換するサンプルプログラムのところで
http://www.excamera.com/articles/26/doc/intro.html

module 'cv2.cv2' has no attribute 'SetData'というエラーが出ます
検索したところどうもバージョンがopencv2系じゃなくて3系だと
命令文が違う?みたいなのですが3系だと
何になってるか教えていただけないでしょうか???
あとcv.CreateMat(size[1], size[0], cv.CV_32FC1)のほうは
かろうじてimg = np.zeros((size[1], size[0], 3), np.uint8)かなと思うのですが
あってますでしょうか?

986 :984:2018/05/17(木) 02:12:01.82 ID:YG+mq+e5.net
すいません、opencv普通にexrファイル読み込めました。
早とちりしました

987 :デフォルトの名無しさん:2018/05/17(木) 02:23:52.26 ID:fqn4FbA/.net
良かったね。じゃスレ立てよろしく。

988 :デフォルトの名無しさん:2018/05/17(木) 02:44:02.91 ID:6RAvlfEJ.net
>>984
広告だけで300万円って相当なものだと思うんだけど
何作ったの?

989 :デフォルトの名無しさん:2018/05/17(木) 03:43:35.05 ID:/4+1nU67.net
chainerを使って入力からクラス分けのやり方は分かったのですが入力から出力を出すやり方がわかりません。
例えば株価予測といったようなものです。
解説サイトなどありませんか?

990 :デフォルトの名無しさん:2018/05/17(木) 05:54:00.96 ID:ZbwXfOjf.net
>>989
専門用語使って話さない辺り機械学習初学者以下と見た
回帰分析をしたいんだと思うんだけど,回帰分析にも様々な手法があるから流石にもう少し調べてから質問してくれ

991 :デフォルトの名無しさん:2018/06/07(木) 02:19:34.60 ID:LLA+5E67T
そも、vimは魔改造して開発環境整えれるからええよな・・・
Ctr-Zのキーバインドも自分で設定することが可能だ ボソッ

992 :デフォルトの名無しさん:2019/07/27(土) 23:34:34.43 ID:KWQGlB6t4
C++の変数をpythonの変数に変換したい場合、簡単に変換するのにどうすればいいんでしょうか?
わかる方いらっしゃいませんか

総レス数 992
262 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200