2ch勢いランキング アーカイブ

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


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

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

前スレ
くだすれPython(超初心者用) その36
ttp://mevius.2ch.net/test/read.cgi/tech/1514805522/
デフォルトの名無しさん [sage] 2018/03/17(土) 17:20:52.13:apINGZdL
1乙
デフォルトの名無しさん [sage] 2018/03/17(土) 22:54:10.59:71uTBaAx

やっぱこのスレがないとな
デフォルトの名無しさん [sage] 2018/03/18(日) 01:10:06.02:1gnxon3r

乙ぱいそん
デフォルトの名無しさん [sage] 2018/03/18(日) 08:16:22.54:5YCBO0rZ
乙!!!
デフォルトの名無しさん [] 2018/03/18(日) 14:40:54.55:gweQjn0m
O2
デフォルトの名無しさん [] 2018/03/20(火) 16:48:16.51:UQThoPnt
てst
デフォルトの名無しさん [] 2018/03/20(火) 21:57:11.58:4r2XpJ0O
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のようにしてうまく動いてほしいのですが、教えて頂きたいです。すみません…。
デフォルトの名無しさん [sage] 2018/03/20(火) 22:03:32.55:CB6mEnFT
>エラーとなってしまいます
こんなふうに使いたいたいけどエラーになるのは激糞ってことで、
"window.open('about:blank', bbb)"
のbbbを文字列ではなく変数扱いにしろと
Pythonを作っているところに激しくクレームすればOK
デフォルトの名無しさん [sage] 2018/03/20(火) 23:41:50.62:qVb9KqM8
Method: Selenium::WebDriver::Driver#execute_script

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

execute_script(script, *args)

Ruby では、第1引数に、JS のソースコード、
第2引数に、様々な型のオブジェクトの配列だけど
デフォルトの名無しさん [sage] 2018/03/20(火) 23:44:43.85:8h2nHQPc
Rubyスレに書き込めばいいのに
デフォルトの名無しさん [sage] 2018/03/21(水) 00:29:22.31:e7ByloC5
window.open('about:blank', 'tab{:d}'.format(aa))

0埋めや桁指定したかったら、{:04d}とかにすればおk
8 [] 2018/03/21(水) 09:16:16.57:+xAnIYdW
有難うございました。
色々試させて頂きましたがなぜか出来ずに、
調べてみたの似たようなケースのもので
'tab{%d}'%(aa
など数パターンをしてみましたが駄目でした。
window.open('about:blank')
のみでもタブは開きますが、のように開いたタブを指定しないと
色々操作できないようなので…
引き続いて調べてみようと思います。
デフォルトの名無しさん [] 2018/03/21(水) 10:08:37.83:9aBHV4ji
javascriptスレ逝け
デフォルトの名無しさん [] 2018/03/21(水) 10:12:09.46:MTE55bx9
for aa in range(5):
bbb = 'tab' + str(aa)
print(bbb)
driver.execute_script(f"window.open('about:blank', '{bbb}')")
デフォルトの名無しさん [sage] 2018/03/21(水) 10:16:50.03:wxFTzoek
最も最近に起動した、タブを取得する、というような関数は無いのか?
デフォルトの名無しさん [sage] 2018/03/21(水) 10:20:58.28:UHcPczyP
pythonってプログラミング言語なの?
デフォルトの名無しさん [] 2018/03/21(水) 10:21:00.65:9aBHV4ji

javascriptスレ逝け
デフォルトの名無しさん [sage] 2018/03/21(水) 10:50:33.68:wxFTzoek
Python は、Ruby みたいに、
文字列内に、変数が埋め込めないのか

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

Python は、不便・ややこしい
デフォルトの名無しさん [] 2018/03/21(水) 11:10:28.98:4NRc1cWQ
多分ネームスペースの問題だけど詰まった…

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

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

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

抽象的だけどなんか詰まりやすいポイントあればエスパーな人教えてください
デフォルトの名無しさん [] 2018/03/21(水) 11:15:59.51:4NRc1cWQ
取り敢えず既製パッケージはちゃんとmainから呼べるように出来てるんだから、既製パッケージに習って__init__.py置いてパッケージに纏めてみるかな…
デフォルトの名無しさん [] 2018/03/21(水) 11:35:22.45:9aBHV4ji

馬鹿には無理
デフォルトの名無しさん [] 2018/03/21(水) 11:45:31.65:+xAnIYdW

有難うございました!これで出来ました!
このパターンもどこかのサイトにあった記憶はありますが
結局投げ出し気味でしっかり試さず来ていたと思います…
tab0、tab1と指定して開いていて、あとでタブ切り替えもしっかり行ってくれました。
ありがとうございました!
デフォルトの名無しさん [sage] 2018/03/21(水) 11:47:06.86:wxFTzoek
>しかし別ファイルのmainにmyModをインポートしてmyFuncを呼ぶと動かない

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

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

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

まあ、具体的なソースコードが無いと、回答するのは難しい
デフォルトの名無しさん [] 2018/03/21(水) 12:17:35.83:4NRc1cWQ

手元に無いのですまん、そりゃ分からんよね
でも取り敢えずタイミングというのは手掛かりになりそう、ありがとう
printとdir置いてトレースしてみる
デフォルトの名無しさん [sage] 2018/03/21(水) 14:24:13.65:F7vjZmd4

3.6からできなかったっけ
デフォルトの名無しさん [] 2018/03/21(水) 15:18:06.81:MTE55bx9
2.5からできてますが
デフォルトの名無しさん [sage] 2018/03/21(水) 19:39:40.24:II1JNNPJ
3.6から文字列内に直接変数名を埋め込めるようになったんだよなあ
format()が余りにも不評だったんだろう
これだけで8文字取るからな
書籍でも従来の%を使っているものが多い
デフォルトの名無しさん [sage] 2018/03/21(水) 19:59:57.38:ZIWF0mlj
loggerがformatに対応しないから俺もレガシーなフォーマットに戻った
変数展開はきっと使うと思うけど
デフォルトの名無しさん [sage] 2018/03/21(水) 22:59:14.27:iE0+8PVB
ubuntuでpython 2.x と 3.xを使い分けるにはどうするのが一番いいですか?
デフォルトの名無しさん [sage] 2018/03/21(水) 23:28:46.60:120kxtjS
Linuxを使っていないWinユーザーの俺でも
Linuxではそう言うのはシバンでやると知っているが.
次の質問はutf-8とかの文字コードを使い分けるにはどうするのが一番いいですか?
かな
デフォルトの名無しさん [sage] 2018/03/22(木) 00:02:13.59:tdHViWJs

1. function print(){ };
2. (function print(){ })();

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

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

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

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


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

$ python2 --version
プログラム 'python2' はまだインストールされていません。
次のように入力することでインストールできます:
sudo apt install python-minimal
デフォルトの名無しさん [] 2018/03/22(木) 02:54:23.14:6YcPw3Wb
python3でreqieatsモジュールについてなのですが、postでパラメータを送る際のurlエンコードの文字コードを指定する方法はありますか?
デフォルトの名無しさん [sage] 2018/03/22(木) 04:28:32.50:tdHViWJs
「python3 requests post 文字コード」で検索!
デフォルトの名無しさん [] 2018/03/22(木) 06:40:32.12:nTB8AQAc

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

元々、そのform があるHTML に、文字コード・地域を指定しているはず
デフォルトの名無しさん [sage] 2018/03/22(木) 08:57:23.33:+wYf8aa1
黙れ統失Rubyカス


requests.postのdataにurlencodeした結果を指定する、であってる
それでも化けるならContent-Typeヘッダーにcharsetつける
それでも化けるならおま環問題である可能性が高い
デフォルトの名無しさん [sage] 2018/03/22(木) 09:10:10.92:MSVR+REx

最近プログラム板に来た人かな?
ID:tdHViWJsは、この板の全域に出没して適当な回答を繰り返す問題のある人物なので、
時間を無駄にしたくないのなら相手にしないほうがよい。
この人物は文章が特徴的なので、何度か目にすれば察せるようになるだろう。
デフォルトの名無しさん [] 2018/03/22(木) 09:46:12.22:Q2/ylW7b
迷ったらMIME
デフォルトの名無しさん [sage] 2018/03/22(木) 13:27:14.07:8yaQ1Td9
pythonの勉強のためにAnacondaを導入しました
webサイトを見ながら触ってみたのですが、Anaconda promptでconda update condaと入力するとSolving environment:failedと表示されCondaHTTPErrorと続いてアップデートが完了していないと思われる現象が起こります
検索してみたのですが英語が読めず原因が分かりません
プログラム以前の問題で申し訳ないのですが原因と考えられる要素を教えてください
デフォルトの名無しさん [] 2018/03/22(木) 13:30:22.51:Q2/ylW7b
net繋がってないだけとか
デフォルトの名無しさん [sage] 2018/03/22(木) 14:49:30.96:8yaQ1Td9

ありがとうございます
インターネットには接続は問題ないようです
デフォルトの名無しさん [sage] 2018/03/22(木) 14:55:21.42:WC+ROiY7
プロキシサーバーを経由してるとか
デフォルトの名無しさん [] 2018/03/22(木) 14:56:15.47:Z8Y+8YFX

ありがとうございます。
今手元にないので後でもう一度試してみます。
デフォルトの名無しさん [] 2018/03/22(木) 15:14:14.52:+AIswhSt
あいやー
おちぃんちんサーバに接続
ぴぃーーーー。小5ロリ以外を粛清せよ
デフォルトの名無しさん [sage] 2018/03/22(木) 15:36:21.99:8yaQ1Td9
発生しているエラーはこの人と同じ現象だと思います
英語は分かりませんが
conda config ―set ssl_verify no
をやってみろみたいな記述があったので試してみたのですが状況は変わりません…

ttps://github.com/conda/conda/issues/6007
デフォルトの名無しさん [] 2018/03/22(木) 15:38:27.86:o6o53GFc
証明書のクリアしてみるか?
デフォルトの名無しさん [] 2018/03/22(木) 15:39:41.97:o6o53GFc

そもそも windows の firewall でブロックかな
ウィルス対策ソフトとか firewall とか一時的に無効でもだめか?
デフォルトの名無しさん [sage] 2018/03/22(木) 16:53:47.05:8yaQ1Td9

ありがとうございます
ファイアウォールは切ってみてもダメでした
社内のPCを使っているのですが、ネットワークの知識もないのでどこが影響してるのかも追えなくてすいません…
デフォルトの名無しさん [sage] 2018/03/22(木) 18:42:33.32:/vagzVD7
配列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)

みたいなのを考えてみたんですが、たぶんもっとスマートな方法があると思うので、教えてください
デフォルトの名無しさん [sage] 2018/03/22(木) 19:00:38.71:rLoCj1aX

aにないものが見つかったところでbreak→False判定 ってして
ループまわす
デフォルトの名無しさん [sage] 2018/03/22(木) 19:22:38.90:MSVR+REx
setにすれば集合演算が使える
デフォルトの名無しさん [sage] 2018/03/22(木) 19:59:16.77:RnvqqGyo
同じ配列に対して繰り返しその比較するならあらかじめソートしておくと良いことあるかもしれない。
デフォルトの名無しさん [sage] 2018/03/22(木) 20:38:40.26:RnvqqGyo
ん、繰り返さないとしてもソートしたほうが速いのか?
よくわからん…
デフォルトの名無しさん [] 2018/03/22(木) 20:38:51.79:+AIswhSt
a,bをinで粛清せよ
デフォルトの名無しさん [] 2018/03/22(木) 20:48:12.70:+AIswhSt
同士諸君、赤
デフォルトの名無しさん [sage] 2018/03/22(木) 21:17:50.10:rLoCj1aX
Happiness is Mandatory. Citizen,are you happy?
デフォルトの名無しさん [sage] 2018/03/22(木) 21:41:09.52:mUCyPZ6U

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

よく考えたら内包表記でもifしたら速度出ないですね
これで試してみます
デフォルトの名無しさん [] 2018/03/22(木) 22:14:23.56:+AIswhSt
要素が含まれてるか検知するのに、lenやifを使うなんて
頭が悪すぎる。

粛清せねば成らない。
デフォルトの名無しさん [] 2018/03/22(木) 22:15:25.38:+AIswhSt
ifは必要だ
デフォルトの名無しさん [sage] 2018/03/22(木) 22:17:04.96:+wYf8aa1
おまえは何をいっているんだ
デフォルトの名無しさん [sage] 2018/03/22(木) 22:17:06.65:RnvqqGyo
んあ、パイソンってループより内包表記のほうが速いってマジ?
デフォルトの名無しさん [sage] 2018/03/22(木) 22:23:11.07:+wYf8aa1
内包表記でリストを作る場合は専用命令を使うので、微々たる物だが速くなる
デフォルトの名無しさん [sage] 2018/03/22(木) 23:35:44.33:q/Ja7+Ba

> 配列aの要素が配列bにすべて含まれていればTrue
> 例えば以下のような形です
> #True
> a=(1,2,3,4)
> b=(2,1,3)

???
4が配列bに含まれていないようだが?
なぜにTrue???
デフォルトの名無しさん [] 2018/03/23(金) 00:03:52.46:qUw1cRZJ
え?
デフォルトの名無しさん [sage] 2018/03/23(金) 00:22:49.84:i31Fn5mw
うーんまあ
配列aの要素が配列bの要素をすべて含んでいる場合
あるいは
配列bの要素が配列aにすべて含まれている場合
と書くのが正確ね
デフォルトの名無しさん [sage] 2018/03/23(金) 00:53:01.08:0pO3RnAr

このスレの質問者は超低脳が多い。
そんな奴の質問は辻褄が合うことはあまりない
そんなもんだから回答者は真の質問を見抜ける高脳でないと駄目

len(a)>=len(b)なら、配列aの要素が配列bにすべて含まれている可能性あるのは....
デフォルトの名無しさん [sage] 2018/03/23(金) 00:57:09.20:0pO3RnAr

a,bが逆になっているだけじゃないのか
デフォルトの名無しさん [] 2018/03/23(金) 04:01:48.52:NfdpbbfG
誰かアプリ作れる人いませんか?
デフォルトの名無しさん [] 2018/03/23(金) 07:22:27.94:qUw1cRZJ
このスレでアプリ作れるのは俺くらいのもんだろ
デフォルトの名無しさん [sage] 2018/03/23(金) 11:51:11.90:L1wsKiud
pythonでアプリ(実行ファイル)作るのは難しいよな
俺もスクリプト作るのが限界だわw
デフォルトの名無しさん [sage] 2018/03/23(金) 12:22:07.12:kM32haS5
わざわざ()してくれたとこ悪いんだけど.pyも実行ファイルなんだよね
デフォルトの名無しさん [sage] 2018/03/23(金) 12:33:36.05:dRbnJSq+
Windowsみたいなオモチャだと難しいよなw
デフォルトの名無しさん [sage] 2018/03/23(金) 18:11:07.27:OUYN8NdW
class NewClass:
hoge = "hoge"

class NewClass:
def __init__(self):
self.hoge = "hoge"
この2つに違いってありますか?
デフォルトの名無しさん [] 2018/03/23(金) 18:43:03.09:GtydX90K
あるよ
デフォルトの名無しさん [] 2018/03/23(金) 19:37:01.46:ZnDm/A5o

それってジェネレータに勝てるの?
デフォルトの名無しさん [sage] 2018/03/23(金) 19:42:15.36:OUYN8NdW

なるほど継承するときに違いが出るということですね
ありがとうございました
デフォルトの名無しさん [] 2018/03/23(金) 21:21:46.68:9yghwvRE

違うよ
デフォルトの名無しさん [sage] 2018/03/23(金) 21:50:35.83:cWFdcGfI
こうかな?

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)
デフォルトの名無しさん [sage] 2018/03/24(土) 00:06:55.67:ua0H29LU

なるほどコンストラクタ外に記述したプロパティは参照するたびに更新されるということですかね
ありがとうございました
デフォルトの名無しさん [sage] 2018/03/24(土) 00:26:27.77:6+fQqcMh
えぇ…
デフォルトの名無しさん [sage] 2018/03/24(土) 01:02:21.46:M254L+Kv
コンストラクタってどれのことを言っているんだろ
ダンダーinitのことかな?
デフォルトの名無しさん [sage] 2018/03/24(土) 01:36:03.13:ua0H29LU
なるほどクラス変数とインスタンス変数の違いですかね
これが別物だということを分かっていませんでした
ありがとうございました
デフォルトの名無しさん [sage] 2018/03/24(土) 03:51:20.06:5DHcZkrY
リストの2次元配列に文字列をappendしていきたいのですが、
完全に空な2次元リストはどのように宣言すればいいんですか?

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

[[apple],[hage]]というリストを作りたいです
デフォルトの名無しさん [sage] 2018/03/24(土) 04:12:14.60:DtiNFwiJ
リストにリストを持たせたければ
リストをappendするしかないんじゃないか

>>> arr = []
>>> arr.append(['apple'])
>>> arr.append(['hage'])
>>> arr
[['apple'], ['hage']]
デフォルトの名無しさん [sage] 2018/03/24(土) 04:14:39.51:SVLgN11o
arr = [[] for _ in range(2)]
デフォルトの名無しさん [sage] 2018/03/24(土) 04:19:39.81:SVLgN11o
あとは arr[0] と arr[1] にappendすればOK
デフォルトの名無しさん [] 2018/03/24(土) 09:20:52.26:3cN93bef
2次元配列じゃなくて配列の配列だけどな。
デフォルトの名無しさん [sage] 2018/03/24(土) 14:39:47.54:1M7APlB/

です
ありがとうございます出来ました
遊園地-24 [age] 2018/03/24(土) 14:45:04.21:iVzkwtpj
.pyをexe形式する方法有るケドな
デフォルトの名無しさん [sage] 2018/03/24(土) 17:35:00.31:CjNpxR1+
Mac用アプリにも出来る
デフォルトの名無しさん [sage] 2018/03/24(土) 21:02:13.48:6+fQqcMh
Linux上で動いてるパイソンコード(ライブラリ等も含めて)をWindows exeにする方法ってありますか?
デフォルトの名無しさん [sage] 2018/03/24(土) 21:13:03.17:qA6u9GtS
お前には無理
デフォルトの名無しさん [sage] 2018/03/24(土) 21:42:22.06:OpmPJ6Nw
Pythonにmain関数はないの?
デフォルトの名無しさん [sage] 2018/03/24(土) 21:48:08.73:dZ11fZcx
winexe.jar
デフォルトの名無しさん [sage] 2018/03/24(土) 21:50:51.20:CjNpxR1+
Linuxは全然分からないけど、windowsとかMACのモジュールと同じモジュールでも動くならあるよ
デフォルトの名無しさん [sage] 2018/03/25(日) 02:06:35.44:vGx9Wf9w

pythonコードをLinux上でwinのexeに変換するプログラムはあるんじゃないのか。
これの需要はかなりありそうだし
ただ、WinにはないLinux独特の機能を使っているコードだとだめだろうが。
デフォルトの名無しさん [sage] 2018/03/25(日) 14:03:56.05:ydE12e/a
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
デフォルトの名無しさん [sage] 2018/03/25(日) 14:05:23.73:WaYZZq21
python -c 'print("aaa")'
デフォルトの名無しさん [sage] 2018/03/25(日) 14:05:55.21:ydE12e/a

すみません
自己解決しました
シングルクオートにしたらできました
デフォルトの名無しさん [] 2018/03/25(日) 14:06:16.39:ydE12e/a

ありがとうございました
デフォルトの名無しさん [sage] 2018/03/25(日) 23:15:11.80:DaTr1DzF
for を使って単純な足し算引き算を10億回の処理したら、皆のPCならどれくらいの時間かかる?
デフォルトの名無しさん [sage] 2018/03/25(日) 23:33:31.13:DaTr1DzF

ごめん、計算する数値は1億桁で
デフォルトの名無しさん [sage] 2018/03/25(日) 23:52:02.81:R2VPlajs
そんなこと聞いてどうする。言語の違いでもそんなの意味ないのに。
デフォルトの名無しさん [sage] 2018/03/26(月) 00:15:48.82:HKDZDkOJ
知りたいから聞く

ダメか?
デフォルトの名無しさん [sage] 2018/03/26(月) 00:18:27.51:mhu6xXG+
いやこのスレ的に python の long の性能の話だろ多分
デフォルトの名無しさん [sage] 2018/03/26(月) 01:51:48.59:KvFIiPGN
いいんじゃねーの聞くくらい
俺はやらないし答えないけど
デフォルトの名無しさん [] 2018/03/26(月) 05:05:05.33:OxsjGzhh
普通の知能持ってる人は対数使う
デフォルトの名無しさん [] 2018/03/26(月) 07:13:54.70:WZ1ZCWjW
つまり天才は対数使わない。
デフォルトの名無しさん [] 2018/03/26(月) 07:16:38.08:xZZfGuVF

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

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

ってやってもずっと[1]が表示され続けるんですが
デフォルトの名無しさん [sage] 2018/03/26(月) 08:36:59.62:u5mr1n2+

そりゃ毎回list作り直してるからな
> list=[]
をループ外に出せばいい
デフォルトの名無しさん [sage] 2018/03/26(月) 08:41:48.81:ipWiSu89

迅速なご回答ありがとうございます!
デフォルトの名無しさん [sage] 2018/03/26(月) 10:39:10.61:ULwk/4nL
半年前からC#を始めて、最近pythonの勉強も始めました
今は参考書を見ながら基本文法を勉強しているのですが、何か形にしてイメージを掴みたいなと思っています
みなさんが勉強する時に参考にしたアプリや、これを作ってみろ、というような物がありましたら是非教えてください
デフォルトの名無しさん [] 2018/03/26(月) 11:08:23.56:Uam8iqco
scratch
デフォルトの名無しさん [sage] 2018/03/26(月) 11:10:21.19:yutowq4u
ttps://www.amazon.co.jp/dp/4800711657
ttp://bibinbaleo.hatenablog.com/entry/2017/07/08/173710
ttp://ichibariki.hatenablog.com/entry/2017/05/03/184753
ttps://qiita.com/noanoa07/items/19d9d83867d2226c76c8
ttps://www.timeless-education.com/five-steps-to-start-python-programming-in-minecraft-2607.html
遊園地-24 [age] 2018/03/26(月) 12:11:08.82:wYtYQOPu
GUI部分をC#
3目並べをモンテカルロ or ミニマックス法 python

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

嫌なら、ネガマックス法とか
かな
遊園地-24 [age] 2018/03/26(月) 16:51:46.83:wYtYQOPu
遊園地の為のURL
ttp://ustimaw.hatenablog.com/entry/2014/12/14/081423

メモ
デフォルトの名無しさん [sage] 2018/03/26(月) 21:12:37.13:ujJRTdDM
他人の押し付けより自分が一番興味あることを言ってみろ
それに関連するものをやればいい
デフォルトの名無しさん [sage] 2018/03/26(月) 21:29:58.56:PunXNe2v
これ作ってみ?
ttp://connect4.gamesolver.org/?pos=
デフォルトの名無しさん [sage] 2018/03/27(火) 13:32:18.34:ZLXZGkXc
class A,B,Cを継承したMainクラス内でそれぞれをsuper()するとき
(MAIN,self) (A,self) (B,self)となるのはどうしてなんですか
すごい気持ち悪いんですが、どうにかなりませんか?
デフォルトの名無しさん [] 2018/03/27(火) 15:46:36.73:7pnb7M0m
明示的は暗黙的より優れています
デフォルトの名無しさん [sage] 2018/03/27(火) 16:59:12.46:ZnJBL61E
Guido の重要な洞察のひとつに、コードは書くよりも読まれることの方が多い、というものがあります。
デフォルトの名無しさん [sage] 2018/03/27(火) 17:03:14.16:1GrWb10a
あ、いや、明示とか可読性の話じゃなくて
なんでsuper(A)~(C)じゃないのか、という疑問です
デフォルトの名無しさん [sage] 2018/03/27(火) 18:25:55.89:PajNg8Dj
開発者に聞いてこい
開発者の気持ちを答えなさいって国語の教師気取りかテメーはよ
デフォルトの名無しさん [sage] 2018/03/27(火) 20:32:11.17:AF1pc4aA
多重継承したらいかんよ、という暗黙戒め
デフォルトの名無しさん [sage] 2018/03/27(火) 20:48:27.46:SJRVUf0s
プログラマに文系が歓迎される理由がのおかげでわかった
デフォルトの名無しさん [sage] 2018/03/27(火) 23:30:39.85:88y58jW2
エクセルソルバーのGRGみたいな非線形最適化制約有りをやりたいんだけど、Pythonでできる?
デフォルトの名無しさん [sage] 2018/03/28(水) 00:00:14.22:GSIqg02F
俺らに気持ちを悪さをから読み解けだからな
文系なら、
からなぜ気持ち悪いかがわかるし、どう何とかしても当然わかるんだろうな。
でも、理系だと無理で、のような大補足が必要なんだろうな
理系だと手間がかかるからプログラマに文系が歓迎されるわけだ

はPython開発者の気持ちを分かったうえでなのかな
デフォルトの名無しさん [sage] 2018/03/28(水) 00:37:51.86:29gqJ3C5
いや単純に、superは引数の親クラスを呼んでくるということがわかってないために違和感生じてるんじゃないか
引数で指定したクラスの中身がそのまま使えるみたいな感覚でおるんでは?
デフォルトの名無しさん [sage] 2018/03/28(水) 00:46:45.55:3+G1HR/o
他の言語を色々やって、その経験からPythonはすごい気持ち悪いんですがなんじゃないのか?
デフォルトの名無しさん [sage] 2018/03/28(水) 02:14:08.09:817KgWeW
>130
scipy.optimize
を使ったらできるんじゃないかな
デフォルトの名無しさん [sage] 2018/03/28(水) 02:27:45.00:jH5P0ocQ
Pythonごときで気持ち悪いとか言ってる人は、Haskellみたら制約多過ぎて即死するだろうなw
デフォルトの名無しさん [sage] 2018/03/28(水) 07:14:12.27:ooTjeloS

ありがとうございます、やってみます
デフォルトの名無しさん [sage] 2018/03/28(水) 07:25:24.29:1/4U3eU2

気持ちのいい制約っていうのが大事なんだよ
デフォルトの名無しさん [] 2018/03/28(水) 07:55:50.50:WKkXmrtt

いいですね、気持ちのいい緊縛
デフォルトの名無しさん [sage] 2018/03/28(水) 14:46:32.18:TfqKuNVG
最近出たオライリーのHead First Python
第2版は買いですか?
デフォルトの名無しさん [sage] 2018/03/28(水) 15:32:48.18:wWS6mS4+
Foot Last Pythonが出るまで待ちです。
デフォルトの名無しさん [sage] 2018/03/28(水) 18:44:07.37:c16Hwi83
Head Firstは人を選ぶから自分で判断しなさい
俺はデザインパターンのを買ったが5ページで挫折した
あのノリにはついていけん
デフォルトの名無しさん [] 2018/03/28(水) 20:36:48.44:m/YBLUNl
Hip Middle Python
は、いつ出ますか?
尻好きの私は待ち遠しくてたまりません。
デフォルトの名無しさん [sage] 2018/03/28(水) 21:07:18.06:zdJ231FE
Head Firstは意識高い系な雰囲気が嫌い
Java系ばっかだと思ってたがPythonも出てんのね
デフォルトの名無しさん [sage] 2018/03/30(金) 15:05:36.16:jcL5BjSg
python2.xと3.xを同居させられないの。
#ifdef(PYTHON3)
print('world')
#else
print 'world'
#endif とか。
デフォルトの名無しさん [sage] 2018/03/30(金) 15:29:09.19:pqp5DZ1s

__future__ で両対応せよ
デフォルトの名無しさん [sage] 2018/03/30(金) 15:41:59.16:LJCUuJpX

sixていうライブラリが便利
デフォルトの名無しさん [sage] 2018/03/30(金) 15:49:21.37:Ll1emnsv
threading.Threadのrunにwin32com入れるにはpythoncom.CoInitialize()が必要というのは調べてわかったのですが、なぜこれが必要なのかわかりません
どなたかお教えいただければ幸いです
デフォルトの名無しさん [sage] 2018/03/30(金) 17:43:53.70:FxYI+k+J

Win32 というか COM 自体がスレッド毎に CoInitialize が必要だから
デフォルトの名無しさん [sage] 2018/03/30(金) 22:49:49.98:HIF6e78a

なるほどありがとうございます
デフォルトの名無しさん [] 2018/03/31(土) 01:31:01.40:HKQg3i4s
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で動くようになりますか?
デフォルトの名無しさん [sage] 2018/03/31(土) 01:59:18.72:uh3Jaudz

普通に*.pyファイルに保存して、VisualStudioデバッガやPowerShellから動かせたけど・・・
対話モードだとダメっぽいね
デフォルトの名無しさん [] 2018/03/31(土) 04:31:36.97:2Z4gCLvW
__main__じゃないからな
150 [] 2018/03/31(土) 22:04:28.61:HKQg3i4s

import しない限り__name__の中身って__main__になるんじゃなかったですっけ???
デフォルトの名無しさん [] 2018/03/31(土) 22:25:31.18:RRMYNfyR
気にしたこと無いけど取り敢えずプリントしてみなよ
150 [] 2018/03/31(土) 22:52:00.57:HKQg3i4s

メインでますね。
>>> print(__name__)
__main__
デフォルトの名無しさん [] 2018/03/31(土) 23:02:30.33:RRMYNfyR
へぇ〜
デフォルトの名無しさん [] 2018/04/01(日) 03:19:09.43:MskEivG4
自分のいる場所が __main__ でも
def f() で f が作られる場所の問題じゃね
global f
してみ
150 [] 2018/04/01(日) 14:36:00.98:PqizwVxV

いたるところにglobal f 入れてみましたがpythonコマンドにコピペすると
動かないですね

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

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

かといってif無しでやっても
おんなじエラー出ます。
とりあえず、.py保存してから実行なら動くから実際問題はないのかな?
デフォルトの名無しさん [] 2018/04/01(日) 19:37:25.39:i3M0z6WT
ubuntuにanacondaをインストールしたのですけど、
pythonでは起動できなくて、python3で起動するように
なってしまいました。
インストールをどこか間違ったのでしょうか?
デフォルトの名無しさん [sage] 2018/04/01(日) 20:31:59.52:d99K3tnG
echo $PATH
which python3
ってやってみろ
どうせパス通ってないだけ
デフォルトの名無しさん [] 2018/04/01(日) 21:27:08.68:8+KQdOcW

python3に慣れておいた方がいい
デフォルトの名無しさん [sage] 2018/04/01(日) 23:02:55.06:ECJY99tL
漏れの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)で使えば?
デフォルトの名無しさん [sage] 2018/04/01(日) 23:17:11.91:Wu6copxJ
pyenvだろ
デフォルトの名無しさん [sage] 2018/04/01(日) 23:22:48.01:c8SUuMzE
conda createからのactivateするんじゃないの?
デフォルトの名無しさん [] 2018/04/02(月) 04:35:50.85:3ewhMOuh
先にやらんと手遅れになる
デフォルトの名無しさん [] 2018/04/02(月) 09:28:50.22:s7mweyB2

仮想環境はインストールした後の話だろ。
Anacondaをインストールするだけならシステムには影響ない。
それとも、その「仮想環境」ってのはDockerとかVMのことを言っているのか?
デフォルトの名無しさん [sage] 2018/04/02(月) 09:31:53.60:YeEQ96Xi
そいつに触るな
デフォルトの名無しさん [sage] 2018/04/02(月) 09:43:17.23:YeEQ96Xi
時期柄もあるだろうから書いておく

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

レス番号以外の固定ハンドルをつけている奴にも触らないように
それらは基本的に自意識過剰か承認欲求で頭がおかしくなっている
デフォルトの名無しさん [sage] 2018/04/02(月) 18:13:02.77:eTpURbiZ
tupleをlistに変換したいのですが、ぐぐって見つけたコードを真似て入力してもTypeErrorになります。
t = ('one', 'two', 'three')
l = list(t)

なんか間違ってる?
デフォルトの名無しさん [sage] 2018/04/02(月) 18:35:49.91:DE0uBPvp

間違ってない
うちのPython3.6.4のコマンドウインドウにコピペして実行した結果は以下のとおり

>>> t = ('one', 'two', 'three')
>>> l = list(t)
>>> l
['one', 'two', 'three']
デフォルトの名無しさん [sage] 2018/04/02(月) 18:55:55.33:eTpURbiZ
本当だ、コマンドウィンドウだと問題ないな・・・
デフォルトの名無しさん [sage] 2018/04/02(月) 19:47:24.41:sa9ZyrCn

ファイル作ってもいけた

k = ('one', 'two', 'three')
l = list(k)
print(l)
デフォルトの名無しさん [sage] 2018/04/02(月) 22:26:30.77:wIbB0b4n
こういうのはゲームだと思ってやらなきゃ…
仕事と思っちゃダメだ…楽しまないと覚えられん…
…何から手をつけて良いか分からん泣
デフォルトの名無しさん [sage] 2018/04/02(月) 22:33:00.67:gbB6Aon1
仕事なら目標が明確だから何から手を付けていいかわからんてことはないだろう
遊園地 [age] 2018/04/02(月) 23:48:30.12:LJEqcqCm
色々教えてくれた。スレ内の知り合いが、一年近く来ない。
今頃、どうしてるんだろう。
デフォルトの名無しさん [] 2018/04/03(火) 00:56:56.37:cU9BUIMs
秋田
162 [sage] 2018/04/03(火) 02:02:15.57:hZewAlsv
漏れは、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資格を持っていないと無理
デフォルトの名無しさん [sage] 2018/04/03(火) 04:44:48.90:QsfDg0d7
数だけ追うとこうなるという悪い見本
デフォルトの名無しさん [] 2018/04/03(火) 08:24:49.81:G1GaWyXd
ダメだこりゃ。
デフォルトの名無しさん [sage] 2018/04/03(火) 09:32:07.49:u1C9H1Ty
きっとrubyが欠陥言語だからユーザーがこんなんなんでしょうな
デフォルトの名無しさん [sage] 2018/04/03(火) 09:49:39.77:7FhHUoJB

とりあえず覚えたいじゃなくて、仕事なら最初からやること決まってるじゃん?

自分は明確な目的がないから、思い付いたものはとりあえずpython で出来るかどうか試す、なんて無駄なことやってるぞ
この道に嵌まりたかったら、それで良いけど
デフォルトの名無しさん [] 2018/04/03(火) 11:35:27.28:R6gDm2yr
実際やろうと思えば出来てしまう
遊園地 [sage] 2018/04/03(火) 15:14:47.21:oFzsxu0w
テキスト内のキーワード指定して、集計データ返してくれるなら、
スクリプトじゃなくて良い。ただ、なでしこ言語は挫折した。
デフォルトの名無しさん [] 2018/04/04(水) 01:30:08.57:eXsheJZd

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

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

ttps://i.imgur.com/4fXnUAH.jpg
デフォルトの名無しさん [sage] 2018/04/05(木) 02:04:09.01:COvjSQ0t

Windows なら python windows gui
Linux なら python linux gui
とかで検査
デフォルトの名無しさん [sage] 2018/04/05(木) 02:12:11.97:G4evJUNh

PythonならWebアプリにしてHTMLで出力したほうがいいよ
ネイティブGUIをPythonで作ろうと思うと、極めてマイナーなフレームワークにどっぷり浸かることになる
極めても全く価値のないスキルであり、時間の無駄だ
デフォルトの名無しさん [sage] 2018/04/05(木) 04:28:32.13:mpYxecTp
本についてなんですが、ソーテック社の「いちばんやさしいPython入門教室」って
本は良いですか?
デフォルトの名無しさん [sage] 2018/04/05(木) 07:39:52.11:fmq90VfQ

パワポ出力じゃあかんのか?
デフォルトの名無しさん [sage] 2018/04/05(木) 09:53:13.44:Qe5jM9cj
返答ありがとうございます


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


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


その場でパッとデータを確認できたらいいことと、更新したら即データが反映されるようになってほしいので…
でも、パワポ出力は他で使えそうなのでまた調べてみます
遊園地 [age] 2018/04/05(木) 10:47:59.49:yVXnCZRq
いつも、お世話に成ってますw

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


ttps://ideone.com/085uNT
デフォルトの名無しさん [] 2018/04/05(木) 15:22:14.86:pkmC89pn
sudo update-alternatives --config python
デフォルトの名無しさん [] 2018/04/05(木) 18:37:25.68:166ySDeQ

怪しいので、身体を検査させてもらいます。
デフォルトの名無しさん [sage] 2018/04/05(木) 23:52:36.33:A+SSmePb

出力だけで入力イラネであればパワポやpdf出力の方がファイルセーブもできて良いよな。
デフォルトの名無しさん [sage] 2018/04/06(金) 23:17:04.19:4KCjI5eb

Amazonだと高評価だけどどうだろう
実際に本屋に行って見るのが良いかもね〜
かく言う俺もガチガチの初心者だから本探ししてる
デフォルトの名無しさん [] 2018/04/06(金) 23:40:31.97:eal1pYjS
「みんなのPython 第4版、2017」が定本

そこに、なでしこの作者・クジラ飛行机が参入。
その後、掌田津耶乃・大津真など、多言語の作者も参入
デフォルトの名無しさん [sage] 2018/04/07(土) 03:30:14.58:0IMs8tmt
1 2 3
4 5 6
7 8 9
の入力があった時に行ごとの計算結果を出したいときってどうしたらいいですか?
デフォルトの名無しさん [sage] 2018/04/07(土) 04:03:02.27:ic1KeMb4
ちょっと状況分かんないけど
合計ならforで行ごとに
sum([1, 2, 3])
とか
デフォルトの名無しさん [sage] 2018/04/07(土) 06:51:19.63:WL4rZ6s4
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
デフォルトの名無しさん [sage] 2018/04/07(土) 10:55:48.14:0nAeQwXs
酷いなRuby。Perlの悪しき轍を踏んでいるのか。
デフォルトの名無しさん [] 2018/04/07(土) 12:08:10.14:BRhgC8GS

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

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

(1)バックグラウンド処理の部分をthreadingを継承したクラスで作成し
(2)Webサービス本体となるapp.pyで、(1)をインスタンス化して実行
(3)(1)からの処理結果はapp.pyにコールバックで返却
(4)app.pyのコールバック関数はsocketioを使ってWebページに処理結果を送る
(5)websocketを受け取ったWebページは、処理結果をページに反映させる
デフォルトの名無しさん [] 2018/04/07(土) 13:00:52.26:BRhgC8GS
Brython
デフォルトの名無しさん [] 2018/04/07(土) 14:26:32.33:z2/bO+GF

「めんどうなことはpythonにさせよう」が面白かった。
デフォルトの名無しさん [sage] 2018/04/07(土) 14:35:20.07:nRtWZzWw

リアルタイムで更新したいならフロントエンドにreactを使え
遊園地 [sage] 2018/04/07(土) 15:07:01.03:77S40Xyy


#スペース区切りの数字を受け取り 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))]
デフォルトの名無しさん [sage] 2018/04/07(土) 15:17:10.46:2Xz4c+5M
こんくらいブラウザでやれば?
`
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));
デフォルトの名無しさん [sage] 2018/04/07(土) 17:08:57.70:p0Pua3Pc
javaみたいな気持ち悪さ
デフォルトの名無しさん [sage] 2018/04/07(土) 17:27:49.50:7ZRXk+Y5
なんで最近のプログラミング界ではforが迫害されてmapやreduceがもてはやされてるの?
初心者には分かりにくいと思うんだが。
デフォルトの名無しさん [sage] 2018/04/07(土) 17:49:01.49:4dLkJWTk
初心者のことなど知らん
デフォルトの名無しさん [sage] 2018/04/07(土) 20:07:36.83:VRHJEDN5
s.split(",")
s.replace(",","\t")
",".join(s)
joinだけ何故こんな文法に?
デフォルトの名無しさん [] 2018/04/07(土) 20:15:43.06:WHguHUHL

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

join を文字列のメソッドにしたかったから
デフォルトの名無しさん [sage] 2018/04/07(土) 20:26:18.12:Iu5gYSvH
Python の join() が文字列型のメソッドである理由
ttps://www.lifewithpython.com/2017/07/why-python-join-is-string-method.html
デフォルトの名無しさん [sage] 2018/04/07(土) 22:15:55.69:u6SiCNsb

仕事でソフト開発している人が、初心者のために分かりやすいコーディングをしているとは思えないよな。
188 [sage] 2018/04/07(土) 22:55:32.20:UAWtR4Cc

あっ、レス付いてる
ありがとうございます
注文することにしました
読んでみたらレビューしますね
デフォルトの名無しさん [sage] 2018/04/08(日) 00:14:01.39:j+FIppRr

このスレのレベルを超えた質問で場違いな感じの質問だな
デフォルトの名無しさん [sage] 2018/04/08(日) 01:12:18.12:s6V+xdvY

逆だよ。仕事でソフト開発している人が、難読コードを書いちゃいかんだろ。
デフォルトの名無しさん [sage] 2018/04/08(日) 01:18:01.50:kOs0IpX+

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

よりこっちのほうが分かりやすいと?そうかなぁ?
昔ながらの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);
}
デフォルトの名無しさん [sage] 2018/04/08(日) 02:22:57.13:jNVGKdq/
joinは文字列の連結がウリなのに、引数を一個しか指定できないのが謎過ぎる
",".join("A","B","C")ってやりたい時に、実際はあらかじめ"A","B","C"をリストに入れるか
+で連結しとかんといかんって本末転倒だろ
デフォルトの名無しさん [sage] 2018/04/08(日) 02:36:06.55:6R1G24Uu

[ ]で囲むだけだろ
Pythonでは可変長引数はあまり好まれない
デフォルトの名無しさん [] 2018/04/08(日) 06:58:14.21:gxaJAEYd

ここ超初心者のスレ。
デフォルトの名無しさん [sage] 2018/04/08(日) 10:08:27.26:kOs0IpX+

いや、への返答よ?
デフォルトの名無しさん [] 2018/04/08(日) 11:41:56.18:YK+KPtHu

初心者はどっちから教えても一緒だと思う
デフォルトの名無しさん [sage] 2018/04/08(日) 11:55:02.04:9/UswNDz

俺も大差ないと思う
forでダラダラ書くより、map,reduce,filterで簡素に書けるなら使ったほうがいいからな
デフォルトの名無しさん [sage] 2018/04/08(日) 16:29:56.48:MFf7xIr6
こんにちは
タイムカードを処理するアプリを作りたいと思っていて、月の勤務記録を一括で読み込んで実労働時間を出そうと思ってます。
1行毎(1日毎)に実労働時間を出して最後にそれを全て足そうと思っているのですが、行ごとの処理の仕方がわからないんです…
ご回答よろしくお願いします。
デフォルトの名無しさん [sage] 2018/04/08(日) 16:43:00.39:GoOLzpCW
一行分の入力データと
一行分の入力データから得たい出力データを記載しろ
デフォルトの名無しさん [sage] 2018/04/08(日) 16:48:16.19:MFf7xIr6
1行分の入力 2017/03/01 12:00-15:00 16:00-24:00

出力 11

こんな感じです
そもそもsys.stdin.readlines()で処理するのが正しいんですかね
デフォルトの名無しさん [] 2018/04/08(日) 16:59:45.98:nkM5b3tX
pandas.read_from_hogehoge
デフォルトの名無しさん [sage] 2018/04/08(日) 17:46:41.40:6sp2I/Ld
>>> 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
デフォルトの名無しさん [] 2018/04/08(日) 17:50:59.38:6sp2I/Ld
>>> 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)
デフォルトの名無しさん [sage] 2018/04/08(日) 18:54:45.02:1mmlbc0v
Ruby だと、時刻に、24時は無いけど。
23まで

午前中は、どう表記してる?
03:05, 3:05 のどっち?
遊園地 [age] 2018/04/08(日) 20:12:56.50:gmVtfD5c

ごめん。仕様ミスで行数が増えたら対処できない。
そこは改変してくれ。

ttps://ideone.com/1izELX
遊園地 [sage] 2018/04/08(日) 20:22:54.67:gmVtfD5c
なんか、知らんけど腕が落ちてる。
デフォルトの名無しさん [sage] 2018/04/08(日) 20:26:08.17:3hKhfzCU
拾っとけ拾っとけ1割もらえるかもよ
遊園地 [sage] 2018/04/08(日) 20:30:56.58:gmVtfD5c
そっちじゃねえよww
デフォルトの名無しさん [sage] 2018/04/08(日) 21:23:41.29:MFf7xIr6

午前中は5:00まで29:00の仕様です
デフォルトの名無しさん [sage] 2018/04/08(日) 21:24:04.77:MFf7xIr6
助かります。参考に書いてみます
デフォルトの名無しさん [sage] 2018/04/08(日) 21:46:24.45:5trngRbI

5時がタイムカード上では29時なんか
夜23時から早朝の5時勤務の場合
タイムカードは23:00-29:00
夜23時から早朝の6:00時勤務の場合
タイムカードは23:00-06:00
夜1時から早朝の5時勤務の場合
タイムカードは25:00-29:00
とかになるのか
デフォルトの名無しさん [sage] 2018/04/08(日) 22:02:44.17:MFf7xIr6

そうです
なのであり得ませんがフル勤務の場合は5:00-29:00になりますね
デフォルトの名無しさん [sage] 2018/04/08(日) 22:54:58.64:eu3b+r+J

それって残業代どうなるの?深夜勤務、8時間超えたら、〇時間超えたら何割増しってあるんでしょ?
遊園地 [sage] 2018/04/08(日) 23:52:48.14:gmVtfD5c
規模によるがw
数百万から数千万の未払金が発生するなww

ただの問題サイトのテストケースだろうけどなw
デフォルトの名無しさん [sage] 2018/04/09(月) 04:01:32.98:WaD3v69G

そこからは自力で書いてみようと思ってます
デフォルトの名無しさん [] 2018/04/09(月) 10:27:28.30:l0CeQllx

医師とかだとこういう勤務形態になるのかな
遊園地 [sage] 2018/04/09(月) 10:40:52.05:Ptdpw/63
朝4時に起きとか、怖過ぎ。
デフォルトの名無しさん [sage] 2018/04/09(月) 10:59:02.77:s1r7cemC
月200時間以上ざんぎょーしてた頃がなつかしーわー
3れんきん(中日は24時間勤務)とかふつうにあった

書類上は
5分仕事 15分休憩
の繰り返しになってた
遊園地 [sage] 2018/04/09(月) 14:05:06.99:Ptdpw/63
仕様が決定して有るなら、作業みたいなモノだろうに。
そんなに仕事を抱え込めるのかな?

管理も兼任してたら、オーバーフローでオーバーロードですな。ww
デフォルトの名無しさん [] 2018/04/09(月) 14:23:31.09:GdkyYm9A
rubyスレにマルチするのやめれ
デフォルトの名無しさん [sage] 2018/04/09(月) 15:40:06.66:WaD3v69G

これ曜日って出せますか?
デフォルトの名無しさん [sage] 2018/04/09(月) 16:03:42.19:M/BmQ9Z1
Ruby スレに書き込んだのは、python スレの書き込みとは別人。
ID も異なるはず

python スレの書き込みを見て、
Ruby ではどうプログラミングするべきか、考えてみたが難しかった
デフォルトの名無しさん [sage] 2018/04/09(月) 20:54:36.31:dNOi8uH1
pythonで書けてrubyで難しいなんてことがあるのか。
ちょっと意外
遊園地 [age] 2018/04/09(月) 21:07:06.94:Ptdpw/63

出せるけど、書式変更が あーーー
ttps://ideone.com/aCw7iG

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

実質、2行増えただけだしな。
デフォルトの名無しさん [sage] 2018/04/09(月) 21:37:50.56:0kSx2Pnj
>調べても2,3分で実装まで5分掛からないんだから、頑張ろうな。
"超"初心者=>調べることができない、調べようとしない、頑張ることができない人
超初心者に不可能なことを要求するなよ。初心者ならこれらのことは出来るんだが
遊園地 [age] 2018/04/09(月) 22:13:27.53:Ptdpw/63


 で
自分で書いてみます。って書いてるやん
遊園地 [sage] 2018/04/09(月) 22:26:44.43:Ptdpw/63
とは言え。偉そうにしたのはスマンかった。


ごめん。ちょっと調子に乗ってた。
失礼しました。
デフォルトの名無しさん [sage] 2018/04/10(火) 00:18:50.47:RB2jjZ4g

いえいえとんでもないです
本当にありがとうございます!調べても分からなかったところだったので…
遊園地 [] 2018/04/10(火) 09:44:44.25:QiXBaC3n
検索の仕方は

言語 項目

python 日付

python 曜日

とかで、hitする。と思う。
遊園地 [sage] 2018/04/10(火) 09:48:10.16:QiXBaC3n
素直に行くなら、
公式Documentを落として、

英語で、ファイル内検索

かな。
遊園地 [sage] 2018/04/10(火) 11:25:34.63:QiXBaC3n
ttps://ideone.com/lDwos1
デフォルトの名無しさん [sage] 2018/04/10(火) 20:30:36.44:CXD6eMLO
for index, row in mr.iterrows():
a = row.ix[0]
a.replace(u"月","a")
月をaに置換したいんだけどうまくいかない・・・どうすればいい?
デフォルトの名無しさん [sage] 2018/04/10(火) 21:31:07.93:6CkCb20Q
'nichi月🔥水moku金do'.replace(/月/gu, 'a');
デフォルトの名無しさん [sage] 2018/04/10(火) 22:15:50.26:tEeQ8k7E
>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)
のようにする必要があるのだと思う。
外してたらゴメン
デフォルトの名無しさん [sage] 2018/04/10(火) 22:22:55.45:CXD6eMLO

まさに知りたかった答えです助かりました!


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

デバッグ用のPrint等が流れて読めなくなってしまい、邪魔なので出さないようにしたいです。
よろしくお願い致します。
デフォルトの名無しさん [sage] 2018/04/11(水) 09:01:53.43:qa2FEnRq
ライブラリなら普通はlogging使ってるはずだから設定で消せる
もし直接printしてるようならそんなものは今すぐ投げ捨てて他を探せ
そんな低品質なゴミを使ってると後々取り返しのつかないトラブルの原因になりかねない
デフォルトの名無しさん [sage] 2018/04/11(水) 09:35:50.44:cUARpOdH

頭が良い奴なら、ソース弄らないで動的に関数内のprint部分だけコメントになるようにするとかできるんだろうが(デコレータのような使い方で)。
でも、そんな奴は5chのpythonスレにはいないだろう
遊園地 [sage] 2018/04/11(水) 10:02:21.51:y+NDlg77
無効にする割合は、40ぐらいに設定して置いた方が無難
遊園地 [sage] 2018/04/11(水) 10:13:12.84:y+NDlg77
優秀な奴が、労力をかける場所を間違わないと思うけどな。
ほんの1つのライブラリなんだから、他を探すのが正解だと思うぞい!ww
デフォルトの名無しさん [] 2018/04/11(水) 12:37:06.54:bG1z7LTF
マジレスするとstdoutのトラップで桶
デフォルトの名無しさん [sage] 2018/04/11(水) 14:41:24.70:nGNQyhwo
意地悪な憶測だがライセンスも読んでないに違いない
デフォルトの名無しさん [sage] 2018/04/11(水) 23:09:57.05:QNR3RY4l
まじめにライセンスを読むのはいかがわしい事を考えてる奴だけ説
デフォルトの名無しさん [sage] 2018/04/11(水) 23:13:13.16:DormuVYu
ぐう正論
デフォルトの名無しさん [sage] 2018/04/11(水) 23:54:01.75:VAa2HaB9
@GPS取得

Aネットにあるjsonを取得

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

↑の処理をするプログラムを組んでいます。
@はすぐ処理が終わるので問題ありませんが、Aは使用環境が外でモバイル通信を使用しているためかAの処理だけで最大5秒かかることがあってBの処理が大幅に遅れてしまいます。
Aのみ裏で処理して、@とBをループさせたいのですが、いい方法ありますでしょうか?
275 [sage] 2018/04/12(木) 00:05:44.68:qBx4xR6B
先ほどの書き方だとjsonを0.5秒以内に取得するということになってしまうので修正します。

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

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

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

10秒に1回以外は@とBのループなので問題ありませんが、↑の処理だと10秒に1回はAを処理するときに時間がかかってしまってBの処理が0.5秒で処理できなくなってしまうのが問題です。
デフォルトの名無しさん [] 2018/04/12(木) 00:15:41.74:4IaDzy3O
2を実行するために1の結果が要らないならご自由に
275 [sage] 2018/04/12(木) 00:53:20.19:qBx4xR6B
スレッドという処理があったのでこれを使えばいけそうでした
自己解決すみません。
デフォルトの名無しさん [sage] 2018/04/12(木) 00:58:33.43:3KpeTxH4
俺ならGPSロギングとJSON取得はそれぞれ全く別個に作って別プロセスで動かすわ
結果はタイムスタンプを使って後で結合すればいい
デフォルトの名無しさん [sage] 2018/04/12(木) 01:08:15.09:iaId0hiD
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')
とエラーが出る

とりあえず、簡単に出力させて中身を確認したいがどのようするのがスマートだろうか?
デフォルトの名無しさん [sage] 2018/04/12(木) 01:20:58.84:ViqCrKfL
変数が何なのかは知らんが
>数値として計算する
なら文字列に変換すれば良いだろ
デフォルトの名無しさん [sage] 2018/04/12(木) 01:27:04.11:iaId0hiD

レスありがとうございます
変数全てに対して文字列に変換するのが面倒で・・・
例えば、
print(result," ",predict," ",data_test,)
であれば問題なく出力されますので
ファイルに保存する場合ももっとスマートにできる方法があれば助かります
遊園地 [sage] 2018/04/12(木) 01:37:46.68:tAnO53/m
これで、良いのかな?

f = open('text.txt', 'r')
for i in f:
print (str(i))
f.close()
遊園地 [age] 2018/04/12(木) 01:39:14.90:tAnO53/m
見たら分かると思うけど、
f.write( str(i) )

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

これで動くっけ?
デフォルトの名無しさん [sage] 2018/04/12(木) 04:00:58.45:T93bDVFD

スレッドは、同一プロセスだろ。
こういうのは、別のプロセスでよくある

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

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

制御・組み込み系で多い

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

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

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

Python には、こういう機能が無いのか?
デフォルトの名無しさん [sage] 2018/04/12(木) 04:49:22.42:t3ixnFe0

printは引数を強制的に文字列に変換するうえに
キーワードオプションで出力先を変更できるから
以下で通るはず。空白も改行も勝手に入る
詳しくはドキュメントの「Python標準ライブラリ-組み込み関数」を参照

print(result, predict, data_test, file=f)
デフォルトの名無しさん [sage] 2018/04/12(木) 06:25:29.02:t3ixnFe0

文字列中での式展開はPython3.6から実装された
3.6以前ではこの機能がなく、%記法やstr.formatメソッドを使う

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

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

フォーマット済み文字列リテラル
print(f"名前は {name}、年齢は {age}")
遊園地 [age] 2018/04/12(木) 09:27:33.72:tAnO53/m

データ構造が不明だから、何とも言えない。

何処かで、
 書き込むべき内容を1つのリストに纏めたり
できない?
デフォルトの名無しさん [sage] 2018/04/12(木) 10:53:13.19:iaId0hiD

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()
デフォルトの名無しさん [sage] 2018/04/12(木) 10:53:50.49:iaId0hiD

標準出力にその機能があるなら、writeでも何とかならないでしょうかね?


str = [result, predict, data_test]
for i in str:
f.write(i)
残念ながら、
TypeError: write() argument must be str, not numpy.int64
という結果が表示されます
デフォルトの名無しさん [sage] 2018/04/12(木) 11:12:19.94:t3ixnFe0

これはprint関数の機能だからwriteでは使えないよ
こう変えるだけなんだけど、どうしてもwriteじゃなきゃいけないの?

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

print(result, predict, data_test, file=f)
デフォルトの名無しさん [sage] 2018/04/12(木) 11:18:36.95:JyHXEe/D
resultとかの各変数の中身が文字列じゃない気がする
遊園地 [sage] 2018/04/12(木) 11:38:42.18:tAnO53/m
pandasは触った事ないから、協力できない。

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

でたらめな数値や造語で良い。そうしたら、何か分かるかも。
デフォルトの名無しさん [sage] 2018/04/12(木) 12:03:51.11:iaId0hiD

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


生データそのままです
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
デフォルトの名無しさん [sage] 2018/04/12(木) 12:10:53.36:CLTBB0jT
画面に出力する(普通にprintする)プログラムを作って、
ファイルに保存したい場合には
foo.py > filename
という風に実行する、
というやり方はご存知ですか?
デフォルトの名無しさん [sage] 2018/04/12(木) 12:16:50.63:rOwLVxdy
てかパンダ使ってるならそっちで出力すれば?
デフォルトの名無しさん [sage] 2018/04/12(木) 12:40:44.41:T93bDVFD
in/out を、標準入出力にしておけば、パイプでファイルにつなげられる

スクリプトファイル < 入力ファイル > 出力ファイル
デフォルトの名無しさん [sage] 2018/04/12(木) 12:44:49.97:iaId0hiD
,300
おぉーその方法がありましたか
大昔DOSで使ったことがありますが完全に忘れていました!


とりあえずサンプルプログラムをそのままでpandasもpythonもまだ使いこなせていません
色々なtypeがある場合でも、さくっと出力してくれますか?
遊園地 [sage] 2018/04/12(木) 12:53:53.14:tAnO53/m
聞けば聴くほど分からなくなってくる。

取りあえず出力したいなら、
デフォルトの名無しさん [sage] 2018/04/12(木) 13:02:34.85:O7jP9sqH

Pythonを初めて2日目じゃ何もわからないだろう
ここの連中が言っているアドバイスすら理解不能だろ
一通りさっとでもPython学習をやってからのようなコードに臨んだほうが良い
デフォルトの名無しさん [sage] 2018/04/12(木) 17:20:28.88:t3ixnFe0

print(result, predict, data_test)  # 標準出力に出力
print(result, predict, data_test, file=f) # ファイルハンドル f のファイルに出力

これが理解できないならもうワシは知らん
デフォルトの名無しさん [sage] 2018/04/12(木) 21:11:22.45:iaId0hiD

貰ったアドバイスは一応理解できてると思う
ただ、以前perlを覚えた頃は掲示板をネットで調べたり、大量のサンプルプログラムを眺めたり
書き換えたりしながら完全に独学で覚えたから用語などがいまいち分からない
良い勉強方法があるなら知りたい
↓についても、その勉強方法ならアドバイスを聞くだけで分かりそう?


ありがとうございます
お手数おかけしましたが無事動作しました
fh.write()
としていて動作が失敗していました
コメントアウトしたら動作しました
遊園地 [sage] 2018/04/12(木) 22:31:11.19:tAnO53/m
俺もperl5やってたけど、公式ドキュメントが有った。
それと同じ様にpython公式ドキュメントをやれば良い。
デフォルトの名無しさん [sage] 2018/04/13(金) 19:12:20.04:vvfD6Twp
pythonスレでperlとかrubyとか言い出す奴は
やべー奴ってことか
デフォルトの名無しさん [sage] 2018/04/13(金) 19:46:32.40:fIxp3q6f
そりゃCバリバリ書ける奴から見ればそうだろうな
デフォルトの名無しさん [] 2018/04/14(土) 00:27:21.50:fnrer+0Y
どこスレでもCとか言い出す奴はアルティメットアンタッチャブル
デフォルトの名無しさん [sage] 2018/04/14(土) 00:27:46.56:yt2qqJ9Q

このスレでperlとかrubyとか言い出す奴はperlとかrubyを超使えるやべーレベルの人だからな
そんな人からすればpythonは言語としてperlとかrubyより使えねーとなるだろうな。
デフォルトの名無しさん [sage] 2018/04/14(土) 00:46:34.06:EDFUWN6E
perlやruby使いが出てきたら、「機械学習」って唱えれば退散するよw
デフォルトの名無しさん [sage] 2018/04/14(土) 01:05:01.45:dSQ5MB/j
配列の要素数が、
len(list)

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

一方、Ruby では、オブジェクト指向。
ary.length
デフォルトの名無しさん [] 2018/04/14(土) 01:25:52.09:4BsAOclQ

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

perlの人はPythonを少しは知っているだろ
Pythonプログラム書いているんだし

Perlの人はPythonならPython1日目よりsklearn、pandaを使ったプログラム書ける自信があるという感じで始めたんだろうが。
その自信の元はperlを超使えるやべーレベルな気がする
でも、スレで無様をさらすことになってしまったが
デフォルトの名無しさん [sage] 2018/04/14(土) 02:08:23.29:yt2qqJ9Q
ここは超初心者スレだからコミュ能力ないのはしょうがないのかもしれないが
perlの人のやりたかったのはからだいぶ後の
>普段はperlを使っているのですがそれだとprintそのままにファイルハンドルを付けるだけで
>標準でもテキストでも好きに出力できるので同じような使い方ができればと思っています
なんだろう。
最初にこれを出せば、面倒を連呼しなくて済んだのにな
デフォルトの名無しさん [sage] 2018/04/14(土) 02:23:44.32:RyWPXEl9

超使える訳じゃないけど、そもそもperlしか知らない
そのperlもまともに勉強したわけではなく
サバイバル英語の勉強方法みたいな感じで覚えたから元から無様ですよ
上でも書いたけど、作りたいプログラムを見つけてきたら
それをいじりながら勉強する感じでやってきた
とりあえず、様々なエラーが出たけど、エラーもでることなく10時間CPU回しっぱなしで動作してる
よく分からないながらでも、とりあえず書けば機械学習ができてしまうのは便利だと思ってる

まじそれ。perlでできるならわざわざ新しい言語を覚えようとは思わなかった
スコープの使い方まで違うし慣れるまで色々嵌りながら学習する必要があると思うと泣けてくる
デフォルトの名無しさん [sage] 2018/04/14(土) 02:37:37.23:BdA0jLra
perlってテキスト処理ぐらいしかやったことないけど
え、それだけ? ってぐらい簡単に書けちゃうとこがあって面白いね
デフォルトの名無しさん [] 2018/04/14(土) 02:57:00.89:lnTeyTPJ
>340 に期待
デフォルトの名無しさん [] 2018/04/14(土) 02:59:10.50:lnTeyTPJ

書き捨てならperlでも良いと思う
何ヶ月後か何年後かにメンテするときに
忘れてから(あるいは他人のもののメンテ)が勝負
pythonの方にしといて良かったと思える
デフォルトの名無しさん [sage] 2018/04/14(土) 06:03:31.69:5tg9pgD6

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

本当にかんたんに書けるよな
Perl使ってる身からすれば、同じP言語だし可能な限りPythonでも簡単にできる方法が知りたくなる


他の言語は殆ど知らないので何とも・・・メンテかんたんなら良いね
Javaとかネットで良いと言われて、2週間頑張ったけど、長すぎる命令文が覚えきれずタイプが面倒で諦めた
今となっては当時作ったJavaアプリは命令文すら覚えていないから書き直すことすらできないけどね
遊園地 [sage] 2018/04/14(土) 11:49:28.86:osRawEaB
35歳の話ですか?
デフォルトの名無しさん [sage] 2018/04/14(土) 22:11:15.45:nq6U0FpM
一回importしたモジュールを取り消すことできますか?
デフォルトの名無しさん [] 2018/04/15(日) 00:11:09.27:LyYRjAz1
気の持ちようで過去の事実は変えられる
デフォルトの名無しさん [sage] 2018/04/15(日) 00:43:39.53:zL8vaRCQ
関数の中でimportしたら、関数処理が終わるごとに解放されるの?
デフォルトの名無しさん [sage] 2018/04/15(日) 01:30:36.11:fSFvvger

Pythonはすごい賢い言語だから、importを頭に書いても
必要になった時に動的にインポートし、不要になったら解放してくれるんじゃないのかな。
デフォルトの名無しさん [sage] 2018/04/15(日) 01:37:25.53:fSFvvger
ただ、毎回インポート・解放すると時間が消費するから
そんなのやめて常駐にしたいときには、キャッシュしといてと指示すれば解放しないで常駐するように
する機能とかも提供している気がする。
デフォルトの名無しさん [sage] 2018/04/15(日) 02:41:37.97:K+msyNFc
なんだ妄想か
デフォルトの名無しさん [] 2018/04/15(日) 03:19:09.43:9PmxhzhB
試してないけどdel モジュール名はできないの
明示的に参照消したらさすがにガベコレしてくれるだろ

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

これらは軽いからあまりいい例では無いと思うが、ちょっと他の例が思い出せないので
デフォルトの名無しさん [sage] 2018/04/15(日) 05:43:37.19:VXOW+WoG

Perl なら、Python ではなく、Ruby
デフォルトの名無しさん [] 2018/04/15(日) 07:48:45.50:TD/JmgSS
Ruby大好きおっさんかあんちゃん。爺さんはないだろうが。
デフォルトの名無しさん [sage] 2018/04/15(日) 10:28:50.02:bGi543fi

機械学習が目的だから無理
デフォルトの名無しさん [] 2018/04/15(日) 10:37:38.96:E1b18XLI
rubyはルピーとかルーピーを連想させるから無理
デフォルトの名無しさん [sage] 2018/04/15(日) 11:04:43.82:HCEWsKeI
Rubyは名前を呼んではいけない(アンカーをつけてはいけない)あの人みたいになると思うと無理
デフォルトの名無しさん [] 2018/04/15(日) 11:25:09.21:mh4srQnS
(´・ω・`)あのーパイソンって小学生でもひと月ぐらいでできるぐらいかんたんってきいたけどほんとなの?
らんらんもプログラマーになれるかなー?
デフォルトの名無しさん [] 2018/04/15(日) 11:26:32.65:mh4srQnS
(´・ω・`)アマゾンで参考書さがしてるけどおすすめの参考書はありますか?
パイソンの本ってむちゃくちゃ多いからまようー
デフォルトの名無しさん [sage] 2018/04/15(日) 12:06:53.97:VXOW+WoG
この本が、定本。
みんなのPython 第4版、2017

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

たのしいRuby 第5版、2016

北大の湊真一が作った、ZDD なら、Ruby gem もある
デフォルトの名無しさん [] 2018/04/15(日) 12:23:12.55:E1b18XLI

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

そこへ、なでしこの作者・クジラ飛行机が参入した。
そこへ掌田津耶乃・大津真などの、多言語の作者も参入
デフォルトの名無しさん [] 2018/04/15(日) 12:45:05.14:E1b18XLI
rubyの本も急に沢山出た時期があるけど
流行りで出てくる本の九割以上は糞本
スルーでOK
デフォルトの名無しさん [] 2018/04/15(日) 13:27:09.55:BcrfAPr/
まあ流行りで本が沢山出るならまだ良い方だよ。それだけ売れるってことで、それはつまりやってる人が多いということだから。
デフォルトの名無しさん [sage] 2018/04/15(日) 13:35:32.50:fpkgMDqC
ディレクトリを指定してその中にあるファイルのパスをリストで取得できるモジュールとかないですか?
デフォルトの名無しさん [sage] 2018/04/15(日) 13:51:11.42:VXOW+WoG
Ruby なら、Dir.glob だけど、

「python list dir glob」で検索!
デフォルトの名無しさん [sage] 2018/04/15(日) 13:58:56.84:K+msyNFc
rubyが廃れた理由が分かるな。
いやrailsのバッテリーとして余生は安泰かwww
デフォルトの名無しさん [sage] 2018/04/15(日) 14:28:51.90:bGi543fi
Pythonではタブ記号の代わりにスペースを使う人が多いですが移動が面倒です。
タブ記号だと例えば、インデントが4つあっても4回の右キーを押すだけで移動できますが、
スペースの場合、16回くらい押す必要がありますよね。
どのようにしたらいいでしょうか?
エディタは秀丸を使っています。
デフォルトの名無しさん [sage] 2018/04/15(日) 14:30:19.66:Cnmy+aq2

・Sakuraエディタにのりかえる
・インデント機能を使った後、Tab->空白機能を使う
デフォルトの名無しさん [sage] 2018/04/15(日) 14:40:56.80:bGi543fi

Sakuraエディタは使ったことないけど、多分秀丸にも同じ機能はあると思うが、
タブにスペースを使うことが問題で
タブがスペースだと結局は16回、もしくは、ショートカットキーで飛ぶことになり面倒でない?

Tab->空白変換 機能は使ってるけど、
サンプルプログラムと手書きを何度もやりとりしてると
タブとスペースの混在で結構良い頻度でエラーになってしまう
統一したいと思ったり・・・
デフォルトの名無しさん [sage] 2018/04/15(日) 14:46:01.79:5EOPJhuZ
今時秀丸?
VSCodeとか使おうよ
デフォルトの名無しさん [sage] 2018/04/15(日) 14:47:30.46:CMfqpLbm

pythonファイルならスペース4つを一回で移動できるエディタたくさんあるよ
デフォルトの名無しさん [sage] 2018/04/15(日) 14:57:48.74:fpkgMDqC

globってそういう時に使うのですか
サンクス
デフォルトの名無しさん [sage] 2018/04/15(日) 15:27:17.39:Cnmy+aq2

うちは秀丸の設定で1タブ4半角スペース固定にしてる
それで
書いたらはしらせる直前に
全選択して Tab->空白
デフォルトの名無しさん [sage] 2018/04/15(日) 15:37:38.38:731FtqJf
ソフトタブだっけ?
俺Atomだけどスペース混在がどうのとか気になったことない
デフォルトの名無しさん [sage] 2018/04/15(日) 16:10:57.24:Cnmy+aq2
今ってたしか
タブとスペースの混在は('A`)ヴァーで
タブは(・A・)イクナイ
スペース4つにしましょうキャンペーン中じゃなかったっけ
デフォルトの名無しさん [] 2018/04/15(日) 16:22:10.02:7xK+P7p1
秀丸最強
デフォルトの名無しさん [] 2018/04/15(日) 16:25:40.21:7xK+P7p1

os.walk()
os.path.walk()
os.listdir()
aiueo [sage] 2018/04/15(日) 16:44:03.35:xfCmajNI
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'

エラーで実行できません。。助けてください
aiueo [sage] 2018/04/15(日) 17:08:28.73:xfCmajNI
できたー!!エラー治りました!

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

作っちゃいけないファイル名などがあるのでしょうか。。
デフォルトの名無しさん [sage] 2018/04/15(日) 17:21:04.60:CIuag2/D

ライブラリと同じファイル名使ってるだけ
ttps://docs.python.org/3/library/uu.html
aiueo [sage] 2018/04/15(日) 17:30:47.57:xfCmajNI

ありがとうございます。もともとuu.pyというファイルがあったのですね
適当にaa.py test.py cc.py kkk.pyとか適当ファイルいろいろ作って試してました・・
勉強になりました、ありがとうございます
デフォルトの名無しさん [sage] 2018/04/15(日) 17:45:04.14:CIuag2/D

ライブラリ作ってるならこの辺りも見ておいた方がいい
ttps://docs.python.org/ja/3/py-modindex.html
aiueo [sage] 2018/04/15(日) 17:51:34.26:xfCmajNI

プログラミングやったことない超初心者です。
スクレイピングでやりたいことがあるのでpythonインストールしてみました。

ライブラリとファイル名、かち合わないように気を付けます
わざわざありがとうございます!
デフォルトの名無しさん [sage] 2018/04/15(日) 18:14:44.88:WdW8h5cl
openpyxlを使ってExcelファイルのA2セルの値を取り出そうとしたんだけど
そのセルに書かれている計算式が取り出せました。

計算式ではなく、計算結果を取り出すにはどうしたらよいの?
こう書きました→print(ws['A2'].value)
デフォルトの名無しさん [sage] 2018/04/15(日) 18:33:21.95:5wGddKlA

使ったことないけどここら辺の話かな?
ttp://cloudsquare.jp/hibiki/blog/2018/01/30/openpyxl/
デフォルトの名無しさん [] 2018/04/15(日) 22:39:51.61:UX4y5Mn1
ありがd
デフォルトの名無しさん [] 2018/04/15(日) 23:29:55.35:9jzNqCls
長文になって申し訳ないけど、メソッドに関する質問。

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

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

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

以上3点です。よろしくお願いします。
デフォルトの名無しさん [] 2018/04/15(日) 23:32:53.30:xpwShDOv
help(str.replace)
デフォルトの名無しさん [] 2018/04/15(日) 23:42:33.10:9jzNqCls

ほんとだ。ありがとうございます。
メソッドを呼び出す際は、ここでもオブジェクトが必要だったんですね。
そして、print()関数は不要でしたねすみません。
デフォルトの名無しさん [] 2018/04/15(日) 23:44:00.12:xpwShDOv
1.間違い
3.何が言いたいのか意味が判らない
デフォルトの名無しさん [sage] 2018/04/16(月) 00:48:43.62:+F/asDGP

1.はクラスメソッド、スタティックメソッドのことを言っているような気がするが、
XXXclass.replace()なクラスメソッド、スタティックメソッドはあったっけな感じだが....


3.に関してはPythonを作っている奴らにきくのが一番良い
ついでにjava,rubyも同様だからjava,rubyスレでも尋ねたほうが良いかも
遊園地 [age] 2018/04/16(月) 07:50:52.76:AgptP9w5

3
クラス継承したら良いと思う。
デフォルトの名無しさん [sage] 2018/04/16(月) 12:31:15.81:xRFNapub
ビルトイン型のメソッドはその型固有の機能だから
ビルトイン関数とは用途が違うんじゃないの
デフォルトの名無しさん [sage] 2018/04/16(月) 13:13:36.14:qlfABgAK
Ruby では、継承できて、インスタンスを作れる、class と、
継承もできず、インスタンスも作れない、module の2つがある

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

module内の関数は、多くのクラスで使えるような、汎用的なもの
遊園地 [age] 2018/04/16(月) 16:33:02.84:AgptP9w5
Recognizing hand-written digits

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

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

この場合は、421です。
ttp://fast-uploader.com/file/7079419507797/
デフォルトの名無しさん [] 2018/04/16(月) 16:40:52.73:r1/f7Sud
captcha禁止
遊園地 [sage] 2018/04/16(月) 17:43:27.26:AgptP9w5
これなら、大丈夫ですか?
ttp://fast-uploader.com/file/7079423736170/
デフォルトの名無しさん [sage] 2018/04/16(月) 17:56:18.32:ZFIHRn8x

ちなみに何で?
遊園地 [sage] 2018/04/16(月) 18:50:38.80:AgptP9w5

ttps://animeflv.net/ver/42639/getsuyoubi-no-tawawa-1

OK? Low grade
デフォルトの名無しさん [sage] 2018/04/16(月) 19:33:30.30:gUfDVwYo
url見てから回避余裕でした。アニ豚死ね
デフォルトの名無しさん [] 2018/04/16(月) 20:14:00.57:5B9l6nEL
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,:]の中身の画像これです
ttps://imgur.com/a/PViEJ

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

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

windows 10です
デフォルトの名無しさん [] 2018/04/16(月) 20:37:00.64:OxnvPd0M
エラーはわかるが、お前が何をやってるのか全くわからんから答える気にならん
デフォルトの名無しさん [] 2018/04/16(月) 21:02:19.87:5B9l6nEL

すいませんでした
参考にしたサイトにある魚の線画を描くと魚っぽい写真になるの逆で
カラーの線画のない画像から黒い線画を書かせるという事がやりたいです。
遊園地 [age] 2018/04/16(月) 21:06:58.35:AgptP9w5
失礼ww IQ220ぐらい有るんですけど


が解りません

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


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

 ぶひぃいいいいいいいいいいいいいいいwwwwwwwwwww
デフォルトの名無しさん [sage] 2018/04/16(月) 21:26:32.35:M9Gf/bCG
プログラミング自体初心者&独学です
aizu online judgeを順に解いていっているのですが以下のコードでRuntime Errorが出てしまいました。
なにが悪いのかまったくわからないので教えてください!
ttp://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))
遊園地 [sage] 2018/04/16(月) 21:31:05.09:AgptP9w5
計算式が違う
デフォルトの名無しさん [sage] 2018/04/16(月) 21:39:21.07:M9Gf/bCG
小学生からやり直します(汗)
以下に修正しても同じエラーになるんですがなぜでしょうか(泣)

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

print('{:.6f}'.format(area),'{:.6f}'.format(length))
デフォルトの名無しさん [] 2018/04/16(月) 21:47:49.19:M9Gf/bCG
なんかこれで通りました。
import math
r = float(input())
pi=math.pi
s = ( r ** 2 ) * pi
l = 2 * r * pi
print(s, l)
遊園地 [sage] 2018/04/16(月) 21:49:02.84:AgptP9w5
試したけど、受け取り値がint型だけど、実際のテストケースではフロート型
遊園地 [sage] 2018/04/16(月) 21:53:12.17:AgptP9w5
既に解決してるけど、12.3が123として計算されてるな。
デフォルトの名無しさん [sage] 2018/04/16(月) 23:24:15.51:ovdjG7M8

ありがとうございました!
381 [] 2018/04/17(火) 00:13:29.86:3Zz6leMl

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

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

print(f'{area:.5f} {length:.5f}')
デフォルトの名無しさん [sage] 2018/04/17(火) 05:33:09.17:Z6U7XFnZ

ブロードキャスト出来ない状態だから、テンソル(numpyアレイ)の次元が合ってないんだろう
元ソースと自分のプログラムで両辺のshapeをプリントかデバッガで見て比較すれば間違えた箇所に気付くと思う

それでもダメなら、もっと簡単なmnistサンプルとかでnumpyの処理を勉強し直した方がいいかも
遊園地 [age] 2018/04/17(火) 11:03:58.69:nd6YqIWE
darknetで検出した結果だけをキャプチャーするのって、どうするの?
ダメなら、テラテイルで聞くわww
381 [] 2018/04/17(火) 22:12:58.91:3Zz6leMl

いくつか変更というか、
どちらかが途中で変更されたみたいで
そのままだとエラー出る感じです


ありがとうございます
numpyほぼほぼわかってなかったので
numpy勉強して小さい画像サンプルで
元のと同じ条件でやってみたものと
自分のやってるものと比較してみます。
何をやっていいのかもわからなかったんで
書いてもらった単語調べるだけでヒントザクザクで助かります
ほんとありがとうございます
デフォルトの名無しさん [sage] 2018/04/18(水) 01:23:19.17:2l4GI+/x
chainerはデータのパックが面倒くさいからあまり好きじゃない
numpy→タプルデータセット→イテレータ→アップデータ→トレーナー

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

kerasはnumpyを縦ベクトル化してfit関数に渡すだけだから初心者向けで一番楽だと思う
日本語の解説本が少ないけどwebの記事はそれなりにあるはず
デフォルトの名無しさん [sage] 2018/04/18(水) 08:31:52.18:aHPh72wK
インポートエラー、format_excみたいなやつが永遠と出るんだがなぜでしょうか...
3日前から急に発症して、前回まで動いてたpyファイル全て実行できない...

python入れ直したり、anacondaで入れ直したりしたけど改善されないです
デフォルトの名無しさん [sage] 2018/04/18(水) 09:05:12.90:IyxAGhJK
何かが、自動update されたのかも

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

それか、環境変数PATH を上書きしたとか
遊園地 [age] 2018/04/18(水) 09:54:49.07:EkJY2Tio
anaconda入れ直すしか無いなw
デフォルトの名無しさん [sage] 2018/04/18(水) 13:23:44.85:KAGSbSSN
Anacondaでトラブってるの見る度に気持ち良くなるわ
バカすぎ
デフォルトの名無しさん [sage] 2018/04/18(水) 16:20:24.68:WEKhN2py
数字や数字を変えながら、ちょっとスクリプトを作る場合、
def(サブルーチン?関数?) の場所について、物理的に下側にないとエラーが出てしまう
プログラムの書き換える度に、下までカーソルを動かさないといけないし
地味に不便なんだけど、何とかならない?
遊園地 [sage] 2018/04/18(水) 16:39:07.37:EkJY2Tio
深層部にif __name__ == '__main__':を持ってくるか。

clss XX():
def YY()
処理

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


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

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


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


状況が解らない。
 スクショ上げてくれたら、何か言えるかもな。
デフォルトの名無しさん [sage] 2018/04/18(水) 18:50:18.12:RFL5vDmV

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

以下ブロックスの詳細です!
ttp://saikoro-table.com/2016/12/05/blokus/
遊園地 [sage] 2018/04/18(水) 23:32:03.53:EkJY2Tio
??

 ??? ?? ???


モンテ使って、機械学習で数百万回読み込ませば良い。
デフォルトの名無しさん [sage] 2018/04/18(水) 23:43:26.51:V0vvqvFn
alpha zeroのパクりならgithubにいくつか転がってるぞ
デフォルトの名無しさん [] 2018/04/18(水) 23:45:52.84:YRBnqMM/


すみません。自分含め班員もど素人しかいないので多分難しいです…
デフォルトの名無しさん [sage] 2018/04/18(水) 23:50:57.82:V0vvqvFn
難しくても丸パクりすればOK
理解は後からついてくる
デフォルトの名無しさん [sage] 2018/04/18(水) 23:57:41.25:V0vvqvFn
ちなみに素のモンテカルロ木探索だけだとあんまり強さが出ないかべらぼうな時間がかかる可能性があるので注意
デフォルトの名無しさん [] 2018/04/18(水) 23:58:42.71:YRBnqMM/


追記です。ボードの情報は board[X][Y]で与えられます。また、置ける場所をリスト?で返してくれる関数も与えられています。
ただこれをただ使ってるだけだと弱くて弱くて…笑
ということで、相手のピースとピースのつなぎ目を狙わせたいのですが、(そうすると強い)
いい方法解答お願いします。
デフォルトの名無しさん [sage] 2018/04/19(木) 00:03:06.90:K4+BGrIF

===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だとどうすればいいかと思って
ショートカットキーで移動したり方法はあるけど、ファイルを開いてちょっと編集して閉じるみたいな使い方をすると意外とストレスで
デフォルトの名無しさん [sage] 2018/04/19(木) 00:20:52.00:4n9OXawP

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

このスレで有名になったperlさん?
遊園地 [age] 2018/04/19(木) 02:43:06.18:+uu+DOll

単純にリストにしたら?

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


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

ttps://ideone.com/4X41rB

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


最後のfor文は、アイデアが出ない。
デフォルトの名無しさん [sage] 2018/04/19(木) 03:37:44.72:T1rC3373

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() # この時点で名前解決出来ていればエラーにならない
デフォルトの名無しさん [sage] 2018/04/19(木) 03:39:32.00:4mrmpy84
ブロックスについては、将棋・囲碁みたいに、評価基準を考える必要がある

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

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

AI の研究は、何年も掛かる
デフォルトの名無しさん [sage] 2018/04/19(木) 03:50:24.69:4mrmpy84

別のファイルに分けて、import すれば?

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

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

普通、動的言語は関数定義を上に書かないと、関数を呼び出せない。
例外は、JavaScript で、関数の巻き上げ
デフォルトの名無しさん [sage] 2018/04/19(木) 04:18:53.20:T1rC3373

つなぎ目ならx,yからx+1,y+1までの4箇所の判定で対角2つ埋まってて2つ空いてる所を探せば良さそう
置ける場所リストの周辺の盤面を検索して、対角パターンを優先して、さらに出来るだけ大きいブロックを選べばいいと思う

全部の角の判定が正確に出来なくても、部分的にでも判定出来ればそこそこ強くなると思う
デフォルトの名無しさん [sage] 2018/04/19(木) 04:24:10.12:T1rC3373

訂正
対角2つが敵、1つが自分、1つが空白だった
デフォルトの名無しさん [] 2018/04/19(木) 08:55:16.93:5y+3njqT


ご回答ありがとです!因みに、あと二週間くらいで完成させなければならないのですが
点数つけるのは時間的にはどうなのでしょうか?
デフォルトの名無しさん [] 2018/04/19(木) 09:02:53.03:5y+3njqT


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

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

って感じで前途多難です( i _ i )
デフォルトの名無しさん [sage] 2018/04/19(木) 09:37:46.23:4mrmpy84
評価基準を決めるには、何年も掛かる。
点数を決めて、敵AI と何千局も対戦して、微調整を続ける

将棋・囲碁もそう
遊園地 [age] 2018/04/19(木) 09:54:14.94:+uu+DOll
大前提がブロックスを完成済み。として、話が進んでるが、
ブッロク自体を作れてるのか気になる。
デフォルトの名無しさん [] 2018/04/19(木) 10:09:51.11:3+zW45NU
ガキの宿題手伝う必要ないでしょ
遊園地 [age] 2018/04/19(木) 10:15:02.85:+uu+DOll
期限が2週間も有り、大学費だしてるなら、

直接

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


むしろ、聞け。

 なんの為に学費だしてるんの?
デフォルトの名無しさん [] 2018/04/19(木) 10:34:58.58:5y+3njqT


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



ブロックはアルファベットaから21字が割り振られて最初から与えられていて
置ける場所を
(X座標、Y座標、ブロックの形、回転)
のリストで返してくれる関数?を使ってます。
デフォルトの名無しさん [] 2018/04/19(木) 10:37:55.70:5y+3njqT


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



先生が答えてくれない先生でですね…
聞いても調べてくださいとしか言われないので
こちらにお邪魔させていただきました…
デフォルトの名無しさん [] 2018/04/19(木) 10:56:08.16:j5tv0M09
Pythonむずい!
なんでこんなむずいの?
デフォルトの名無しさん [sage] 2018/04/19(木) 12:13:54.17:cIc2YD7o
pythonてかやろうとしてることが難しいんじゃないの?
言語としては簡単な方でしょ、同じことを別の言語でやってみたら分かる
デフォルトの名無しさん [sage] 2018/04/19(木) 12:17:59.12:4mrmpy84
そりゃあ、ブロックスなんて答えが無いだろ

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

まず、コミュニティへ行って、AI 同士で、何千局も対戦して、
微調整を続けないと、無理だろ
デフォルトの名無しさん [sage] 2018/04/19(木) 12:19:39.36:2nanKMvG

今時そんな殿様商売あるのかあやかりてぇ
いいなー先生様は
デフォルトの名無しさん [sage] 2018/04/19(木) 12:23:58.79:4mrmpy84
強いAI を作るのは無理だから、

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

それで良い
デフォルトの名無しさん [sage] 2018/04/19(木) 13:12:52.70:f7DkAV9f
AIは可能な選択肢のうち、0点以上の最高得点手を打つ。同点時はランダム。初期値は0
AI同士に勝負させて、打った手は全部保存しておく。最終的に勝ったほうは手のそれぞれにプラス点、負け側はマイナス点
ってやろうぜw
それを二週間延々繰り返させたら強くなるんじゃなーい?
デフォルトの名無しさん [sage] 2018/04/19(木) 15:02:28.67:c48O4SX1
どんなゲームだか知らんけど
とある局面のとある手に対して、
その後は両者ランダムに打って終わらせる試行を100回くらい繰り返して
勝った回数をその手のスコアとすれば良い
遊園地 [age] 2018/04/19(木) 16:16:23.30:+uu+DOll
遊べる。ブロックスAIと言う課題なら

目安だと[GUI]は5日

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

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


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

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


F欄大学か、なんちゃって専門学校かな?
デフォルトの名無しさん [] 2018/04/19(木) 17:59:06.99:hcjjAGnl


実験の一端でそもそもpythonもこの授業が初めてです。丸投げされました。
デフォルトの名無しさん [] 2018/04/19(木) 18:01:31.06:hcjjAGnl
回答していただいた方ありがとうございます。
参考になります。
デフォルトの名無しさん [] 2018/04/19(木) 18:40:08.42:VWrPY/vr

yahoo知恵袋の方がいいよ
遊園地 [sage] 2018/04/19(木) 18:44:18.50:+uu+DOll
大学設定は嘘だな。

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

教えて貰うのに、
理解できてないなら、教えて貰ってないのと一緒。
デフォルトの名無しさん [] 2018/04/19(木) 19:10:55.84:ar7X8qES


行ってみます!



なんか自分お邪魔みたいだったですね…失礼しました。勉強します。
遊園地 [sage] 2018/04/19(木) 19:51:05.39:+uu+DOll
おう。
大学受験に失敗して6年引き篭もってる俺には、
大学生は邪魔だぞいww
デフォルトの名無しさん [sage] 2018/04/19(木) 20:10:30.03:uEzvz53i
2週間ははっきり言って課題に対して期間がみじかすぎるよ。
python精通してる人でも強いAI作ろうとしたら2週間以上かかる。

まあルール部分は用意されてるようだからその分割り引くべきかもだけど。
デフォルトの名無しさん [sage] 2018/04/19(木) 21:02:34.32:uEzvz53i
2週間ならくらいが適当だとおもう。
あんま強くならないだろうけど。
遊園地 [sage] 2018/04/19(木) 22:34:07.23:+uu+DOll
(^p^)「あうあうあーwwwwwwww」
デフォルトの名無しさん [sage] 2018/04/19(木) 23:25:56.00:K4+BGrIF

コード紹介ありがとうございます。
まだ内容がしっかり決まって居無くってちょっと書き換えたいという時にはちょっと大げな感じになりますね
ある程度のコードの中が決まっていると良さそうですね



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



関数が巻き上げられるのはそこそこ一般的だと思っていました
IDEだとそんなこともできるのですか・・・
大昔、Exlipseを使っていたのですが重たくって重たくって使わなくなっていましたが検討してみようと思います
ありがとうございます。
デフォルトの名無しさん [sage] 2018/04/19(木) 23:41:15.47:FEDLlhkO
eclipse
デフォルトの名無しさん [sage] 2018/04/20(金) 01:21:16.01:p7k7S/mH
新年度始まって間もないのにpythonでブロックス+AIの課題が出るような学科は情報系の学科なのかな。
情報系の学科なら今流行りの機械学習系のことも普通にやるんだろうな
デフォルトの名無しさん [sage] 2018/04/20(金) 03:06:20.06:qxue6Zgp
横からなのですがさんのWebアプリにしてはpythonでサーバー建ててブラウザで表示するで合ってますか?
遊園地 [age] 2018/04/20(金) 08:57:52.56:xu4ZA7YN


# sudo pip3 install bottle
# ttp://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)
デフォルトの名無しさん [] 2018/04/20(金) 10:29:12.98:WJk0jxxj
日本の大学じゃなさそう
デフォルトの名無しさん [sage] 2018/04/20(金) 11:53:43.70:bSpMfw5T

コード貼り付け忘れていました
# ===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
デフォルトの名無しさん [] 2018/04/20(金) 12:18:17.84:9v7e203Y
ブロックスてそんなに有名なゲームなんか?聞いたことないわ
デフォルトの名無しさん [] 2018/04/20(金) 12:29:06.14:WJk0jxxj
これか
ttps://studio.beatnix.co.jp/
デフォルトの名無しさん [sage] 2018/04/20(金) 12:52:36.38:DDZisBas

> def func(x,str):
の前に
> func(str(num))
の呼び出ししたらそりゃそうなるわな
デフォルトの名無しさん [sage] 2018/04/20(金) 12:59:05.08:CLWy02Nm
えっパイソンってホイストないの?
c系言語には大抵あるのに。
抽象度の高い処理頭の方に書いて、使用関数の実装はお尻のほうに置いとけて便利なのに
デフォルトの名無しさん [sage] 2018/04/20(金) 13:00:03.95:bSpMfw5T

ありがと
全部main()に入れるんだと勝手に思い込んでた
デフォルトの名無しさん [sage] 2018/04/20(金) 13:02:16.40:bSpMfw5T
Perlと比べてイライラすることがあったけど、
{
}
が不要なのはサクサク書けて良いな
Pythonの良いところまた1つ見つけた



perlしか知らないけど普段そういった使い方してたからあれば便利だよねー
デフォルトの名無しさん [sage] 2018/04/20(金) 13:43:32.65:szszCkSU
関数を書く順番はどうでも良いよ
関数は全部グローバルに書いといて、ファイルの最後でmainを呼べばオーケー
デフォルトの名無しさん [sage] 2018/04/20(金) 13:46:22.55:szszCkSU
ってか、はdef funcのインデント下げれば動くだろう
デフォルトの名無しさん [sage] 2018/04/20(金) 13:49:06.94:bSpMfw5T

こういうこと?
# ===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()
デフォルトの名無しさん [sage] 2018/04/20(金) 13:56:09.67:bSpMfw5T

それについては456で教えて貰って解決した


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

def func2(y,str):
 print (y + "ello" + str)
デフォルトの名無しさん [sage] 2018/04/20(金) 14:06:06.09:aZdt3WBn
呼ぶ側がfunc2になってないから動かないと思うけど、だいたいそういうこと
デフォルトの名無しさん [sage] 2018/04/20(金) 15:27:31.37:DDZisBas

そもそもpythonのdefは実行文だから
デフォルトの名無しさん [sage] 2018/04/20(金) 17:50:44.02:1rBd94+J
spyder使ってるんだけど、defの中の変数が実行後の変数エクスプローラに表示されなくなるんだけど、表示させる方法ない?
もちろん実行時はその変数に値が格納されてるんだけど、defを出た瞬間に破棄されちゃうのかな。
いちいちprintしてデバッグするのめんどくさい
デフォルトの名無しさん [] 2018/04/20(金) 17:54:59.99:WJk0jxxj
global
デフォルトの名無しさん [] 2018/04/20(金) 19:16:25.14:9TOBYLLi
デバッガで何しようとしとんのやこのアホはw
デフォルトの名無しさん [sage] 2018/04/20(金) 21:19:08.77:bNn+sorS
デバッガはブレークポイント仕掛けたり1行ずつステップ実行しながら変数をウォッチするものだと思うので
実行中にリアルタイムで表示変えるのは超高速なエミュレータでもないと…;
デフォルトの名無しさん [sage] 2018/04/20(金) 22:57:24.69:Xu3EKzy5

globalにすれば出来るのは知ってるけど、いちいち関数化したのを戻すのが面倒だから他に方法がないのかと思って。


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

おかげ気づいたけど、defを抜ける直前にブレークポイント置いてそこで確認すりゃあいのかな。けど関数の分割多いと辛いな。
デフォルトの名無しさん [sage] 2018/04/20(金) 23:08:48.76:k7m69UuR
ログ吐くようにしとけよ
デフォルトの名無しさん [sage] 2018/04/20(金) 23:18:23.85:k7m69UuR
printめんどくさいとか言ってるがある程度のサイズのあるプログラムはログ残したほうが結局は作業がはかどる。
遊園地 [age] 2018/04/20(金) 23:47:55.05:xu4ZA7YN
ログはprintでは無いと言う事を肝に免じて置いて下さい。
デフォルトの名無しさん [] 2018/04/21(土) 00:18:21.37:NjF1F28w

ログをprintで書くことで悦に入っています。
デフォルトの名無しさん [sage] 2018/04/21(土) 00:46:49.28:SeoWSMd7

printがめんどくさいと言う人ならログ出すように変更するのもめんどくさいになるだろう。
めんどくさいのいやだいやだで、(コードに手を入れないで)
ツール(デバッガ)で楽々出来るようにしたいにニダと言う感じだろう
実運用ではこのログはイラネなんだろうが。
デフォルトの名無しさん [sage] 2018/04/21(土) 01:00:05.67:YdpuWmPR
肝に免じてどうする
肝は銘ずる(刻みつける)ものだ
デフォルトの名無しさん [sage] 2018/04/21(土) 01:10:45.10:SeoWSMd7

遊園地のいるところは
肝に銘じてが
話し言葉で
>肝にめんじて
になるところなんだよ。
鉛(標準語では訛)がでたんだろ
デフォルトの名無しさん [sage] 2018/04/21(土) 01:40:30.99:jRiYYFVC
p2exeって日本語は扱えないのですか?
デフォルトの名無しさん [sage] 2018/04/21(土) 03:00:26.77:HWyKzA01

py2exeではなく?
デフォルトの名無しさん [sage] 2018/04/21(土) 03:26:11.52:jRiYYFVC

間違えました、py2exeです。日本語文字をprintしようとすると
UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequence
って出るんですよね。コードをutf-8にしたり、文字列の先頭にuを付けてみましたが、きちんとexeが生成されません
デフォルトの名無しさん [] 2018/04/21(土) 07:09:29.13:nN/toUY2
肝免わろすwww
遊園地 [sage] 2018/04/21(土) 07:29:31.66:fW+0Fovn

あああーーーー

  それは、アカンww


明治時代の初期までなら、隣の県に行けば
言葉が通じないのもザラだったしなwww
デフォルトの名無しさん [sage] 2018/04/21(土) 08:46:12.30:HWyKzA01

んでもってPythonは2系をつかってるのか?
あるいはWindowsのユーザー名が日本語なのか。

素直に3系つかうことと
py2exeするときはあきらめて日本語を含まないユーザー名を作って
そこからやる
デフォルトの名無しさん [sage] 2018/04/21(土) 15:11:14.68:Jlfar8cI
py2exeは3.6に対応してないから、バイナリ作るならpyinstallerの方がいいと思う
セットアップファイル作る必要もなくて楽だし
デフォルトの名無しさん [] 2018/04/21(土) 15:16:38.37:K9lD61bw
bytesをfloat配列にする高速な方法無いでしょうか?
4バイトで1floatではなく、1バイトで0.0〜1.0の範囲の1floatの
同じ長さの配列が欲しいのですが
デフォルトの名無しさん [sage] 2018/04/21(土) 16:19:45.05:Jlfar8cI
pyinstallerで詰まったのは、pandasを使うスクリプトでエラーが出ることぐらい
pandasを 0.20.0 に落とせば通る様になると思う
デフォルトの名無しさん [] 2018/04/21(土) 16:38:34.70:Zke6MJB8

精度落ちて良いならいくらでもある
デフォルトの名無しさん [sage] 2018/04/21(土) 16:42:03.35:K9lD61bw

精度は構いませんので是非
デフォルトの名無しさん [] 2018/04/21(土) 16:58:38.10:V+d3uri5
正の数だけ?
デフォルトの名無しさん [] 2018/04/21(土) 17:04:24.09:yl7d1HXp
精度気にしないなら
0x00 = 0.0
0x01 = 0.004
0x02 = 0.008
...
0xFA = 1.0
0xFB〜0xFF は使わない
とか勝手に決めれば良いだけ
デフォルトの名無しさん [sage] 2018/04/21(土) 17:09:59.96:K9lD61bw

0.0〜1.0の正の数だけです
デフォルトの名無しさん [sage] 2018/04/21(土) 17:22:36.40:6J3G0l4e

それ普通に255.0で割る方が速いだろw
デフォルトの名無しさん [] 2018/04/21(土) 17:26:25.82:yl7d1HXp
そうか?
も 250 で割るだけだから速度は一緒だぞ
デフォルトの名無しさん [sage] 2018/04/21(土) 17:30:44.93:6J3G0l4e

250.0で割るのだと元のバイト列にある251〜255を1.0に丸める処理が必要になるだろ。
考えてから発言する習慣付けなよ。
デフォルトの名無しさん [] 2018/04/21(土) 17:34:55.64:yl7d1HXp
どうせ使わないんだからいいだろ
デフォルトの名無しさん [sage] 2018/04/21(土) 17:45:08.29:nWGazij5
おいおい256.0だろ…
おまえは1を0.1にするのに9で割ると言うのかい?
デフォルトの名無しさん [sage] 2018/04/21(土) 18:23:41.65:bgp2zzOH

256 しかないんだから float f[256] の配列作って変換すればいいんじゃね?
デフォルトの名無しさん [sage] 2018/04/21(土) 18:33:33.34:ZHkY3Ka/
頭いいな
デフォルトの名無しさん [sage] 2018/04/21(土) 18:37:22.51:CHrbK6wg

素直にパイインストーラーを使うことにします。ありがとうございました!
遊園地 [sage] 2018/04/21(土) 19:45:18.90:fW+0Fovn
windows辞めて、Ubuntuにしたらデフォルトでpython2,python3入ってるよ。

 なんつってwwww  これぞwww 悪魔の囁きwwwww
デフォルトの名無しさん [sage] 2018/04/21(土) 19:47:16.89:fJguH7wu
いやシステムのPythonは使わないのか基本だぞ
デフォルトの名無しさん [sage] 2018/04/21(土) 19:51:23.74:Af+18o1F
それな
むしろデフォで入っていることが余計なトラブルの元になってる
デフォルトの名無しさん [sage] 2018/04/21(土) 19:53:02.17:SpcYsUEG
Pythonに依存した他のパッケージを動作させるためだけのものだよね
ユーザーが使ってはいけない
デフォルトの名無しさん [] 2018/04/21(土) 20:04:52.49:nN/toUY2

何に騙されてそんなガセネタ信じとるんやwwwww
デフォルトの名無しさん [sage] 2018/04/21(土) 20:09:07.60:+jzprnKY
UbuntuとかMacとかはpyenv入れてからAnaconda入れてとか結構面倒くさい
遊園地 [sage] 2018/04/21(土) 20:54:58.27:fW+0Fovn
Ubuntu系のlinux mintにAnaconda入れてる。
起動確認の初回しか、動かしてない。
遊園地 [age] 2018/04/21(土) 21:45:02.32:fW+0Fovn
オブジェクトをヒープ上にメモリ確保する場面は
どんな時ですか?
デフォルトの名無しさん [sage] 2018/04/21(土) 22:00:51.41:ZHkY3Ka/
逆にヒープ以外にどこにメモリを確保するんだ?
それが答えじゃね?
デフォルトの名無しさん [] 2018/04/21(土) 22:05:01.51:zxSpDS2l

開発環境とシステム分けておくの大事だぞ
遊園地 [age] 2018/04/21(土) 22:16:07.69:fW+0Fovn
実行できない。

  へるぷ

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]]
デフォルトの名無しさん [sage] 2018/04/21(土) 23:13:25.47:ZHkY3Ka/
実行できないってどういうことよ
エラーメッセージがあるならそれも載せろよ

まあわざと載せてないのかもしれないけど
デフォルトの名無しさん [sage] 2018/04/21(土) 23:56:54.79:XrHLCoEo

が言っているだろ。開発環境とシステム分けてないから実行できないんだよ
遊園地 [sage] 2018/04/22(日) 07:24:22.58:S/aJuoMN
NameError: name 'bisect' is not defined

関数内にglobal と書いてもダメだった。
遊園地 [sage] 2018/04/22(日) 07:35:06.34:S/aJuoMN
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を満たすバージョンを見つけることができませんでした(バージョンから:)
二等分線に一致する分布が見つかりませんでした
デフォルトの名無しさん [sage] 2018/04/22(日) 07:59:57.89:6LlZ0HWt
「みんなの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 を使うとか
遊園地 [sage] 2018/04/22(日) 08:55:24.40:S/aJuoMN
Anaconda使ってないよw

Geanyから起動してる。

linux mint18 mate
python 3.6.3
遊園地 [sage] 2018/04/22(日) 08:56:08.08:S/aJuoMN
システムバージョンの
python 3.5.2でも試したけど、一緒のエラー内容だった。
遊園地 [sage] 2018/04/22(日) 09:06:16.89:S/aJuoMN
公式から、ライブラリ落として
入れないと駄目とか?

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

ttps://teratail.com/questions/122985

import bisect
では、なく。

from bisect import bisect
と、記載しなければ成らなかった模様です。
遊園地 [age] 2018/04/22(日) 09:30:23.48:S/aJuoMN
皆さん、いろいろと
ありがとう、ございました。
デフォルトの名無しさん [] 2018/04/22(日) 10:07:45.92:clJAmZnE
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を使用しています。
デフォルトの名無しさん [sage] 2018/04/22(日) 10:29:12.32:Nfi3M0G/

質問をすることでしか得られない、回答やアドバイスがある。
15分調べてもわからないことは、質問しよう!

何このサイト
入門者でも質問OKなのかな?
このスレだと15分調べて質問したらggksとか言われそうなんだが
遊園地 [age] 2018/04/22(日) 10:35:53.40:S/aJuoMN

このレベルから受け付けてる。
ttps://teratail.com/questions/10173
デフォルトの名無しさん [sage] 2018/04/22(日) 11:17:20.23:Nfi3M0G/

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

同意を求めるのじゃなくて質問すれば答えてくれんじゃね?そうゆうの?
デフォルトの名無しさん [] 2018/04/22(日) 11:45:11.71:3qJWMYht
python導入の仕方がわからない。。。
デフォルトの名無しさん [sage] 2018/04/22(日) 12:05:00.81:8GLco50w

teratailで質問するとここと違いやさしく丁寧に教えてくれるよ
デフォルトの名無しさん [sage] 2018/04/22(日) 12:18:40.18:bQIDMX1u

グーグルでpython インストール で検索。
以上。
遊園地 [sage] 2018/04/22(日) 13:19:51.68:S/aJuoMN

ネタだと思うけど、公式から自分が使用してるOSを選ぶ。
ttps://www.python.org/downloads/

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

x86 32bit
x86-64 64bit
デフォルトの名無しさん [sage] 2018/04/22(日) 13:21:25.71:6LlZ0HWt
ここは、Python の初心者用のスレだろ。
言語だけの初心者

PC・OS・情報処理の初心者用ではない。
Python以外の事は、知っているべき
遊園地 [sage] 2018/04/22(日) 13:21:58.00:S/aJuoMN
win機で特に理由が無いなら、
Windows x86-64 executable installer

Ubuntuならコッチみてくれ。
ttps://www.python.jp/install/ubuntu/index.html
遊園地 [sage] 2018/04/22(日) 13:23:09.27:S/aJuoMN

最初に、どれ動かして良いのか分からなかったからww

 全部ダウンロードして、試した俺が居るぞww
デフォルトの名無しさん [sage] 2018/04/22(日) 14:04:12.27:Nfi3M0G/

でもなぁー
毎日PCの電源を入れている人ならともかく
例えば高校数学にコンピュータあるけどあれするだけでもプログラミングソフトのセットアップって
重要で意外と難易度が高い
かといって、WindowsOS向け、Pythonセットアップスレとか作っても多分はやらない
ただ、少し慣れてきてUbuntuとかtensorflow-gpuとか入れろと言われるとトラブってる人も多いし
その記事だけでアフィが成り立つレベルだよ
デフォルトの名無しさん [] 2018/04/22(日) 16:22:41.42:3qJWMYht
526です。pythonのコード書くのはコマンドプロントだけ?
デフォルトの名無しさん [] 2018/04/22(日) 16:26:30.71:3qJWMYht
pythonのエディタはWindowsのコマンドプロントだけ?
デフォルトの名無しさん [] 2018/04/22(日) 16:57:42.88:/RR+q6wr

学校も含めて他人のPCにインスコするときは
VM用意してその中で遊ぶのがマナー
デフォルトの名無しさん [] 2018/04/22(日) 17:08:09.84:PsQCMKRd

言語だけの初心者=PC・OS・情報処理の初心者やけど
よっておまえもなw
遊園地 [sage] 2018/04/22(日) 17:52:06.12:S/aJuoMN

それは無いよ。

USBブートで遊ぶべき。
デフォルトの名無しさん [sage] 2018/04/22(日) 19:12:05.56:Nfi3M0G/

VMってシステムに深く入り込むから大変なことになる
というかLANが使えなくなって半日嵌った
デフォルトの名無しさん [sage] 2018/04/22(日) 19:37:52.67:HOpx3haN
他にもいっぱいあるよ
デフォルトの名無しさん [sage] 2018/04/22(日) 19:48:31.90:H/AU6k7y

???
VMware PlayerとかVirtualPCなんかだと普通のアプリケーションと変わらんぞ
ゲスト側のネットワーク設定はちょっとコツが要るけど
デフォルトの名無しさん [] 2018/04/22(日) 21:53:07.67:2Fk6o3gK
アップデートしたら、仮想SW死んだことがある
環境的に物理的なトラブルと切り分けが調べられなくて泣きそうになった
デフォルトの名無しさん [sage] 2018/04/22(日) 21:57:51.54:2Fk6o3gK
hyper-vだったけどね
デフォルトの名無しさん [] 2018/04/22(日) 22:24:34.38:SkZxcoIM
wxpythonでボタンをクリックしたら別のpyに書いたウィンドウを表示させているのですが、開いたpyウィンドウを閉じるともとのボタンをクリックしても再実行されません。
importは一度だけというのはわかっているのですが・・・

どのような記述をすれば閉じても何度でも再実行できるようになるのでしょうか。

教えて下さい。
遊園地 [age] 2018/04/22(日) 23:01:16.94:S/aJuoMN

ttps://ideone.com/

に全部 ソース貼れw

 それを見てから応える
デフォルトの名無しさん [sage] 2018/04/22(日) 23:03:22.02:6LlZ0HWt
wxpython を説明している、サイトを見て、勉強する
デフォルトの名無しさん [sage] 2018/04/22(日) 23:35:12.62:GW1847bJ

5chのPythonスレのレベルを超えた質問
teratailで尋ねたほうが良いよ


このスレで出来る回答はそんなもんだよな
デフォルトの名無しさん [] 2018/04/23(月) 08:33:18.26:1C6OTR8X
ttps://ideone.com/OtTmrTです!
遊園地 [age] 2018/04/23(月) 10:37:49.00:/QV9I6Db

実行ボタン処理が定義されて無いから?

詳しい人、どうぞww
デフォルトの名無しさん [sage] 2018/04/23(月) 11:17:30.25:DP/vD1RL
pythpn初心者だけどオブジェクト指向分からな過ぎて死にそうです
何かおすすめの本ありますか?
デフォルトの名無しさん [sage] 2018/04/23(月) 11:18:44.42:zsG77YNH
死んだ方がいいよ
遊園地 [sage] 2018/04/23(月) 11:30:33.57:/QV9I6Db
厳し過ぎやろ

 俺が引いてんじゃねぇか!ww


[遊園地は]使い分けると深みに嵌まるから、この形式だけ抑えて後は垂れ流しだな。

ttps://ideone.com/VuRClI
デフォルトの名無しさん [sage] 2018/04/23(月) 13:03:27.78:HUlTGC1I

とりあえず、ボタン押してフレーム出すのはこう。


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()
スッキリ厨 [sage] 2018/04/23(月) 13:31:39.89:jMm7sVs3

まずこの本で、オブジェクト指向を学ぶ。
スッキリわかる Java入門 第2版、2014

その後、この2冊をこの順に読む。
たのしいRuby 第5版、2016
みんなのPython 第4版、2017

この順番でやらないと、理解できないはず。
特に、オブジェクト指向の本は「スッキリ」しか存在しない
デフォルトの名無しさん [] 2018/04/23(月) 14:31:38.43:Lf5qXYif
さん

ありがとうございます!
ただボタンを押した後のフレームを出す処理を他のファイルに書いています。

そういうやり方は一般的ではないのでしょうか?


def on_button( self, evt ):
import aaa

のようにaaa.pyを呼び出して処理させたいのですが、一回表示させて閉じると再表示させることができません。
デフォルトの名無しさん [sage] 2018/04/23(月) 14:47:47.40:HUlTGC1I

ファンクションの中でimportして、しかもそれだけでウィンドウを出すってのはすごく変。
四の五のいわずにやめた方がいい。

大体そんなやり方してたら親ウィンドウすら渡せない。
デフォルトの名無しさん [sage] 2018/04/23(月) 14:51:26.42:HUlTGC1I

子ウィンドウのコードを別のファイルにしたいなら、ChildWindowの定義部分を別ファイルにしてimportすればいい。
デフォルトの名無しさん [sage] 2018/04/23(月) 15:10:44.56:Sx+lupQ0

偉大なるこのスレの遊園地様が必死に質問しているteratailで聞いたほうがいいよ
処理を書いている他のファイルも提示して動くようにしてくださいと依頼すれば良い
デフォルトの名無しさん [sage] 2018/04/23(月) 15:15:35.49:sVI7fOBi
importは読み込んで実行というより
定義や宣言を読み込むため(だけ)に使うのが普通よね
デフォルトの名無しさん [sage] 2018/04/23(月) 15:19:13.02:Sx+lupQ0

>ChildWindowの定義部分を別ファイルにしてimportすればいい
ChildWindowの定義部分がある別ファイルのaaa.pyをimportしているのが
on_buttonのimport aaaなんだろ
デフォルトの名無しさん [sage] 2018/04/23(月) 15:32:45.72:sVI7fOBi
import aaa

 def on_button(…):
  child_window = aaa.ChildFrame(…)
  child_window.xxx = yyy
  …

こんな感じかね
デフォルトの名無しさん [sage] 2018/04/23(月) 15:57:59.47:sVI7fOBi
ついでにimportで1回しか実行されない原因はこれ
ttp://python.matrix.jp/pages/tips/import.html#id4
C言語でいうインクルードガード的なのが働いてる
デフォルトの名無しさん [] 2018/04/23(月) 17:22:58.10:Lf5qXYif
ありがとうございます、大変勉強になりました。
頑張ります!
デフォルトの名無しさん [sage] 2018/04/23(月) 17:39:53.20:HUlTGC1I

wx.Frame.Showをimportするファイルに書くなって意味なんだけど、伝わりませんか、、、そうですか、、、すみません。
デフォルトの名無しさん [] 2018/04/23(月) 18:24:03.12:NdLOIshu
わたしには伝わりました!
遊園地 [sage] 2018/04/23(月) 18:38:50.30:/QV9I6Db

.pyファイルを1つの関数が代わり使うとは大胆だな。

単純に、
import aaa

aaa.pyファイルの中身を関数かクラスにする。
遊園地 [sage] 2018/04/23(月) 18:42:03.15:/QV9I6Db
遊園地ww 公式ですと、こんな感じですなww

----aaa.py----
import bbb

bbb.A()

----bbb.py-----

def A():
print('Hello World')
デフォルトの名無しさん [sage] 2018/04/23(月) 20:14:08.95:vFsvQnxK

もしかしてimportするスクリプトにグローバルに書いてるのか
もしそうなら、面倒でも何か関数をdefして(例えばopen_window() とか名前を付けて)
その中にグローバルで書いてた処理を移動すべし

def on_button( self, evt ):
 import aaa
 aaa.open_window()

という風にすれば、on_button() を呼び出す度にopen_window()が確実に実行される
デフォルトの名無しさん [] 2018/04/23(月) 21:07:24.03:6SrNRF4N
568さん、今日1日でここまで教えていただけると思わなかったです!

ほんとありがとうございます!
デフォルトの名無しさん [sage] 2018/04/23(月) 21:34:33.91:Mytq4Fn/
>def on_button( self, evt ):
>import aaa
のaaa.pyのどんなことを書いてあるんだろ?


のdef on_button( self, evt ): の処理部をaaa.pyに書いて
動くように出来る?
553 [] 2018/04/23(月) 21:59:54.79:3UVOgM3N
ああわかったよ、書けばいいんだろ、、、

>>>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()
553 [] 2018/04/23(月) 22:06:09.88:3UVOgM3N
すまん、インデントが消えた。

ちなみにwxの子ウィンドウには親の参照渡しとかないと、親を閉じたときにアプリケーションが勝手に終了してくれないから
アプリケーションのメインウィンドウ以外には親を渡した方が良い。
これはaaa.pyに子ウィンドウを表示するグローバル関数を定義する場合も同じ(関数の引数として親を渡せるようにする)
じゃないと、出したフレーム片っ端から閉じないとプログラム終了しなくなる。
553 [] 2018/04/23(月) 22:17:49.55:3UVOgM3N
new ってなんだよ、、俺。
「new ChildFrame(・・・」のnewはいりません、ごめんなさい。
デフォルトの名無しさん [] 2018/04/23(月) 22:22:44.80:6SrNRF4N
奥深いっす…でも楽しみです!
ありがとうございます!
デフォルトの名無しさん [sage] 2018/04/23(月) 22:34:59.73:M4g+UNEZ

俺、超低脳でさっぱり分からないんだけど、
>wxの子ウィンドウには親の参照渡しとかないと、親を閉じたときにアプリケーションが勝手に終了してくれない
その親の参照渡しはのどこに記述されているんだ?
デフォルトの名無しさん [sage] 2018/04/23(月) 22:36:33.56:3UVOgM3N

ChildFrameのコンストラクタの第一引数。
デフォルトの名無しさん [sage] 2018/04/23(月) 22:40:44.90:3UVOgM3N
ていうとわかりにくいか?

child_frame=ChildFrame(self・・・
のself
デフォルトの名無しさん [] 2018/04/23(月) 22:51:42.66:jJWBqt/a
遊園地召喚
デフォルトの名無しさん [sage] 2018/04/23(月) 23:04:48.51:M4g+UNEZ

俺の知識では理解は無理だが、その部分なのか(そもそも、クラスを理解している奴なら質問しないだろうが)
ついでに、
のような回答をくれればよかったんだろうがな(元の質問が別ファイルに子windowの記述がある)
一方、は素直にのようにするにはどうすれば良い?と質問すればよかったんだろうが
超初心者は俺もだがコミュ力ないから回答得るのに遠回りするよな
このスレはで出たコンストラクタも、これ何?レベルの奴が質問だろうからな
デフォルトの名無しさん [sage] 2018/04/23(月) 23:14:47.88:3UVOgM3N
すまんね。

553書いたときはクラス一つ別のファイルに移動してそれを使うことが出来ない人がwx使ってウィンドウ出せるなんて思ってなかったんだよ。
デフォルトの名無しさん [sage] 2018/04/23(月) 23:27:13.13:M4g+UNEZ

コミュ力ない人の質問だと本当に教えてほしいことが相手に伝わらないことが多いから
回答する人は要エスパー力だからな
デフォルトの名無しさん [sage] 2018/04/23(月) 23:31:46.35:M4g+UNEZ
デフォルトの名無しさん [] 2018/04/23(月) 23:52:25.59:2sWKRyd2
以下のコードを実行するとエラーになります
どうすればいいのでしょうか・・・

y = 10
print(f'test y = {y}')
デフォルトの名無しさん [] 2018/04/23(月) 23:56:38.04:2sWKRyd2
すいません3.6から実装されたf文字列というんですね
3.5だからエラーになるわけだ(´・ω・`)
遊園地 [age] 2018/04/24(火) 08:01:24.83:G5LttnIJ
別バージョンのpython入れてから、物凄いトラブってる。

dpkg-deb: エラー: サブプロセス ペースト がシグナル (Broken pipe) によって強制終了されました
処理中にエラーが発生しました:


フォーカスの処理とかしてないが、呼び出すだけなら、コレで良い?
試しては無い。

def Sample():
sub_win = Tkinter.Toplevel()
sub_win.title(u"Sub Process")
sub_win.geometry("400x300")

Sample()
デフォルトの名無しさん [] 2018/04/24(火) 08:37:58.18:AdXJnnP5
馬鹿には無理
デフォルトの名無しさん [sage] 2018/04/24(火) 10:09:50.76:jhtbgK3V
jupyter labとnotebookどっも括弧やクォーテーションの補完が効かないんだけどデフォ?
それともなんかおかしい?
デフォルトの名無しさん [] 2018/04/24(火) 14:47:46.65:xQCRvp4n
553さんは普段仕事でpython利用されてるんですか??
デフォルトの名無しさん [sage] 2018/04/24(火) 14:48:37.60:QI4dBYy7
マルチ拝観
デフォルトの名無しさん [sage] 2018/04/24(火) 15:37:30.64:WvdWgq+O
現場ですぐに使える! Pythonプログラミング逆引き大全 313の極意 
って初心者向き?
デフォルトの名無しさん [sage] 2018/04/24(火) 16:20:06.53:dUrN2wLw

デフォルトでは補完されることになつているはず。
今の状態だとIpythonでも補完できないと思うが?
デフォルトの名無しさん [sage] 2018/04/24(火) 17:07:25.08:Mdvhp2Yn
すみません、質問です。
初歩的なことかもしれませんが、
Pythonを使うエディタで秀丸使ってるんですけど、
他のsublimeとかのほうが使いやすいですか?

秀丸だとインデント打つのが面倒で・・・。
ご回答よろしくお願いします。
デフォルトの名無しさん [sage] 2018/04/24(火) 17:26:32.99:KvfUX4Up
そのうちプログラム打つのが面倒とか言い出しそうだな
デフォルトの名無しさん [] 2018/04/24(火) 17:28:48.89:QI4dBYy7
秀丸は割と良い方
デフォルトの名無しさん [sage] 2018/04/24(火) 17:39:44.58:1D4v+3Mx
VSCode は?
デフォルトの名無しさん [sage] 2018/04/24(火) 17:41:28.56:ftYeuzTX

本業はc++
そっちでwx使ってるから、wx周りはそこそこ詳しいってだけ。
pythonは趣味。
デフォルトの名無しさん [sage] 2018/04/24(火) 18:12:28.83:eLoUapjt
意地張ってないでpycharmにしなさい。どうせpythonしか書かないでしょ。
デフォルトの名無しさん [sage] 2018/04/24(火) 19:36:02.20:8pq7pLvE

俺は扱えないけど、プログラムのためのエディタはvimが良いらしいらしいよ


低脳にはそんな素晴らしいIDEは猫に小判だろう
書くPythonだって100行もいかないだろうし、そして、モジュールの中を見ることもないだろう
デフォルトの名無しさん [sage] 2018/04/24(火) 19:47:17.37:h25jwsU+

ipythonでも補完できない。なんかなくちゃいけないファイルが無いんかなあ、探してみます。
デフォルトの名無しさん [sage] 2018/04/24(火) 20:18:42.40:Mdvhp2Yn

vimは関係ないですよ。
プログラミング書くのに適してませんし。


趣味でPythonやっているさんに「低脳」って言うのは言い過ぎだと思いますよ。
デフォルトの名無しさん [sage] 2018/04/24(火) 20:28:24.71:PPDUXdzL
Vimが適してないとかアホか
お前がプログラミングに適してねえよマヌケ
一生懸命ひでまるおしてろ
デフォルトの名無しさん [sage] 2018/04/24(火) 20:35:04.99:Mdvhp2Yn
vimでプログラミングするって冗談じゃなかったのかw
これは真性だな・・・

俺はもう実務でPython扱ってるよ
すでに300行以上書いた
明日からちゃんとしたエディタインストールするわ

あとみんなレスするときはアンカー(>>)をつけるように
誰に対して言ってるのかわからない独り言みたいだからね
デフォルトの名無しさん [sage] 2018/04/24(火) 20:46:20.64:yGK7zMMt
配列の例題なのですが

str = "Hello"
str2 = ""
for n in str:
str2 = str2 + (n * 2) + '~'
print(str2)

これのstr2 = ""は何をする為に必要なんでしょうか?
デフォルトの名無しさん [sage] 2018/04/24(火) 20:55:41.97:8pq7pLvE

試しに、str2 = "" を #str2 = "" して見ればOK
str2 = [] や str=0でもOKだが
デフォルトの名無しさん [sage] 2018/04/24(火) 20:57:15.34:JriH9xMX
試しにコメントアウトしてみ?
デフォルトの名無しさん [sage] 2018/04/24(火) 20:58:23.94:JriH9xMX
あら、先越されたw
デフォルトの名無しさん [sage] 2018/04/24(火) 20:59:12.40:Mdvhp2Yn

えらい!
ちゃんとアンカーつけられたじゃないかw


今日も仕事頑張ったし
もう寝るわ
おやすみノシ
デフォルトの名無しさん [sage] 2018/04/24(火) 21:04:38.83:yGK7zMMt
コメントアウトしたらNameErrorと出ました。
これはstr2=""でとりあえず文字として定義してるってことですかね
デフォルトの名無しさん [sage] 2018/04/24(火) 21:07:01.25:8KBFlzDM

             「 ̄ `ヽ、   ______
             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|   \    ソ
デフォルトの名無しさん [sage] 2018/04/24(火) 21:07:54.72:ChFyzKk0

まだ見てるよね
ちょっとお母さんと代わってくれる?
お宅のお子さんはちゃんと小学校に通わせましたか?
お猿の学校では駄目ですよ
って教えてあげないといけないんだ
デフォルトの名無しさん [sage] 2018/04/24(火) 21:20:09.03:8pq7pLvE
>vimは関係ないですよ。
>プログラミング書くのに適してませんし。
vimを使っている奴は、真性だな・・・と主張しているのか
デフォルトの名無しさん [sage] 2018/04/24(火) 21:33:10.24:dUrN2wLw

変数にstrが許されるのは小学生まで
デフォルトの名無しさん [sage] 2018/04/24(火) 21:46:40.49:gtAr5qY0
俺はvim使ってるけど確かにここの超初心者には勧めたくはないな
デフォルトの名無しさん [] 2018/04/24(火) 21:48:12.19:UZrLd4N8
まさかのリアル厨房ワロタw
デフォルトの名無しさん [sage] 2018/04/24(火) 21:48:59.19:T7P20eIK
実際vimでコーディングする人は多いよ
きちんとカスタマイズしてやればIDEより軽いし機能も必要十分で普通に実用的
デフォルトの名無しさん [sage] 2018/04/24(火) 21:52:23.15:8pq7pLvE

何のために、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の値は得られると思うか
デフォルトの名無しさん [] 2018/04/24(火) 21:55:10.72:BAt1Eldp
ぶっちゃけ君ら何歳?
デフォルトの名無しさん [sage] 2018/04/24(火) 21:56:45.13:T7P20eIK

for文の中でstr2から値を参照しようとしてる
定義していない変数を参照することは出来ないから、空でもいいから初期化しないといけない
初期化していないと「空であるかどうか」すら判定出来ない
デフォルトの名無しさん [] 2018/04/24(火) 22:00:19.23:UZrLd4N8
オレ2年やけど体壊して1年休学してるから本当は3年やからな
なめんじゃねーぞ
遊園地 [age] 2018/04/24(火) 22:24:57.07:G5LttnIJ
授業で入るなら、小中学生が増えてもおかしない。
ただ、5chに来るかは来ないかだと、来ないだろうけど。
遊園地 [sage] 2018/04/24(火) 22:26:08.73:G5LttnIJ


Geany使ってる。
デフォルトの名無しさん [sage] 2018/04/24(火) 22:32:00.39:yGK7zMMt


空っぽの変数として定義する必要があったってことですね。
プログラム初心者なもんで申し訳ない・・
デフォルトの名無しさん [sage] 2018/04/24(火) 22:41:45.33:WvdWgq+O

普通に秀丸使ってるけどな
なんだかんだ言っても使い慣れたエディタが楽
デフォルトの名無しさん [sage] 2018/04/24(火) 22:58:24.77:DKMQJI1I
pythonで作ったツールをexe化して配布しようとおもうんですけど
二次配布防止するにはどうすればいいですか?
今考えてるのはアイパスとコンピュータ名とかでhash値作ってサーバーに登録。
ツール起動時に毎回サーバーに問い合わせる、とかです。
ライセンスというほど大それたものでもないので、理想はサーバーつかわずに
初回に起動したそのpcじゃないと使えなくして、からくりがバレれば二次配布できちゃう
程度の精度でもいいんですけど。。
デフォルトの名無しさん [sage] 2018/04/24(火) 23:00:51.21:8KBFlzDM
exeを入れたzipにパスワードかけろ
デフォルトの名無しさん [sage] 2018/04/24(火) 23:01:00.08:1D4v+3Mx
ドングルとか?
遊園地 [age] 2018/04/24(火) 23:01:33.49:G5LttnIJ
Q
 多言語みたいに型だけ宣言して置く方法とか有りますか?


int i
print(type(i))

# era-
SyntaxError: invalid syntax
デフォルトの名無しさん [] 2018/04/24(火) 23:02:26.10:BAt1Eldp
HDD/SSDに署名程度で良くね
デフォルトの名無しさん [sage] 2018/04/24(火) 23:13:10.05:WvdWgq+O

大した物でないならならzipにパスワードで良いんじゃね?
そのサーバ維持やメンテナンス延々とするつもりならいいだろうがドメイン維持だけでもそれなりのコストになりそう
遊園地 [sage] 2018/04/24(火) 23:19:38.12:G5LttnIJ

起動時に、ユーザー名を拾って来て、適当なファイルに暗号化して入れる。

そのユーザー名と一致しなかったら、メッセージボック等を出して終了
遊園地 [sage] 2018/04/24(火) 23:22:31.35:G5LttnIJ
バツ 起動時に
マル 初回起動時に
デフォルトの名無しさん [sage] 2018/04/24(火) 23:24:30.20:vOUBS5cl
pythonをバイナリ化出来たとしても、中の依存モジュールに1つでもGPLが入ってたらソース公開しないとライセンス違反になる
結局ソース解析されるだけの様な気がするけど…
遊園地 [sage] 2018/04/24(火) 23:24:54.14:G5LttnIJ
win機で動くかわからないけど、下記が動作するか調べてみたら。

import os
T=EMAIL_SUBJECT_PREFIX = '[%s]' % os.uname()[1]
print(T)
デフォルトの名無しさん [sage] 2018/04/24(火) 23:24:56.76:DKMQJI1I

zipにパスワードって解凍して中身取り出せば再配布し放題ですよね?
レンタルサーバーは広告ありの無料とかでよいかなぁと。
遊園地 [sage] 2018/04/24(火) 23:26:30.59:G5LttnIJ
んごぉーーー

from socket import gethostname
T=EMAIL_SUBJECT_PREFX = '[%s]' % gethostname()
print(T)
デフォルトの名無しさん [sage] 2018/04/24(火) 23:31:45.21:8KBFlzDM

じゃあダウンロードサイトにもパスワードかけとけ
遊園地 [sage] 2018/04/24(火) 23:37:44.84:G5LttnIJ

心配しなくても、その程度のソフトなら二次配布なんて
しないよ。
デフォルトの名無しさん [sage] 2018/04/25(水) 01:21:27.42:kuotvUVn

ダウンロードサイトであーだこーだするなら、
ダウンロードさせるexeの内部に毎ダウンロードごとに異なるパスワード(hashとか)
を組み込んで、管理サーバーでこのパスとPC固有情報を関連付けすれば良いんじゃないのか。
管理サーバーを立てるぐらいの人ならこれぐらいは頑張って実現するだろう


それでexeの二次配布防止なるのか? exeは全て共通なんだろ。それで
管理サーバーはPC登録情報からexeが2次配布利用であると判断するんだ?
PCが登録しているかはわかると思うが
デフォルトの名無しさん [sage] 2018/04/25(水) 02:36:01.53:3okspJRg
オープンソースのライセンスを無視してバイナリ配布して
さらに自分だけコピープロテクトを掛けたりしたらサイトが炎上しそうだな

importするモジュールの選択にはくれぐれも気をつけてくれ
デフォルトの名無しさん [] 2018/04/25(水) 04:16:24.63:wUGQlgZi
全部バイナリ化せんでも
肝心な部分だけDLL化pydとかpyc化して
それが無いと動かないようにするだけでもいいのに
デフォルトの名無しさん [sage] 2018/04/25(水) 09:06:01.80:00WI0MSP

過去何度もレンサバ撤退してる
数年経過して撤退したら日常で使ってたそのソフトが急に使えなくなる
更に開発者の君自身がそのソフトに興味を失っており(良くある話)コンタクトができない
無責任すぎでしょ
独自フォーマットの開発者とか見てても思うけど数は少なくても思いつきでやって
はしご外されると作ってる人の迷惑はかなりの物がある
遊園地 [sage] 2018/04/25(水) 10:04:00.25:aZgfWxV+
二次配布とか考えなくても、Vectorに登録する審査も通ると思えないけどな。
デフォルトの名無しさん [] 2018/04/25(水) 10:36:51.42:NXDHFefE
なんでそんなにオコなの?
遊園地 [sage] 2018/04/25(水) 10:43:41.21:aZgfWxV+
5chの伝統芸だからぁあああwwwwwwwwwwww

年間利用者0とかザラだしww

  公開したら分かるんじゃないww
デフォルトの名無しさん [sage] 2018/04/25(水) 10:47:32.52:00WI0MSP
それはないと思う
ベクターにサンプルプログラムの教科書に載ってそうなスクリプト置いてるけど
毎月15件くらいDLされてる
デフォルトの名無しさん [sage] 2018/04/25(水) 11:44:31.69:OMoW5wMU
最初からwebアプリ作ればいいじゃん
遊園地 [sage] 2018/04/25(水) 11:52:34.70:aZgfWxV+
俺も2年間で60ダウンロードぐらいされてる。

コメントは1件だけ来た。


タイトル
無能

本文
無能なんですね。
遊園地 [sage] 2018/04/25(水) 11:55:04.74:aZgfWxV+
python,exe化して、ふぁいるりねーむ公開してたな。
絶対パス + 拡張子[指定] [XXX]付けたい名前 連番りねーむ

それだけの機能
デフォルトの名無しさん [sage] 2018/04/25(水) 12:00:31.01:00WI0MSP

www
でも、コメントが付くだけでも正直かなり羨ましわ
もう何年も5個くらいおいたままになってるけど何のコメントもない
でも、俺自身が10年以上使ってるし、使い方があえてば凄く便利だし
絶対に使ってる人いる筈なんだけどなぁ・・・
デフォルトの名無しさん [] 2018/04/25(水) 12:44:42.62:SjKKaR2L
githubにうpしてたら勝手にforkされて勝手にバージョンアップされてた
デフォルトの名無しさん [sage] 2018/04/25(水) 12:50:09.33:00WI0MSP

その手も良いな
デフォルトの名無しさん [sage] 2018/04/25(水) 12:51:16.27:00WI0MSP
因みにどんなソフト
もし良ければ教えて
サンプルみたいなプログラムでも便利なら誰かアップしてくれるかな?
便利だから10年くらい使ってるけど、動作が微妙なんだよなぁー
デフォルトの名無しさん [sage] 2018/04/25(水) 13:47:37.24:sTzqaXBb
GAEで実行すると、datetimeを変換する際、
tzinfoになにを入れていても
time.mktime(t.timetuple())や
calendar.timegm(t.timetuple())
で、mktimeやtimegmを実行した時点で+9時間されてしまいます。
こういうものなのでしょうか?
デフォルトの名無しさん [sage] 2018/04/25(水) 15:21:07.84:sTzqaXBb
あ・・・勘違いしてました
ネットの変換ツールの方が+9時間してたようですorz
デフォルトの名無しさん [] 2018/04/25(水) 15:25:25.19:SjKKaR2L
GAEのTimeZoneって変だよな
遊園地 [age] 2018/04/25(水) 15:55:32.53:aZgfWxV+
,をリアルタイムで数えるには、どうすれば良いでしょうか?

現状では、
1秒毎にファイルを開いて、更新してます。
デフォルトの名無しさん [sage] 2018/04/25(水) 16:50:55.24:7/N1jaCm

その質問の仕方であなたが今なにをしていて、これから何をしたいと思っているのか解る人はいないと思う。
遊園地 [sage] 2018/04/25(水) 18:02:02.68:aZgfWxV+
テキストファイルの,カンマをカウントして居ます。
ttp://fast-uploader.com/file/7080202434072/
デフォルトの名無しさん [sage] 2018/04/25(水) 19:41:46.81:D5b6boQj

お前はteratailできけば良いだろ
デフォルトの名無しさん [sage] 2018/04/25(水) 20:11:28.16:/xWlXZY2

本体をwww鯖に置いて、配布するコードはそれをDLして呼び出すだけのものにする
配布コードに公開鍵置いて適当な認証コードを生成して鯖に送ってバリデーションする
配布コードは適当に難読化するか、バイナリにコンパイルしておく
プロテクションを強めにするなら毎回DL、そうでなければキャッシュOKにする
DLするファイル側にも日付やIPアドレスから鍵を生成して暗号化するとか、嫌がらせの方法はある
デフォルトの名無しさん [sage] 2018/04/25(水) 22:47:23.82:00WI0MSP
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])
デフォルトの名無しさん [sage] 2018/04/25(水) 22:54:55.91:0wQkhGBO
なんか問題文が雑だな。
もっと正確な仕様があるんじゃないの?
デフォルトの名無しさん [sage] 2018/04/25(水) 22:55:24.68:mf+z+VbY
文字列で比較してるからじゃないの
問題の要求知らねえけど
デフォルトの名無しさん [sage] 2018/04/25(水) 22:59:26.42:00WI0MSP

雑?ベストな書き方ってどんなの?


某人材派遣会社のテスト問題
10個ほどテストを通したらしいけど1つだけ出力が間違ってるらしい
境界線データなどは全てパスしてる
デフォルトの名無しさん [sage] 2018/04/25(水) 23:05:30.22:0wQkhGBO
ベストっていうか一言一句たがわず元の問題文書けよ。
もしかしたらテストっていうから漏らしたらいけないのかもしれないけど。
デフォルトの名無しさん [sage] 2018/04/25(水) 23:15:11.67:0wQkhGBO
それにしても人材派遣会社でパイソンって。
Javaとかじゃないのか?
それとも言語は自由選択なのか?
デフォルトの名無しさん [sage] 2018/04/25(水) 23:32:08.52:00WI0MSP

一切漏らしてはダメなんですまん


好きな言語でOKな所
デフォルトの名無しさん [sage] 2018/04/25(水) 23:41:42.22:0wQkhGBO
ん〜そうなんか。
じゃあsplitに失敗した時の挙動とかはなんか条件なかった?
デフォルトの名無しさん [sage] 2018/04/25(水) 23:50:36.60:00WI0MSP

入力値最終行の末尾に改行が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] ))
デフォルトの名無しさん [sage] 2018/04/25(水) 23:52:28.03:mf+z+VbY
仕様クイズやってんじゃねえんだよ
言えないなら他を当たれ
デフォルトの名無しさん [sage] 2018/04/25(水) 23:55:35.34:00WI0MSP
レベルは基礎(年収200万レベル)だから
得意な人が見ればスグに分かるかと思って・・・
デフォルトの名無しさん [sage] 2018/04/26(木) 00:04:33.65:A1A9qqDP

確かに、90点の回答から問題文(知っているが言えない)を妄想して
どこミスしたか教えてクレクレだからな。 なんかざんしんなクレクレだな
デフォルトの名無しさん [sage] 2018/04/26(木) 00:05:48.88:cVNoJ2TG
ほぼ同額ハネてるくせにずいぶん調子こいてんな人売り。
デフォルトの名無しさん [sage] 2018/04/26(木) 00:09:44.35:NMIp1ji6
正確な使用かNGだった入力データか、せめて一方はないとなぁ
デフォルトの名無しさん [sage] 2018/04/26(木) 00:20:56.36:zAODI6nx

スマン
入力データ(10種類テスト)は非公開
問題文はpaizaの規約でNG
デフォルトの名無しさん [sage] 2018/04/26(木) 00:23:21.97:NMIp1ji6
あんま思いつかないけどたとえば
str="+10 10"
でeqを出力しなきゃいけないとかかなぁ
デフォルトの名無しさん [sage] 2018/04/26(木) 07:29:42.61:82+EFsXj

おもろーい


そりゃいるんじゃね?
普通の人スクリプトかけないし
自分もやりたいことがあってググったら
Pythonのスクリプト見つけて
それがきっかけでPython始めた
デフォルトの名無しさん [sage] 2018/04/26(木) 07:39:06.10:L4MEI3Bo
知ってるかもだけど、strとかlistとかの組み込み関数の名前を変数に使わない方がいい
例として以下を挙げる

>>> str = "A"
としたあと、組込み関数str()を使うと
以下のようにエラーになる
>>> str(10)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object is not callable
デフォルトの名無しさん [sage] 2018/04/26(木) 13:18:56.47:1MtgAGXx
ttps://qiita.com/makaishi2/items/63b7986f6da93dc55edd

上記のサイトを見ながら勉強しています
その中のword2vecを使用して学習させた結果を表示させてる部分に(学習に乱数を使っているので、同じ結果にはなりません)と表記されている箇所があるのですが、乱数はどの部分を指しているのでしょうか?
入力した値に対して毎回結果が変わってしまうのは違和感があるのですが、これが正しい考え方なのでしょうか?
デフォルトの名無しさん [sage] 2018/04/26(木) 14:21:52.82:LZqqVlEY
共同ツール 1
ttps://seleck.cc/685

ttps://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
ttps://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
ttps://slack.com/intl/ja-jp
ttps://www.dropbox.com/ja/
ttps://bitbucket.org/
ttps://ja.atlassian.com/software/sourcetree
ttps://sketchapp.com/extensions/plugins/
ttp://photoshopvip.net/103903

ttps://goodpatch.com/blog/sketch-plugins/
デフォルトの名無しさん [] 2018/04/26(木) 16:21:20.54:y8gcXBFr

標準関数を変数名に使うな
コードを貼るなら、ideoneとかcodepad使え
文字列のまま比較するな
デフォルトの名無しさん [] 2018/04/26(木) 17:23:13.50:HAGSLGUl
pythonって遷移的なimportができてしまうのか。知らなかった。
これはちょっと嵌りポイントじゃないかなぁ?
デフォルトの名無しさん [sage] 2018/04/26(木) 17:33:22.83:0WGeE1H1
日本語でOK
デフォルトの名無しさん [sage] 2018/04/26(木) 17:44:22.78:3KE4uQzN

gensimのword2vec実装のなかで乱数を使っているということじゃないかな?
だからこそこに書いてあるコード中にはrandはない
デフォルトの名無しさん [sage] 2018/04/26(木) 18:02:11.11:B934JXdm

__init__.py だけだぞ
デフォルトの名無しさん [sage] 2018/04/26(木) 18:19:49.65:7TZiBj4A
pythonって誰が書いても同じになるように作られたはずなのになんでwith分とか作っちゃったの?
デフォルトの名無しさん [sage] 2018/04/26(木) 18:50:08.23:vM7mL5EC
足し蟹ー
デフォルトの名無しさん [sage] 2018/04/26(木) 19:08:52.46:3Mp4Ty/f

引数seedかな?
デフォルトの名無しさん [] 2018/04/26(木) 20:11:17.17:bpVzyqdZ
with文便利じゃん
途中でエラー出ようがハングしようが
必ずclose()されるし
デフォルトの名無しさん [] 2018/04/26(木) 20:12:25.88:bpVzyqdZ
あぁハングはまずいか・・・
デフォルトの名無しさん [sage] 2018/04/26(木) 20:23:38.37:7TZiBj4A
with分が許されるなら i++ も付けてほしいのよね
デフォルトの名無しさん [sage] 2018/04/26(木) 20:32:37.56:NMIp1ji6
Rubyにi++がないのと同様の理由でパイソンにもないんじゃないか?
適当だけど。
デフォルトの名無しさん [sage] 2018/04/26(木) 20:49:07.82:zmwnnnGF
why?
デフォルトの名無しさん [sage] 2018/04/26(木) 21:26:38.69:NMIp1ji6
俺もよく知らんが整数がイミュータブルでさらにオブジェクト指向が組み合わさると++が難しいらしい。
理屈は知らん。
デフォルトの名無しさん [sage] 2018/04/26(木) 21:54:40.18:vM7mL5EC
僕「それはちょっと…むずかしいです」
??「難しいかどうか聞いてるんじゃない!出来るんだな!?」
僕「はい…」
デフォルトの名無しさん [] 2018/04/26(木) 22:05:57.30:ufB3iyja
お願いします。
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_())
遊園地 [age] 2018/04/26(木) 22:14:31.13:zm91irPY
.show()
デフォルトの名無しさん [] 2018/04/26(木) 22:57:40.00:r/dul/Wf
遊園地召喚
デフォルトの名無しさん [] 2018/04/26(木) 23:18:26.87:zm91irPY
召喚される度に査問される罠
デフォルトの名無しさん [] 2018/04/26(木) 23:19:29.18:zm91irPY
QtGuiとか使った事ない。
デフォルトの名無しさん [sage] 2018/04/26(木) 23:35:00.83:sRtYULlw

なんか、pythonプログラムだけど、Qtのプログラムの質問な感じで
ここできくよりQtスレで尋ねたほうが良いような感じだな。
Qtはpythonで激しく使われているけど、スレレベルからしてこのスレ連中で
使っている奴は激しく少ないだろうからな。
Qtさっぱりな俺でも、上の1.jpgコード部分をコピペして2.jpgに変更では動かんと思う


俺はQtをインストールすらしていない
デフォルトの名無しさん [sage] 2018/04/26(木) 23:44:36.11:JIIZjO4Q

承知しました、コメントありがとうございました。
デフォルトの名無しさん [sage] 2018/04/26(木) 23:55:11.10:sRtYULlw

Qtさっぱりな俺がぱっとコード見て妄想で答えるが、
app = QtGui.QApplication(sys.argv) はQtGui初期化だろうからで2回は不要(1回でOK)。
sys.exit(app.exec_()) は終了ってことだから、time.sleep(1.0)の前の
sys.exit(app.exec_())でプログラム終了
な気がする。
デフォルトの名無しさん [] 2018/04/27(金) 00:13:35.48:sy5ESrYC
すいません、前にchainerpix2pixの件で質問した者なんですが
あれからようやくCPUでは動いたものの、GPUではアウトオブメモリーになってしまいます
chainerのmnistのサンプルだとgpuは動いたので
使う画像のサイズを小さくすればいいのではと思って
get_example(self, i, crop_width=256):をcrop_width=1にしてみたのですが
同じくアウトオブメモリーになってしまいます・・・
どうしたらgpuで動くようになるのでしょうか?
あと、cudnnは使えないのでChainer_cudnnは0にしています
デフォルトの名無しさん [sage] 2018/04/27(金) 00:30:03.43:kiq1uvQz
お前はアウトオブガンチューだから。
デフォルトの名無しさん [sage] 2018/04/27(金) 11:03:08.04:24cBGVvy
このアプリは、GPU を使いますとか、

何か、そういう設定でもあるのかも
デフォルトの名無しさん [sage] 2018/04/27(金) 14:48:29.17:cRxeHPlk
matplotlibの文字化けを直そうとしてるんだけどどこにもキャッシュがない…
web見てると3つキャッシュがあるはずなのに1つしかない(fontList.Json)
こういう場合どうすればいいの…?
デフォルトの名無しさん [] 2018/04/27(金) 16:45:19.19:UfJ+DbX6
まずはパンツを下ろします。
デフォルトの名無しさん [sage] 2018/04/27(金) 16:46:42.04:l9wD2n6W
次にブラを上げます。
デフォルトの名無しさん [] 2018/04/27(金) 17:53:36.17:ash3pEtl

まるち
デフォルトの名無しさん [] 2018/04/27(金) 17:54:48.84:ash3pEtl

もっとしっかり探せ
遊園地 [age] 2018/04/27(金) 19:07:35.36:00GHpQg1

有るよ。
ドロールとか組み込みなら、CPUで動かすのが基本
従ってインストールした時点でGPUが無効になってるライブラリも多い。
デフォルトの名無しさん [] 2018/04/27(金) 20:19:58.99:NfYPUu/1
ここで初めてティッシュを用意します。
デフォルトの名無しさん [sage] 2018/04/27(金) 22:00:53.85:tY4aKNce

よく分からん時はOSのクリーンインストールから初めてmatplotlibをインストール
デフォルトの名無しさん [sage] 2018/04/27(金) 23:24:53.90:7d5j5plq
OSクリーンインストールとかww
なんというオニ畜アドバイスww
デフォルトの名無しさん [sage] 2018/04/27(金) 23:53:02.63:0qxmcM9A
もっといいPCを買えとか言われなくてよかった
デフォルトの名無しさん [] 2018/04/28(土) 01:03:41.04:pRdE14CX
ttps://forum.omz-software.com/topic/2648/download-plain-text-html-document-and-save-content-as-text/3
これの
print=1って何?意味が分からない
デフォルトの名無しさん [sage] 2018/04/28(土) 01:25:48.28:sVh1KXTe
gamefaqていうサイトのurlパラメータで、print=1ってすると、印刷向けのデータを返してくれるんではないかな。
pythonのprintとは無関係
デフォルトの名無しさん [sage] 2018/04/28(土) 01:29:45.66:lzDlBKGG
なんでそんな質問しているのかわからない
print=0だと駄目なんだろう
デフォルトの名無しさん [sage] 2018/04/28(土) 01:40:25.00:lzDlBKGG

Appending ?print=1 as a parameter, ie, ttp://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のことを尋ねているんではなく、英語が分からんから意味が分からないと言うことだろ。
デフォルトの名無しさん [sage] 2018/04/28(土) 06:45:20.98:x771LapU
BMPファイルのヘッダ情報をいじりたい場合、
C言語だとバイナリーモードでファイルを開いて
ヘッダと同じ構造の構造体に格納→いじるっとしていたのですが
Pythonの場合はどうするのがスタンダードですか?
デフォルトの名無しさん [sage] 2018/04/28(土) 08:59:37.34:Mqg+X9l/

bytearrayオブジェクトを作って添え字でアクセスするか、
ctypesモジュールにあるCの構造体互換の機能を使うかだけど
それならCでいいじゃんって話になる
そもそもスクリプト言語でバイナリデータを操作すること自体、あんまりメジャーじゃないと思う
デフォルトの名無しさん [sage] 2018/04/28(土) 08:59:39.51:6G75OsfQ
PILを使うのはダメなの?
デフォルトの名無しさん [sage] 2018/04/28(土) 10:47:54.22:8aPDsti0
中出ししてもオッケー☆ミ
デフォルトの名無しさん [sage] 2018/04/28(土) 19:25:00.09:nZGgJ1mK

スタンダードかどうかは知らんが
ファイルヘッダのようにバイナリで色々なサイズのデータがあり、フォーマットが決まっている場合は
structモジュールのpack() とunpack() が使える
ファイルをバイナリモードで開くことと、結果がタプルで返ってくること(値を変えるならlist()を通す)、
書式指定文字列がperlよりタイトで厳密に一致しないといけないことに注意
デフォルトの名無しさん [] 2018/04/30(月) 02:59:51.66:0BaYNXC/

725 よりは ctypes の方が結果的に楽
どうせやってることは同じ
デフォルトの名無しさん [sage] 2018/05/01(火) 13:16:05.51:nK8NGTs9
csvの書き込みで特定の列にのみ値を入れるってどうすればいいでしょうか?
例えば3列目にCと入れる場合、
writerow(['','','C'])
とはできると思うんですが、indexの[2]とかで挿入したいです。
デフォルトの名無しさん [sage] 2018/05/01(火) 13:23:24.66:nK8NGTs9

['']*3で空配列作ってinsertでindex指定すればいけそうでした。
無視してください
デフォルトの名無しさん [] 2018/05/01(火) 17:47:40.92:ZCA4YmfM
pythonista3で
カメラロールに保存した画像のパスを取得したいんですが
どうすればできますか?
デフォルトの名無しさん [] 2018/05/01(火) 21:26:52.34:CgwFbzLc
遊園地の出番
遊園地 [sage] 2018/05/01(火) 21:36:37.58:mOb9XiF3
前提として、pythonista3を始めて知った。

iPad持って無い& Pythonista3-omz:softwareは有料アプリ 1200円

いろいろ見たけど、appex.get_file_path()だと不可なので、

 appex.get_attachments()


参考サイト
ttps://qiita.com/lm0x/items/28d5f7ef433a9654474c


 別途、環境による共有ライブラリの不具合が有るかは不明
遊園地 [sage] 2018/05/01(火) 21:39:00.39:mOb9XiF3
最悪、自分で保存場所を決めて[デフォルト位置を特定も可能]

 自ら、取得しに行く手も有る。
デフォルトの名無しさん [] 2018/05/01(火) 21:50:09.23:ZCA4YmfM

pythonistaで画像をカメラロールに保存してそのパスを取得したい
遊園地 [sage] 2018/05/01(火) 22:47:44.63:mOb9XiF3

前提として、StaShの導入[pip等が使える?] 不要かも知れない?

通常のカメラロールにあるファイルは、
 Pythonista3で直接扱えないのでDropboxを利用するらしい。
# そんな事ないかも?


import os
os.getcwd() #パス取得


何の画像か分からないよ。
WEB上の画像なのか? カメラ起動からの取得した画像なのか?

それによって回答も変わる。 取り敢えず、

web上のURLからの取得[ダウンロード]
ttp://alba.blog.jp/archives/74055809.html

写真のアクセスなど
ttp://omz-software.com/pythonista/docs/ios/photos.html
遊園地 [sage] 2018/05/01(火) 22:56:54.46:mOb9XiF3
写真へのアクセス
ttp://omz-software.com/editorial/docs/ios/photos.html

んーー 力不足だ。すまん。

テラテイルなら答えてくれるかも知れない。そっちで聞いてくれ。


 ただ、画像はデフォルトでカメラロールに送られると書かれてるから、

カメラロールのURLさえ分かれば、直接叩いたりできないのかなー? とかは思う。
デフォルトの名無しさん [sage] 2018/05/01(火) 23:13:50.80:Ta/u7tID
え、もしかして遊園地って意外と実力あるの?
遊園地 [sage] 2018/05/01(火) 23:49:23.22:mOb9XiF3

どぴゅうーーー!!?ww どうしてそう成ったw
まだまだ。5ch初心者だなww
デフォルトの名無しさん [] 2018/05/01(火) 23:59:49.36:ZCA4YmfM
stashは導入してます

もしかしてAsset.local_idってのがパスのかわり?
デフォルトの名無しさん [sage] 2018/05/02(水) 00:12:33.26:AOzOSF/o
普通にPCでやった方が無駄なこと考えなくていいから楽だと思う
デフォルトの名無しさん [] 2018/05/02(水) 00:38:48.40:lacLZL+z
やだ
何でもiPhoneでやりたい
ファンや電源ユニットの音を聞きたくない
デフォルトの名無しさん [] 2018/05/02(水) 00:38:54.21:W+so90CJ
遊園地メンバーに出来ないことはないだろう。
デフォルトの名無しさん [sage] 2018/05/02(水) 00:58:24.50:Th+lVB8S
Python上級者の遊園地メンバーならなんとかしてくれるよね
デフォルトの名無しさん [sage] 2018/05/02(水) 06:54:05.31:RMStXXKk
他のメンバーから謝罪されそう
遊園地 [sage] 2018/05/02(水) 07:38:44.05:GpduyO95

カメラロール 保存場所はPCで言うと
/home/use/ピクチャ

Androidだとギャラリーの所

 命令文で取るんじゃなくて、直接して画像を取りに行くスタイル

ファイルマネージャとかでソコのURLが分かれば、可能かと
デフォルトの名無しさん [] 2018/05/02(水) 08:19:06.48:lacLZL+z
appex.get_attachments()で取得する
アプリの写真が渡す時に使う場所
/var/mobile/Media/PhotoData/OutgoingTemp/
たぶんパス指定して直接は見れないようになってる
API通さないと無理なんじゃないかな
遊園地 [sage] 2018/05/02(水) 09:30:47.44:GpduyO95
皆が調べたけど、限界だ!

 って所からがスタートかな?

取り敢えず。 下記を実行して見た結果は どうなる?

import photos
all_assets = photos.get_assets()
last_asset = all_assets[-1]
img = last_asset.get_image()
img.show()
遊園地 [sage] 2018/05/02(水) 09:38:13.34:GpduyO95
見た?
ttps://halspg.wordpress.com/2017/11/20/pythonista_photos/
遊園地 [sage] 2018/05/02(水) 09:48:38.35:GpduyO95
手段として、延期かなー。

テラテイル と スタッフオーバーフロー
で質問(本人が)

その間に別の事に取り込んだ方が良いかもなー

進めて行くうちに、類似箇所や該当操作に辿り着くかも知れない。
デフォルトの名無しさん [] 2018/05/02(水) 14:07:48.31:lacLZL+z
すでに出来たよ
assetからObjCInstance使って出来た
デフォルトの名無しさん [] 2018/05/02(水) 14:20:13.88:lacLZL+z
パスで何かしようとするとPermissionErrorがでるよ
デフォルトの名無しさん [] 2018/05/02(水) 14:34:52.65:lacLZL+z
一応
print(str(ObjCInstance(picasset).pathForOriginalFile()))
遊園地 [sage] 2018/05/02(水) 15:24:12.28:GpduyO95
おめー
デフォルトの名無しさん [] 2018/05/02(水) 18:20:09.23:iLuEzONp
質問1
 C#とかC系しか知らんものがパイソンを素早く概括的に理解してマスターするには
どのような手順を取るのがベストかを述べよ。
デフォルトの名無しさん [sage] 2018/05/02(水) 18:24:11.36:fFtFAs1e
帰れチンカス
デフォルトの名無しさん [] 2018/05/02(水) 18:27:01.60:iLuEzONp
質問2
 「C++からパイソンを呼び出す」などC++とパイソンを組み合わせて使うケースについて
散見するが、C#とパイソンの組み合わせがないのはなぜだろうか? その理由を述べよ。

質問3
 他の言語特にC#にくらべてパイソンの優位性もしくは劣性について述べよ
デフォルトの名無しさん [sage] 2018/05/02(水) 19:06:36.46:hCUFBC/P
Pythonをパイソンと書くようなキチガイははよ死ね
デフォルトの名無しさん [] 2018/05/02(水) 19:09:38.38:OevC1MDQ
バカって外来語をネイティブな表記で書くよねw読めないからw
デフォルトの名無しさん [] 2018/05/02(水) 19:22:17.68:W+so90CJ
みたいなガキは、遊園地メンバーのちんぽナメナメしたら、答えてやるわ。
デフォルトの名無しさん [] 2018/05/02(水) 20:05:02.60:iLuEzONp
パーがトンほどいるからパートン
デフォルトの名無しさん [] 2018/05/02(水) 20:09:22.51:iLuEzONp
質問1の模範解答
 このような粒度の荒い質問にここで回答を期待するのは無理。
遊園地 [sage] 2018/05/02(水) 20:12:29.50:GpduyO95
遊園地メンバーではなく。
遊園地ランドの一員な。

問1
公式Documentを読む
(その判断が下せなかった君には難しい)

問2
pythonとc#の組み合わせは有ります。
日本語記事が少ないのは確かです。

問3
全ての言語に置いて、優位性と劣性は
状況により、変わります。

大事なのは目的との適切な判断です。


なお、遊園地ランドの5ch民は標準スキルにフレンドリーファイアーと成ってますww
遊園地 [sage] 2018/05/02(水) 20:15:54.36:GpduyO95
初代のくだすれ だと、
「pythonのパイは おっぱいですか?!」

だった様な気がする。
遊園地 [sage] 2018/05/02(水) 20:24:18.02:GpduyO95
雪風だった時に叩かれた頃と
そっくりで、大爆笑だなw

低い所から、始めたら
上がるしかないから、良いと思う。
デフォルトの名無しさん [] 2018/05/02(水) 20:31:09.60:iLuEzONp
>大事なのは目的との適切な判断です。
そもそもどのような目的でpythonは作られたのか? 優秀な言語が五万とあるのに
わざわざ作るにはそれなりなりの理由があるはずだ。その理由について手短に簡潔に述べなさい。
その程度の説明ができないなら、pythonを使う意味がない。
仮に説明できるだけの能力があるにせよ、その程度のことをめんどくさがって説明できないと
したらプログラミングのようにめんどくさい仕事には向かないと思える。
デフォルトの名無しさん [sage] 2018/05/02(水) 20:35:39.56:MvV5oHQH
無能はPython使わなくていいよ
デフォルトの名無しさん [sage] 2018/05/02(水) 20:49:31.16:+C3apNC8
確かにPythonとか何がいいのかまだ理解してないわ。
人工知能界隈では流行ってるみたいだけど。
デフォルトの名無しさん [] 2018/05/02(水) 21:06:22.47:lacLZL+z
最近使い始めた
いまいち理解してない
それでもある程度便利に使える
誰も使ってないと開発止まるし流行りにはのるスタイルです
遊園地 [sage] 2018/05/02(水) 21:08:14.07:GpduyO95

グイド・ヴァン・ロッサムがクリスマス休暇中に
分散OS「Amoeba」向けにスクリプト言語を作りたかった から

以上
◆QZaw55cn4c [sage] 2018/05/02(水) 21:10:46.50:R3g8E+PO

>分散OS「Amoeba」
MINIX のタネンバウムの amoeba のスクリプト言語?妙な縁があるんだね
遊園地 [sage] 2018/05/02(水) 21:15:47.99:GpduyO95
Basicが代表だと思うが、当時の開発者は自分の作ったモノの価値は殆ど知らなかったよ。
遊園地 [sage] 2018/05/02(水) 21:25:25.12:GpduyO95
駄目だ。
持ってる書籍だと、第4世代の事は
殆ど記述されてない。
遊園地 [sage] 2018/05/02(水) 21:48:30.08:GpduyO95
休暇中に軽く創られただけなのにw
明確な意志と理由が有ると思い込んでたの?


まあw低い所から始めたら
上がるしか無いからなww良いんじゃねw
遊園地 [sage] 2018/05/02(水) 22:29:07.24:GpduyO95
ボクが考えた、すぺちゃるな事は
ネタ切れかな?
遊園地 [sage] 2018/05/02(水) 22:41:28.82:GpduyO95
せっかくの新人を逃してしまったかw
pythonで何が、したかったのかき聴きそびれた
デフォルトの名無しさん [sage] 2018/05/02(水) 23:18:15.88:g5pj+rNO
numpyの高階テンソルをいじろうとしたら、演算子1個でサクッと出来るPythonじゃないとまず無理
C++やC#で3次元以上の配列作ってディープラーニングの設計なんかしたくないよ
デフォルトの名無しさん [sage] 2018/05/02(水) 23:24:22.74:FhWmuzwV
それはライブラリの有無の問題だろ
演算子オーバーロードはC++でもC#でもできる
◆QZaw55cn4c [sage] 2018/05/02(水) 23:27:05.75:R3g8E+PO

任意の文字または文字列を演算子として定義することは C++ ではできないからなあ…
デフォルトの名無しさん [sage] 2018/05/02(水) 23:29:25.56:vNfS6ImN
なんだc++も大したことないね
デフォルトの名無しさん [sage] 2018/05/02(水) 23:32:00.53:+C3apNC8
javaに比べればマシw
デフォルトの名無しさん [sage] 2018/05/02(水) 23:32:27.71:FhWmuzwV

そんなもんPythonでも無理
デフォルトの名無しさん [sage] 2018/05/03(木) 00:08:27.41:uGBeKqoZ
pythonってCで作られてると聞いたけど、
pythonでCを作る事ってできないの?
デフォルトの名無しさん [sage] 2018/05/03(木) 00:09:40.12:q8kum/8T
コンパイラは性能求められるからな
デフォルトの名無しさん [sage] 2018/05/03(木) 00:43:11.48:q8kum/8T

まあ遊園地先生が答えてくれるだろう
遊園地 [sage] 2018/05/03(木) 01:15:04.63:Jyt9WmzK
分かりません。


C言語のアプリケーションとしてpythonを作ったのかも?です。

 本人に聞いて見たら、どうだろうか?

ツイッターかフェイスブックで探したら?
デフォルトの名無しさん [] 2018/05/03(木) 09:41:39.44:QuUFIGoc

まるで福田前財務事務次官だ。
デフォルトの名無しさん [] 2018/05/03(木) 09:44:16.37:QuUFIGoc

五万と言語はないだろう。808くらいだろう。
デフォルトの名無しさん [] 2018/05/03(木) 09:46:17.46:QuUFIGoc

あんたみたいにマシン語でさくさく書ける人にとっては?
デフォルトの名無しさん [sage] 2018/05/03(木) 13:04:25.86:q8kum/8T

マジレスすると「チューリング完全」でググれ
デフォルトの名無しさん [sage] 2018/05/03(木) 16:18:50.24:uGBeKqoZ

それマジレス?

ググったけど、
ttps://ja.wikipedia.org/wiki/チューリング完全
>コンピュータ言語のうち、少なくともチューリング完全でなければプログラミング言語とは呼ばれない。

つまり、pythonはプログラミング言語ではないってこと???
デフォルトの名無しさん [sage] 2018/05/03(木) 17:39:44.38:8x5o8R0g
[1, 2, 3, 4, 5]みたいな整数のリストを
"1 2 3 4 5"という文字列に変換したいんですが簡単な方法ありますか
デフォルトの名無しさん [sage] 2018/05/03(木) 17:48:47.71:M52LYEAa

簡単な方法だな?
ブラウザを開く→F12押す→以下を張り付けenterを押す
[1, 2, 3, 4, 5].join` `
デフォルトの名無しさん [sage] 2018/05/03(木) 19:33:56.79:uGBeKqoZ

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) )
デフォルトの名無しさん [sage] 2018/05/03(木) 21:07:16.43:EsICZB1E
俺もゴルウィーから勉強し始めた初心者だけどそれでいけると思う
デフォルトの名無しさん [] 2018/05/03(木) 23:35:17.25:aADwc621
ゴルウィーて格好ええやんw
デフォルトの名無しさん [sage] 2018/05/04(金) 00:01:40.30:l7T91Gwe
Python書いてるとバカになりそう
やっぱC++かな…w
デフォルトの名無しさん [sage] 2018/05/04(金) 00:08:41.17:plo/RuVs
さすが知性溢れるレスだねww
デフォルトの名無しさん [sage] 2018/05/04(金) 01:28:14.50:Qby9wARQ

C++でやったらどうなるんだ?
遊園地 [sage] 2018/05/04(金) 01:37:35.84:W3Q83w8C

取り敢えずコレで、後は自分で拡張してくれ。


□がインデント

# 1から5を作成 int
l=[i for i in range(1,6)]
# 空の文字列 宣言
r=''

# 表示だけ l配列
print(*l)

# ループアクセス
for i in l:
# 文字列の結合
□r+=str(i)+' '

# 望む出力結果
print(r)
デフォルトの名無しさん [sage] 2018/05/04(金) 01:54:51.37:l7T91Gwe

どうでも良いけどlist型の変数名をlistにすると、以降list型のコンストラクタ呼べなくなるから不適切だな
デフォルトの名無しさん [] 2018/05/04(金) 12:31:48.88:92ZHjtyM
iPhoneのpythonistaでTumblr APIの利用登録しないでtumblrに画像とコメントをアップロードしたい
どうやったら出来ますか?

workflowはtumblrにアップロード出来るのですが
HTMLダウンロードすると落ちるバグがあったりで使えません
デフォルトの名無しさん [] 2018/05/04(金) 12:36:23.98:92ZHjtyM
もっとworkflowの不満を言うと
文字検索で対象が少し大きいと検索出来ないウンコです
デフォルトの名無しさん [] 2018/05/04(金) 14:08:21.81:pxf8i2Ti

ヘッダに認証情報書けばうp出来たはず
デフォルトの名無しさん [sage] 2018/05/04(金) 14:29:13.94:l7T91Gwe

大抵のwebサービスはアクセストークン無しでは外部からアクセス出来ないだろ
利用登録しろってことだ
デフォルトの名無しさん [] 2018/05/04(金) 15:21:49.21:lWNtUYcr
Tumblrは登録しなくてもうp出来るのがいいのに
デフォルトの名無しさん [] 2018/05/04(金) 16:58:15.14:92ZHjtyM
まずpythonでtumblrにログインするにはどうしたらいいのかも分からない
誰か教えて
デフォルトの名無しさん [sage] 2018/05/04(金) 17:14:58.41:BzCDJ0Mp
Pythonを使ってヤフオクで入札したいがログインが出来ない
どうすればいい?
API公開されてるけど入札は対象外なんだよなぁー
デフォルトの名無しさん [sage] 2018/05/04(金) 17:41:15.14:QSaueu9Z
ブラウザの挙動を調べて真似する
それ以外に何かあるの?
デフォルトの名無しさん [sage] 2018/05/04(金) 17:44:41.28:DIAOZzIz
効率悪
それを車輪の再発明と余分だよ
大手サイトだから同じ事やってるスクリプト探せば良いんじゃね?
デフォルトの名無しさん [sage] 2018/05/04(金) 19:13:26.68:BzCDJ0Mp
確かに車輪の再発明はあれだね
ただ、探せと言う人多いけど、どこにあるんだろ?
808に限らないけどみんなはそんな時、どうやって探してる?
ググったけど見つからない><
デフォルトの名無しさん [] 2018/05/04(金) 20:09:09.82:3WMufHHm

ググればいくらでも出てくるが
デフォルトの名無しさん [sage] 2018/05/04(金) 21:25:20.26:xupEw6nX
日本語だと有用な情報が見つけられないこともあるね
C++やC#は日本語だけでも事足りるけど、Pythonを使いだしてから英語サイトを読む機会が増えたと思う
デフォルトの名無しさん [] 2018/05/04(金) 21:50:09.50:yv6Fgdi6
突然誰も教えてくれなくなるのね
デフォルトの名無しさん [] 2018/05/04(金) 21:55:41.82:yv6Fgdi6
今日は詳しい人いないのかな?
デフォルトの名無しさん [sage] 2018/05/04(金) 22:38:04.81:elviK+/K

いやログインはAPIあるんだから
まずは使えよ
デフォルトの名無しさん [] 2018/05/04(金) 23:20:08.28:LjKjJrNY
遊園地カモン
デフォルトの名無しさん [sage] 2018/05/04(金) 23:22:10.71:Ry3XO9FI
普通は、Ruby で、Mechanize, Selenium WebDriver で、ブラウザを自動操作する

iMacros も良いかも

漏れは、図書館にログインしたり、Showroom のアバターを消したり、色々自動化してる
デフォルトの名無しさん [sage] 2018/05/04(金) 23:54:22.51:YRex42LX

いまのrubyは低脳がやるものでないからな。非低脳なら自分でそん事は出来る。
一方、いまのPythonユーザーには超低脳がいっぱいで
Pythonユーザーにはそんなことを自分で調べて実現出来ない奴が超多い。
だからここ超初心者スレがあるんだけど、でも、回答する人も低脳になるから
超低レベル質問でないと駄目なorzスレ。
デフォルトの名無しさん [sage] 2018/05/05(土) 02:00:17.39:/2WiSCQi
俺も遊園地レベルまで出来るようになりてえなぁ
本一冊読み込んでみてるがアウトプットが全くできてないや
デフォルトの名無しさん [sage] 2018/05/05(土) 02:16:21.24:55mLO8lT
見てない間に・・・
マジで適当なことばっかり言うなよ
TumblrのpostメソッドはOAuthで認証しなきゃダメだし、登録無しで画像だろうがコメントだろうがポストできない
アプリ登録してOAuthキー発行してpostメソッドのURI構造調べてHTTPリクエストpostして終了だよ
こんなとこで聞くより調べた方が早いだろ
デフォルトの名無しさん [] 2018/05/05(土) 02:22:38.97:t2xghRBN
workflowはどうやってpostしてるんだ?
デフォルトの名無しさん [] 2018/05/05(土) 03:18:18.84:t2xghRBN
難しいとくぐれで終わるけど
検索してもAPI関連ばかりで分からないなあ
デフォルトの名無しさん [sage] 2018/05/05(土) 04:59:33.12:9WwmGhCc
ネットでスナフキンという方が公開していたchannelbreakoutbotというもの(自動売買Botのソースコード)を動かしてみました
すると最初のimportのとこのtornado.genとかがないよー!ってエラーが出ました

これって全部とりあえずpip tornado.genとかでインストールできるのでしょうか?

あとバックテストでは出てなくて、実際注文だして見ようとするとエラーにぶつかったのですが、バックテストでは必要ない関数なんですか?→tornado.gen
デフォルトの名無しさん [] 2018/05/05(土) 05:43:17.44:t2xghRBN
方針変更で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にまかせたらいいか
役に立たないと思っていたファイルパスの取得が役立ったよ
デフォルトの名無しさん [sage] 2018/05/05(土) 08:55:18.86:Dytpdbqo

pip install tornado
デフォルトの名無しさん [] 2018/05/05(土) 14:10:41.36:2XyTqGXx
遊園地は南の島でバカンス中
デフォルトの名無しさん [sage] 2018/05/05(土) 14:52:59.74:clN8FwVi
それなりの観光地ならネットくらい使えるだろ
デフォルトの名無しさん [sage] 2018/05/05(土) 17:12:41.13:snVgileo
おかしい・・・
ぐぐると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で何か入れないとダメなんですか????
デフォルトの名無しさん [sage] 2018/05/05(土) 17:29:19.14:L1Bh6jaq

piclke じゃなくてpickleだよ
デフォルトの名無しさん [] 2018/05/05(土) 17:29:38.33:JV+fv9fZ
テストコードをpickle.pyという名前で保存してないか?
デフォルトの名無しさん [] 2018/05/05(土) 19:28:14.95:qWioDQTf
その程度の英語が読めないとさすがにキツイなぁw
デフォルトの名無しさん [sage] 2018/05/05(土) 22:21:25.57:9WwmGhCc
deque out of rangeってエラー出たんすけど、dequeの概念がググっても分からないんすけど
デフォルトの名無しさん [sage] 2018/05/05(土) 22:55:01.87:mh2HOjNZ
嘘つくな
ググったら分かる
プログラマーのくせに英語結果ハブいてんじゃねーぞ
デフォルトの名無しさん [sage] 2018/05/05(土) 23:50:17.41:G3Y8fJfc
dequeはぐいーんってかんじ
デフォルトの名無しさん [sage] 2018/05/05(土) 23:55:20.11:mh2HOjNZ
日本語でも出るじゃねーか
ttp://wa3.i-3-i.info/word14722.html
自分でまともに調べもしないで便利に使ってんじゃねぇ
デフォルトの名無しさん [sage] 2018/05/06(日) 01:24:24.37:DjYgqdRZ
ツンデレ過ぎて惚れそう
デフォルトの名無しさん [sage] 2018/05/06(日) 01:58:56.62:QoUz7B42

が言っているのはdeque(double-ended queue)のことで
お前がどやがをで示したqueueのdequeueのことではないだろ
なんか超初心者スレらしいほのぼのしたコミュだよな
デフォルトの名無しさん [sage] 2018/05/06(日) 18:15:10.66:+TLL+PtE
with open('aa.txt','r') as f:
 d = f.read()
d[0] = 'A'  ←TypeError: 'str' object does not support item assignment

テキストファイルから読み込んだ文字列の一部だけ書き換えたいんだけど・・・どうしたよいの?
デフォルトの名無しさん [sage] 2018/05/06(日) 18:39:36.10:hMxfhnzD

python 文字列 書き換え
辺りでググれ
ttp://minus9d.hatenablog.com/entry/20130528/1369745960
デフォルトの名無しさん [sage] 2018/05/06(日) 19:08:56.21:EQ0QpkW3
入門書読みながら書いたりしてるけど全然進まない…
連休中に1冊終わらせたかったのに…
デフォルトの名無しさん [sage] 2018/05/06(日) 19:25:00.26:uPY9E+2K
入門書っつっても2〜300ページはあるんだろ?
そりゃそんな早く終わんねぇよ
デフォルトの名無しさん [] 2018/05/06(日) 20:30:43.62:0qnrl+oj

ほんそれ
デフォルトの名無しさん [sage] 2018/05/06(日) 20:35:27.96:rNPvQ0s2

俺も勉強しながら入門書を書いているところだ。頑張ろう、お互いに。
デフォルトの名無しさん [sage] 2018/05/06(日) 20:41:27.99:CpJPf7oU
初心者向けって聞いたから期待してたのにお前らがなにいってるのかすらわからんわ
デフォルトの名無しさん [] 2018/05/06(日) 21:56:06.57:dQpq8g2J
基本本人しか分かってないから気にすんなw
デフォルトの名無しさん [sage] 2018/05/06(日) 22:15:18.65:I9BdKpFq
初心者といっても、
言語についての初心者と、プログラミング自体の初心者では、
自ずと理解できるものが違うからなぁ。
デフォルトの名無しさん [sage] 2018/05/06(日) 23:01:53.97:LrvTqzkb

文字列型(str, bytes)は、変更不可能(immutable)

一方、文字列型も属する、シーケンスは変更可能(mutable)
デフォルトの名無しさん [] 2018/05/06(日) 23:03:40.41:aIgnZyXq
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)
デフォルトの名無しさん [] 2018/05/06(日) 23:13:25.70:aIgnZyXq
>です。ところどころ間違っていたので、申し訳ないですが再投稿です。

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です
デフォルトの名無しさん [sage] 2018/05/06(日) 23:29:17.26:FM60XSV8
dict_keys は、iterator object ではなくview objectなので、
iterでイテレータを取得して、
kks = iter(ks)
print(next(kks))
とすれば、所望の結果が得られると思います。
Python3の当初から、例示されたコードが動かなかったのか、Python3.xのどこかの時点で動かなくなったのかは、自分はあまり詳しくないので分からない。
デフォルトの名無しさん [] 2018/05/07(月) 18:53:41.29:tk6smyAu
(´・ω・`)最初は参考書読んで勉強しようとおもいます
それで実際に練習でコードを書くのはなにがおすすめですか?
なんかパイザ?とかいうブラウザでできるのかあるみたいだけどああいうのは無料でつかえるの?
それとも統合開発環境とかいうソフトをかわないといけないの?
くわしいひとよろしくお願いします。
デフォルトの名無しさん [sage] 2018/05/07(月) 18:58:19.84:vcCBTAP6

まあ、世評の高い「みんなのpython」でも読んでみんシャイ
デフォルトの名無しさん [] 2018/05/07(月) 19:16:59.68:HDpHdk03
舐め腐ったゆとり乙
デフォルトの名無しさん [sage] 2018/05/07(月) 21:18:56.60:p9C83SuN

>コードを書く
Sakuraエディタがいいぉ
無料だし
自動できれいにインデントしてくれるし
デフォルトの名無しさん [] 2018/05/07(月) 21:34:23.94:XwJVL+CV
Pythonの基礎はある程度学んだつもりだけど、AI作るのにライブラリはどれがいい?
最初は画像とか文字とかの分類とか、最終的には音声聞き取りでアシスタントAIを作りたいなと

あと、AIとかってグループ作って皆で分担して作ったほうがいいの?
デフォルトの名無しさん [sage] 2018/05/07(月) 21:56:38.10:Z9lWSZxl
マジレスするとGoogleHomeを買ってきた方が速い
デフォルトの名無しさん [] 2018/05/07(月) 22:01:31.28:XwJVL+CV

正論過ぎてぐぅの音も出ないわ
デフォルトの名無しさん [sage] 2018/05/08(火) 00:39:54.00:l1fYAek+

このスレに来るようなレベルの奴が俺趣味で作成した激ヘタレものより、
すごいプロが作ったのを使ったほうがずっと実用的で良いからな。
デフォルトの名無しさん [sage] 2018/05/08(火) 01:34:32.79:bJmig+hX

AIを作るってなんだ?
AIなどという言葉を使ってるくらいなので知識も殆ど無いんだと思う、なのでGoogleとかの音声認識APIとか画像認識APIを使うのを勧める
1から勉強して,trainプログラム書いて,学習させて,モデルの評価して,出来上がったモデル使ってシステムやアプリを作って・・・って相当大変だぞ?
まぁ、ありきたりなAPI使ったところで、劣化Siriくらいしか作れないだろうが・・・
ttps://i.imgur.com/PzJbcpU.jpg
デフォルトの名無しさん [sage] 2018/05/08(火) 01:38:55.50:BHPMRb7G
raspberrypiで音声入り動画を撮ろうと検索したところ、以下のターミナルコマンドがありました。コマンド自体はターミナルで動作確認済みです。
ttps://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(|)
が出て、\は削除しても影響ありませんでしたが、|を削除するとコマンドが機能しなくなります。
うまく行く方法がありましたらご教示ください。
デフォルトの名無しさん [] 2018/05/08(火) 01:48:38.00:tXP19YNA
そりゃパイプなんだから実行できるわけない
subprocess パイプでググれ
デフォルトの名無しさん [] 2018/05/08(火) 01:52:12.21:aYgx+AtW
質問ですが
学習済みモデルを読み込んで256×256ピクセルの画像を変換してみたところ
chainer、cpuで10〜20秒掛かりました
実際こんなに時間かかるものなのでしょうか?
tensorflow,caffeなどなどの方でも画像を実際変換してみた時の
経過時間を教えてもらえないでしょうか?

学習時間が何時間とかそういうのは検索で見かけるのですが
モデルから変換した場合の時間は検索してもなかなか見かけません
デフォルトの名無しさん [] 2018/05/08(火) 02:45:47.83:aYgx+AtW
もう一つ質問ですが
機械学習とかAIとか質問とか交流するサイトあるんでしょうか?
独学しんどいです。。。
デフォルトの名無しさん [sage] 2018/05/08(火) 03:56:49.52:ws+EcsEk
`date`
#=> "2018年 5月 8日 火曜日 03:43:25 DST\n"
`date | cut -c -4`
#=> "2018\n"

Ruby なら、`Linux コマンド` で実行できるけど。
cut で、先頭4文字を切り出す

他にも、pipeline で、
指定したコマンドのリストを、パイプで繋いで順番に実行できる

Python でも、同じような機能があるんじゃないの?
デフォルトの名無しさん [sage] 2018/05/08(火) 07:26:09.48:BHPMRb7G

ありがとうございます!
デフォルトの名無しさん [sage] 2018/05/08(火) 09:19:30.59:8rfWV9vw

海外のmoocsなら学習者同士のコミュニティが盛況なのが普通。
デフォルトの名無しさん [sage] 2018/05/08(火) 12:19:46.83:iV08+v4/

なければ作るDjangoで
デフォルトの名無しさん [] 2018/05/08(火) 16:58:36.72:75TKeVia
燃え尽き
デフォルトの名無しさん [] 2018/05/08(火) 17:43:37.77:zAHKiKIb

ありがとうございます
まだ知識が足りないようなので、本を買ってきて勉強したいと思います
デフォルトの名無しさん [sage] 2018/05/08(火) 18:10:21.68:3Qc+jKU9

そんなもんcpuのスペックというかPCのスペックに激しくよるだろ
うちのボロパソ(CPU2GHzない)で自然言語の学習やらすと
文庫本100ページぶんくらいに一ヶ月半とかかかったぞw
デフォルトの名無しさん [] 2018/05/08(火) 18:26:42.19:hk49TKVY
漏れの頭よりは速い
デフォルトの名無しさん [sage] 2018/05/08(火) 21:43:47.50:/oTWe9RZ
listのソートなんだけど、重複する要素が多い順に並び替えることを1行、2行程度で行えたりしますか?

for文を使って並び替える処理を書こうかと思ったんですがpythonなら
そんなことしなくても出来たりしないかと思いましてw
デフォルトの名無しさん [sage] 2018/05/08(火) 21:58:09.18:F8VqdogY
import collections
lst = [1, 2, 1, 3, 6, 3, 3]
result = collections.Counter(lst).most_common()
print(result)
デフォルトの名無しさん [sage] 2018/05/08(火) 22:00:08.79:7bdwBE1v
(´・ω・`)pycharmっていうのが無料でなかなかいいみたいなことみたのでダウンロードしてみた
みんなはこれの有料版とかつかってるの?
861 [] 2018/05/08(火) 22:11:28.95:aYgx+AtW

学習済みモデルを使って
変換したらどのぐらい時間かかりました?


日本人はシャイなんですかね・・・
自分もですけど・・・
デフォルトの名無しさん [sage] 2018/05/09(水) 02:47:00.38:l026hdRL

放置してたから記憶が曖昧なんだけど
たぶん2−3時間@出力は400文字
デフォルトの名無しさん [] 2018/05/09(水) 07:32:19.46:dzXKaqfN

tensoflowとkerasでいいだろう。
デフォルトの名無しさん [sage] 2018/05/09(水) 18:50:09.29:xr813k83
プログラミング初めてでPython触ってみたんだが実際にコード書いて初心者に分かりやすいサイトない?
デフォルトの名無しさん [sage] 2018/05/09(水) 18:56:37.87:l026hdRL

Python hello でぐぐってすきなところを選びたまへ
とほほのところが有名だ

尚これから始めるなら3.x系がよいとおもわれ
デフォルトの名無しさん [sage] 2018/05/09(水) 19:04:13.82:xr813k83
サンクス
人工知能に興味あったから始めたけどもっと早く学習すれば良かった後悔してる
頑張ってみるわ
デフォルトの名無しさん [sage] 2018/05/09(水) 19:15:17.42:lQ6TY/rX
AIやゲームを作りたいと言ってプログラミングを始める人の9割は挫折する
デフォルトの名無しさん [sage] 2018/05/09(水) 19:26:34.41:l026hdRL

おうがんがれ
デフォルトの名無しさん [sage] 2018/05/09(水) 21:31:26.20:69m7eV1A

じゃあ初心者の最初の目標は何にしたらええの?
デフォルトの名無しさん [sage] 2018/05/09(水) 21:43:03.46:nNF1Fkq1
AIをエロに活かせばいけるだろ
デフォルトの名無しさん [sage] 2018/05/09(水) 21:54:41.07:28IRmfG3
エロかゲーム作り趣味などホビーの人は長く続く印象
デフォルトの名無しさん [sage] 2018/05/09(水) 22:01:14.33:emXNCpjE
ゲーム作り最強やろ
むしろほかの用途探すのが難しいくらい
デフォルトの名無しさん [sage] 2018/05/09(水) 22:53:57.01:4HCwAo+O
最近pythonを勉強し始めてwebのサンプルコピペしてTensorBoardに表示させて遊んでたんだけど機械学習の知識ゼロだから結局表示させたものが何なのか意味が分からなかったから機械学習の勉強したい
理系の知識もない人間が一から始めようとすると何から始めれば良い?
デフォルトの名無しさん [sage] 2018/05/09(水) 23:01:23.90:emXNCpjE
マジレスすると機械学習アルゴリズムの細部まで理解するのは相当しんどいと思う。
俺は挫折した。
861 [] 2018/05/10(木) 00:04:46.17:cGWvll+c

教えてくれてありがとう。
けっこう時間かかるもんなんですね


初心者でもどうしても作りたい明確な(機能)ものが
あればゲームでもAIでも続くんじゃないかな
どうしても分からないところを質問できるコミュニティは必要だと思うけど。


初心者用のネットの日本語無料講座あったんじゃなかったっけ??
そういう所でざっくりとだけ概要をつかんだ方がいいと思う。
デフォルトの名無しさん [sage] 2018/05/10(木) 00:22:11.98:fgcyrTHu

クダスレで尋ねるような超ゆとりではな
一番大事なのはその人の特性だからな。ゆとりは何やってもゆとりレベルまでしか行かない
超ゆとりは勉強始めてもすぐに挫折だろうし


例えば、働きながら独学で弁護士になるような奴ぐらいの奴なら良いんだろうがな。
俺らゆとりではしんどいから止めたになるよな
デフォルトの名無しさん [sage] 2018/05/10(木) 00:29:36.24:awjQTZQI
なんか説教臭い、いい歳したおじさんかな
デフォルトの名無しさん [sage] 2018/05/10(木) 00:43:50.81:fgcyrTHu

5chではまだ若手の36だよ
この歳になると社内の20前半の若い奴の普段の行動から
こいつは俺同様にダメだな・逆に見込みあるとなんとなくわかるんだよな。
デフォルトの名無しさん [sage] 2018/05/10(木) 03:59:12.23:lQRujbAq
ディープラーニングは理系の院生ぐらいの脳みそがないと無理
数学・英語が出来ないと自力で問題解決出来ないし、誰かに手取り足取り教えてもらえるほど甘い分野じゃない
デフォルトの名無しさん [sage] 2018/05/10(木) 04:13:16.52:Tz1SMPWH
Pythonだって本気で使いこなそうとしたら
Cで書かれた挙動とか最低限必要だろけど
実際にはよく分からんでも
適当にやってたら動いてくれる
スマホでタッチで動くほどじゃないけど
実際には、良いフレームワークとかあるし
更にラッパーとかあるしいずれは
ビジュアルプログラミングとかでも使えるレベルになるだろうし
DLも良い物なら誰でも使えるようになりそう
デフォルトの名無しさん [sage] 2018/05/10(木) 10:57:50.92:HQu2vVOs

理系の知識が全くないなら本当に厳しいよ
本気で機械学習の勉強したいならPRML(ビショップ本)と微積・確率統計・線形代数・情報理論の本買って,Pythonの数値計算ライブラリで実装すれば相当力付くけど
デフォルトの名無しさん [] 2018/05/10(木) 11:50:56.55:z2FsQALD

ベクトル解析も追加。岡谷貴之先生の「深層学習」もおススメ。
デフォルトの名無しさん [sage] 2018/05/10(木) 12:03:55.44:gCOAvs5z
独学でプログラミングの勉強始めたけど、めっちゃ難しい。そもそもきっかけが小学校でも必須になるぐらいだから知っとかないと駄目だろうと始めただけで目標がないし。最終的に個人のレベルで何が出来るようになるのかも分からない。
デフォルトの名無しさん [sage] 2018/05/10(木) 13:21:33.60:O+ANAa9X
そういう理由なら当然ダンスも習ってるんだろうな
デフォルトの名無しさん [sage] 2018/05/10(木) 13:41:17.69:nvwcDEeW
open関数について教えてください
ファイルがなければ新規作成する、というのは分かったのですが、もしファイルが存在している場合はそのファイルの中身を全て真っさらにしてから書き込む、という挙動であっていますか?
デフォルトの名無しさん [sage] 2018/05/10(木) 13:56:10.24:+a5m9EF5

実際にやってみれば良いんじゃない?
デフォルトの名無しさん [sage] 2018/05/10(木) 14:13:23.74:PiSsd1+y

どうして分った!?
デフォルトの名無しさん [sage] 2018/05/10(木) 14:39:32.47:nvwcDEeW

ありがとうございます
自分の環境でやってみた結果、ファイルの容量を見ていると既に存在してるファイルが500KBだったのが0KBに変わってから書き込まれたような挙動をしていたのでこれが本来の挙動であっているのかなと思って質問させて頂きました
デフォルトの名無しさん [sage] 2018/05/10(木) 19:46:14.64:qfiWpAWD

引数で指定できるんじゃね?普通の言語は指定できる。パイソンは知らんけどw
デフォルトの名無しさん [sage] 2018/05/10(木) 19:50:57.63:+TSTlbnk

fx自動売買など
デフォルトの名無しさん [] 2018/05/10(木) 20:08:10.25:g7n9xSc7
掃除とかゴミ出し、家事を物理レベルで自動化してほしい。
デフォルトの名無しさん [sage] 2018/05/10(木) 20:12:17.24:qfiWpAWD
万能メイドロボができるのは20年後かな?
デフォルトの名無しさん [] 2018/05/10(木) 20:56:14.26:BnDtJXlu
pythonでお願いします。
デフォルトの名無しさん [sage] 2018/05/10(木) 22:52:42.39:yoOX74ZE

ファイル書き込みには、上書き・追記・trunc とか、様々な種類がある
デフォルトの名無しさん [] 2018/05/11(金) 04:57:11.77:uqXGozXF
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] 意味教えてさいお願いします。
デフォルトの名無しさん [sage] 2018/05/11(金) 07:38:43.53:vQCkIPpY
リストなどのシーケンス[index]

index は、0 origin で、0, 1, 2〜と順番に、要素が並んでいる
デフォルトの名無しさん [] 2018/05/11(金) 11:16:18.85:eFEUpfi5
うんこすれ
デフォルトの名無しさん [sage] 2018/05/11(金) 13:47:06.39:SUjyRpfE

確かになにこれだよな
例えば
1 + 1で+の意味が分からないと、これが何をしているのかわからないよな
俺らは学校で"+が引き算を表す記号(演算子)"だと洗脳されていから、この結果は0
で、"-が足し算を表す記号(演算子)"と洗脳されているから、1-1は2になると分かるよな
で、
name = colnms[0] 場合の[]はPythonではget itemするアルヨを表す記号
逆にしてcolnms[0] = name の時の[]はPythonではset itemするニダを表す記号
Pythonの__getitem__、__setitem__ を調べれば[]の意味は分かる
最後にここまで読んだお前はうんこだよ。うんこは嘘を読んで信じるからな
デフォルトの名無しさん [sage] 2018/05/11(金) 18:59:36.18:wsKfkjHh
colnmsの意味を教えてください
デフォルトの名無しさん [sage] 2018/05/11(金) 21:05:28.71:613lDHdi
colnmsの意味はcolumnsだろうな多分
デフォルトの名無しさん [] 2018/05/11(金) 23:37:29.76:iRrzHK7E
とりあえず、csvモジュール使ったほうがいいと思います
デフォルトの名無しさん [sage] 2018/05/12(土) 00:02:44.49:f2N3rmqf
とにかくうんこスレには来ないほうが良い
うんこスレに来るとウジ虫な奴になる

with open('input/lunch.csv', encoding = 'utf-8')as f:
for row in f:
colnms = row.rstrip().split(',')
の意味が分かるからきかない、で、下の[0] [1]で 意味は分からんって不思議な感じ
俺なら[]どころか1行目のwith〜で意味わからんだが
デフォルトの名無しさん [sage] 2018/05/12(土) 01:40:06.80:hwxaPbIq
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 のモジュールを使わないといけない
デフォルトの名無しさん [sage] 2018/05/12(土) 01:44:14.61:f2N3rmqf
うんこスレだとPythonではなく他言語のRubyのことを語るだからな
デフォルトの名無しさん [] 2018/05/12(土) 10:07:27.69:PhPFRMEv
スレタイにエクスキューズがあるからといって何をしても良い訳ではない
デフォルトの名無しさん [sage] 2018/05/12(土) 12:00:15.73:R/twbybb

子々孫々汚辱にまみれて苦しみ抜いて死にますように。
デフォルトの名無しさん [] 2018/05/12(土) 12:05:17.55:baCqg7K+
これは子孫がいないの勝ち
デフォルトの名無しさん [sage] 2018/05/12(土) 12:16:34.10:TElP4mcm
Vectorに公開してるしょぼいPythonのスクリプトをGithubでNYSLで公開したいんだけどとりあえずどうしたらいい?
あまよくば、誰かが勝手に改良してくれることを期待
とりあえず、ユーザー登録まではしたけど、英語だしチュートリアル読む気にもなれない
手短にやり方分かるHPあったら教えて
デフォルトの名無しさん [] 2018/05/12(土) 12:22:17.95:XqIGE8bt
デザインパターンのブログ(ヤフーブログ)・・・・なかなか良い。

ttps://blogs.yahoo.co.jp/kamyu_2010/35442561.html
デフォルトの名無しさん [sage] 2018/05/12(土) 13:36:42.82:jVncCHkO
Python超初心者スレらしくRuby語り、github相談となんでもありだな
デフォルトの名無しさん [sage] 2018/05/12(土) 17:31:12.57:AgnQJ85k
じゃあつぎはおでんの具の話しよう
デフォルトの名無しさん [sage] 2018/05/12(土) 17:58:10.85:vrXL3+qd
おでんは大根に限る
デフォルトの名無しさん [] 2018/05/12(土) 18:27:31.08:TkoJoFTb
ばれたら大根にも課税してくるぞ。
デフォルトの名無しさん [sage] 2018/05/12(土) 19:22:23.63:Z9eJs0up

あきらめてチュートリアル嫁
デフォルトの名無しさん [sage] 2018/05/12(土) 21:00:12.16:MhU9MMPk
こんど勉強するつもりなんだけどネットに学習サイトみたいなのあるけど
ああいうのはどうなの?
デフォルトの名無しさん [sage] 2018/05/12(土) 21:40:58.38:vrXL3+qd
学習サイトってなんだよ?具体的にURLだせよ
デフォルトの名無しさん [sage] 2018/05/12(土) 21:55:01.35:Z9eJs0up

続きは課金版で!とかいうかんじのやつのことか?
デフォルトの名無しさん [sage] 2018/05/12(土) 23:54:25.51:TElP4mcm

プログラマだといって英語が当たり前に読める前提は辞めて欲しい
英検3級落ちたOrz
デフォルトの名無しさん [sage] 2018/05/13(日) 00:16:45.23:uzXbRXrC
つGoogle翻訳
デフォルトの名無しさん [sage] 2018/05/13(日) 01:54:43.20:56pGVkb8

は実は英語”超初心者"でも英訳を出来るHPあったら教えて
と言うここらしい質問を間接的に(ダイレクトには流れ的にしずらい?)しているんだからな。

githubの次は英語、ほんとだよな
勉強する気がある奴のための初心者用スレとは違い、超初心者用スレ==実は勉強する気ない奴用スレ
デフォルトの名無しさん [sage] 2018/05/13(日) 03:39:04.31:BxSSHPxy
最近始めたんですが、ファイルを分割したいので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 内でインスタンスを作ってしまってそれを他のファイルから参照できるのでしょうか
教えてくださいよろしくお願いします。
デフォルトの名無しさん [] 2018/05/13(日) 03:54:47.75:gEMGN+Hk
かと言って難しい質問くると困るんだろ?
デフォルトの名無しさん [sage] 2018/05/13(日) 04:13:04.78:ya8BaCcb
>class Filelorder の中を外部から直接見る方法はあるのか
となりのクラスとかからみたいときは
Filelorder.data
でとりだせるはず
なかみはいってるならな!
デフォルトの名無しさん [sage] 2018/05/13(日) 05:07:55.74:zLnIxXxX

別に困らんよ。難しとか関係なくてきとうに妄想レスするだけだし


テラテイルできけ。ある程度の以上の実力がある奴がたくさんいるところで質問したほうが良い。
ここだと俺のような超低レベル激多く、そいつらのあほ回答を訂正してくれるそれなりの実力ある奴がいない。
お前自身も自分でそれが良くないって分からんだろうし。
ここにはrubyの上級者がいるからその人が気合を入れてrubyではと説明してくれるかな
デフォルトの名無しさん [sage] 2018/05/13(日) 06:05:01.61:BxSSHPxy
レスありがとうございます。
試行錯誤してみたのですが、ひとつのファイルならクラス外のグローバルにアクセスできるけど、ファイルを分けると完全に切り分けされてしまってグローバルにアクセスできなくなる感じだというのが解りました。
Calcfuncのインスタンスを作る時にfile_lorderを持たせて保持してもらうことで対応できそうです。
どうでもいいけど、lorderでなくてloaderですね、lordなら意味は通じなくもないけどerは付かない・・・
どうもありがとうございました。
デフォルトの名無しさん [sage] 2018/05/13(日) 06:10:57.49:u4TQvgwd
Python のglobal は、モジュール(ファイル)スコープのglobal

アプリ全体のglobal は無い
デフォルトの名無しさん [] 2018/05/13(日) 06:11:49.39:A9i0212o
ttp://www.netcom-ir.com/about.html
デフォルトの名無しさん [sage] 2018/05/13(日) 06:16:08.95:u4TQvgwd

>from fileloader import *
* を使うのは、名前がバッティングする事もあるから危険

>class Filelorder の中を外部から直接見る方法はあるのか
見れたら危険、ダメ!
カプセル化にならない
デフォルトの名無しさん [] 2018/05/13(日) 14:21:28.34:44h/7/Ui
lorderなのにloaderでimportか
デフォルトの名無しさん [] 2018/05/13(日) 20:59:45.78:NxCcWPip
matplotlibで座標を繋いだり画像変換してみたのですが
画像自体を保存するとグラフの縦軸や横軸なしで画像を保存する方法はないでしょうか?
plt.savefig(savefile)すると縦軸横軸も合わせて小さいサイズで保存されてしまいます。

宜しくお願いします。
943 [] 2018/05/13(日) 22:47:43.29:NxCcWPip
自己解決です
以下にいくつかの解決方法が書いてありました。

ttps://stackoverflow.com/questions/9295026/matplotlib-plots-removing-axis-legends-and-white-spaces
デフォルトの名無しさん [sage] 2018/05/13(日) 22:52:21.76:u4TQvgwd
どこかで、辞書とOrderedDict の違いについて書いていたけど、

Python3.6 以降の辞書は、追加された順序を保持するけど、
OrderedDict とは異なる

比較する際、OrderedDictでは並び順も含めて、一致と判定されるが、
普通の辞書では、並び順を考慮しないで、一致と判定される

「みんなのPython 第4版、2017」に書いてある
デフォルトの名無しさん [] 2018/05/14(月) 13:39:40.34:dnGRWxRE
デフォルトの名無しさん [sage] 2018/05/14(月) 21:33:13.64:bWj41az5
デフォルトの名無しさん [sage] 2018/05/14(月) 22:26:45.42:qyA4ekTm

「スッキリわかるJava入門」読んだけど、ホントにスッキリ分かった。みんなのPython読んでもあんまりよく分かんなかったから、すごく助かった。ありがとう。

勢い5万以上のスレをメールでお知らせするサービス、実施中!!
憧れボディをGETしたい!その夢、ボニックで!

新着レスの表示

2ch勢いランキング アーカイブ プログラム板ランキング

凡例:

レス番

100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている

名前

名無しさん (青) → sage のレス
名無しさん (緑) → age のレス

ID

ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID

このページは2ch勢いランキングが作成したアーカイブです。削除についてはこちら