このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。
エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで
前スレ
くだすれPython(超初心者用) その36
http://mevius.2ch.net/test/read.cgi/tech/1514805522/
くだすれPython(超初心者用) その37
■ このスレッドは過去ログ倉庫に格納されています
2018/03/17(土) 16:32:25.91ID:S1lkLDnv
393デフォルトの名無しさん
2018/04/17(火) 01:55:18.50ID:PvksN2Vg394デフォルトの名無しさん
2018/04/17(火) 04:43:58.56ID:QMWYQNUe >>385
print(f'{area:.5f} {length:.5f}')
print(f'{area:.5f} {length:.5f}')
395デフォルトの名無しさん
2018/04/17(火) 05:33:09.17ID:Z6U7XFnZ >>381
ブロードキャスト出来ない状態だから、テンソル(numpyアレイ)の次元が合ってないんだろう
元ソースと自分のプログラムで両辺のshapeをプリントかデバッガで見て比較すれば間違えた箇所に気付くと思う
それでもダメなら、もっと簡単なmnistサンプルとかでnumpyの処理を勉強し直した方がいいかも
ブロードキャスト出来ない状態だから、テンソル(numpyアレイ)の次元が合ってないんだろう
元ソースと自分のプログラムで両辺のshapeをプリントかデバッガで見て比較すれば間違えた箇所に気付くと思う
それでもダメなら、もっと簡単なmnistサンプルとかでnumpyの処理を勉強し直した方がいいかも
396遊園地
2018/04/17(火) 11:03:58.69ID:nd6YqIWE darknetで検出した結果だけをキャプチャーするのって、どうするの?
ダメなら、テラテイルで聞くわww
ダメなら、テラテイルで聞くわww
397381
2018/04/17(火) 22:12:58.91ID:3Zz6leMl398デフォルトの名無しさん
2018/04/18(水) 01:23:19.17ID:2l4GI+/x chainerはデータのパックが面倒くさいからあまり好きじゃない
numpy→タプルデータセット→イテレータ→アップデータ→トレーナー
tensorflowはshape未定義のプレースホルダーのままテンソル演算をさせる所が分かりにくい
最終的にC++やC#のアプリに組み込みたい時はこれしかないけど
kerasはnumpyを縦ベクトル化してfit関数に渡すだけだから初心者向けで一番楽だと思う
日本語の解説本が少ないけどwebの記事はそれなりにあるはず
numpy→タプルデータセット→イテレータ→アップデータ→トレーナー
tensorflowはshape未定義のプレースホルダーのままテンソル演算をさせる所が分かりにくい
最終的にC++やC#のアプリに組み込みたい時はこれしかないけど
kerasはnumpyを縦ベクトル化してfit関数に渡すだけだから初心者向けで一番楽だと思う
日本語の解説本が少ないけどwebの記事はそれなりにあるはず
399デフォルトの名無しさん
2018/04/18(水) 08:31:52.18ID:aHPh72wK インポートエラー、format_excみたいなやつが永遠と出るんだがなぜでしょうか...
3日前から急に発症して、前回まで動いてたpyファイル全て実行できない...
python入れ直したり、anacondaで入れ直したりしたけど改善されないです
3日前から急に発症して、前回まで動いてたpyファイル全て実行できない...
python入れ直したり、anacondaで入れ直したりしたけど改善されないです
400デフォルトの名無しさん
2018/04/18(水) 09:05:12.90ID:IyxAGhJK 何かが、自動update されたのかも
例えば、moduleA が、moduleB 2.2 に依存しているとする。
ここで、Bが2.3 に、updateされたため、Aが使えなくなったとか
それか、環境変数PATH を上書きしたとか
例えば、moduleA が、moduleB 2.2 に依存しているとする。
ここで、Bが2.3 に、updateされたため、Aが使えなくなったとか
それか、環境変数PATH を上書きしたとか
401遊園地
2018/04/18(水) 09:54:49.07ID:EkJY2Tio anaconda入れ直すしか無いなw
402デフォルトの名無しさん
2018/04/18(水) 13:23:44.85ID:KAGSbSSN Anacondaでトラブってるの見る度に気持ち良くなるわ
バカすぎ
バカすぎ
403デフォルトの名無しさん
2018/04/18(水) 16:20:24.68ID:WEKhN2py 数字や数字を変えながら、ちょっとスクリプトを作る場合、
def(サブルーチン?関数?) の場所について、物理的に下側にないとエラーが出てしまう
プログラムの書き換える度に、下までカーソルを動かさないといけないし
地味に不便なんだけど、何とかならない?
def(サブルーチン?関数?) の場所について、物理的に下側にないとエラーが出てしまう
プログラムの書き換える度に、下までカーソルを動かさないといけないし
地味に不便なんだけど、何とかならない?
404遊園地
2018/04/18(水) 16:39:07.37ID:EkJY2Tio 深層部にif __name__ == '__main__':を持ってくるか。
clss XX():
def YY()
処理
なら、clss XXのdef YYを
def YY()
処理
として、classから外す。
タスクバーが邪魔なら、非表示か移動
スクロールが無いなら、スクロールが有るエディターに変更する。
出力結果なら、外部ファイルに保存して確認する。
クリックしたら、クリックした文字の横に移動できる。
状況が解らない。
スクショ上げてくれたら、何か言えるかもな。
clss XX():
def YY()
処理
なら、clss XXのdef YYを
def YY()
処理
として、classから外す。
タスクバーが邪魔なら、非表示か移動
スクロールが無いなら、スクロールが有るエディターに変更する。
出力結果なら、外部ファイルに保存して確認する。
クリックしたら、クリックした文字の横に移動できる。
状況が解らない。
スクショ上げてくれたら、何か言えるかもな。
405デフォルトの名無しさん
2018/04/18(水) 18:50:18.12ID:RFL5vDmV406デフォルトの名無しさん
2018/04/18(水) 23:23:28.17ID:YRBnqMM/ 初めまして。
よろしければ回答お願いします!
大学でpython3を使いブロックスというゲームのプレイヤーAIを作ろうとしているのですが、効率の良い攻め方を実現する方法が分かりません。
盤面の状況次第で臨機応変に対処できるようにしたいです。
何か良いアイデアはないでしょうか。
因みにpythonを扱うのはこの授業が初めてです。
以下ブロックスの詳細です!
http://saikoro-table.com/2016/12/05/blokus/
よろしければ回答お願いします!
大学でpython3を使いブロックスというゲームのプレイヤーAIを作ろうとしているのですが、効率の良い攻め方を実現する方法が分かりません。
盤面の状況次第で臨機応変に対処できるようにしたいです。
何か良いアイデアはないでしょうか。
因みにpythonを扱うのはこの授業が初めてです。
以下ブロックスの詳細です!
http://saikoro-table.com/2016/12/05/blokus/
407遊園地
2018/04/18(水) 23:32:03.53ID:EkJY2Tio ??
??? ?? ???
モンテ使って、機械学習で数百万回読み込ませば良い。
??? ?? ???
モンテ使って、機械学習で数百万回読み込ませば良い。
408デフォルトの名無しさん
2018/04/18(水) 23:43:26.51ID:V0vvqvFn alpha zeroのパクりならgithubにいくつか転がってるぞ
409デフォルトの名無しさん
2018/04/18(水) 23:45:52.84ID:YRBnqMM/410デフォルトの名無しさん
2018/04/18(水) 23:50:57.82ID:V0vvqvFn 難しくても丸パクりすればOK
理解は後からついてくる
理解は後からついてくる
411デフォルトの名無しさん
2018/04/18(水) 23:57:41.25ID:V0vvqvFn ちなみに素のモンテカルロ木探索だけだとあんまり強さが出ないかべらぼうな時間がかかる可能性があるので注意
412デフォルトの名無しさん
2018/04/18(水) 23:58:42.71ID:YRBnqMM/ >>406
追記です。ボードの情報は board[X][Y]で与えられます。また、置ける場所をリスト?で返してくれる関数も与えられています。
ただこれをただ使ってるだけだと弱くて弱くて…笑
ということで、相手のピースとピースのつなぎ目を狙わせたいのですが、(そうすると強い)
いい方法解答お願いします。
追記です。ボードの情報は board[X][Y]で与えられます。また、置ける場所をリスト?で返してくれる関数も与えられています。
ただこれをただ使ってるだけだと弱くて弱くて…笑
ということで、相手のピースとピースのつなぎ目を狙わせたいのですが、(そうすると強い)
いい方法解答お願いします。
413デフォルトの名無しさん
2018/04/19(木) 00:03:06.90ID:K4+BGrIF >>404
===test.py====
def learn(learn_mr,predict_mr):
maxrange = 15000
#・・・・・・・・・・・・
def iroiro:
maxrange = 15000
#・・・・・・・・・・・・
def iroiro2:
maxrange = 2
#・・・・・・・・・・・・
# def が大量に続く
###
input_file = 's1_x33x.txt' 例えばこの辺りを時々更新したい
f = open(input_file, 'r', encoding='utf-8')
Allf = f.read()
f.close()
Allf = Allf.replace("y","0 1 0 0 0") 例えばこの辺りを時々更新したい
row_step = 200
for row in range( row_step , 208900 ): 例えばこの辺りを時々更新したい
l_mr = mr[ row-row_step : row ]
p_mr = mr[ row : row+1 ]
dummy = learn(l_mr,p_mr)
dummy2 = iroiro(Allf)
print ("予備テスト完了") 例えばこの辺りを時々更新したい
###
エディタは秀丸で###と###の間を時々更新するばあい、言語によっては###間を先頭に書いて
下にサブルーチンをだらだら書いて必要に応じて呼び出す使い方ができるけどPythonだとどうすればいいかと思って
ショートカットキーで移動したり方法はあるけど、ファイルを開いてちょっと編集して閉じるみたいな使い方をすると意外とストレスで
===test.py====
def learn(learn_mr,predict_mr):
maxrange = 15000
#・・・・・・・・・・・・
def iroiro:
maxrange = 15000
#・・・・・・・・・・・・
def iroiro2:
maxrange = 2
#・・・・・・・・・・・・
# def が大量に続く
###
input_file = 's1_x33x.txt' 例えばこの辺りを時々更新したい
f = open(input_file, 'r', encoding='utf-8')
Allf = f.read()
f.close()
Allf = Allf.replace("y","0 1 0 0 0") 例えばこの辺りを時々更新したい
row_step = 200
for row in range( row_step , 208900 ): 例えばこの辺りを時々更新したい
l_mr = mr[ row-row_step : row ]
p_mr = mr[ row : row+1 ]
dummy = learn(l_mr,p_mr)
dummy2 = iroiro(Allf)
print ("予備テスト完了") 例えばこの辺りを時々更新したい
###
エディタは秀丸で###と###の間を時々更新するばあい、言語によっては###間を先頭に書いて
下にサブルーチンをだらだら書いて必要に応じて呼び出す使い方ができるけどPythonだとどうすればいいかと思って
ショートカットキーで移動したり方法はあるけど、ファイルを開いてちょっと編集して閉じるみたいな使い方をすると意外とストレスで
414デフォルトの名無しさん
2018/04/19(木) 00:20:52.00ID:4n9OXawP415デフォルトの名無しさん
2018/04/19(木) 00:54:21.32ID:zrUS025p >>413
このスレで有名になったperlさん?
このスレで有名になったperlさん?
416遊園地
2018/04/19(木) 02:43:06.18ID:+uu+DOll >>413
単純にリストにしたら?
[ [ファイル名], [置き換え] ]
classで纏めれるdefは纏める。
それから、継承して行く形かな。
https://ideone.com/4X41rB
print部分を適当な配列に渡す。ぐらいかな。
最後のfor文は、アイデアが出ない。
単純にリストにしたら?
[ [ファイル名], [置き換え] ]
classで纏めれるdefは纏める。
それから、継承して行く形かな。
https://ideone.com/4X41rB
print部分を適当な配列に渡す。ぐらいかな。
最後のfor文は、アイデアが出ない。
417デフォルトの名無しさん
2018/04/19(木) 03:37:44.72ID:T1rC3373 >>413
forループの中でしか使わない関数なら、forループ内で内部関数としてdefをすることも可能
関数が大きい場合は、調整が必要な部分だけ内部関数に書いて、その関数内でもう一度外側の関数を呼ぶ二段方式もある
def outfunc(x):
外側の関数
for i in range(10):
def infunc(y):
調整が必要な部分
outfunc()
infunc() # 内部関数呼び出し
変更箇所が少ない関数を下に置きたいだけなら、メインシーケンスを def main(): などで囲んで関数化してから、
一番最後にインデント無しの main() か、if __name__ == '__main__': と インデント付き main() を一緒に書く
def main():
メインの処理
func()
def func(x):
外部関数の処理
if __name__ == '__main__':
main() # この時点で名前解決出来ていればエラーにならない
forループの中でしか使わない関数なら、forループ内で内部関数としてdefをすることも可能
関数が大きい場合は、調整が必要な部分だけ内部関数に書いて、その関数内でもう一度外側の関数を呼ぶ二段方式もある
def outfunc(x):
外側の関数
for i in range(10):
def infunc(y):
調整が必要な部分
outfunc()
infunc() # 内部関数呼び出し
変更箇所が少ない関数を下に置きたいだけなら、メインシーケンスを def main(): などで囲んで関数化してから、
一番最後にインデント無しの main() か、if __name__ == '__main__': と インデント付き main() を一緒に書く
def main():
メインの処理
func()
def func(x):
外部関数の処理
if __name__ == '__main__':
main() # この時点で名前解決出来ていればエラーにならない
418デフォルトの名無しさん
2018/04/19(木) 03:39:32.00ID:4mrmpy84 ブロックスについては、将棋・囲碁みたいに、評価基準を考える必要がある
1. 敵ピースの角に置く
2. 1マスのピースは、勝負所まで取っておく
まず、こういう高評価される手を列挙して、点数を付ける
AI の研究は、何年も掛かる
1. 敵ピースの角に置く
2. 1マスのピースは、勝負所まで取っておく
まず、こういう高評価される手を列挙して、点数を付ける
AI の研究は、何年も掛かる
419デフォルトの名無しさん
2018/04/19(木) 03:50:24.69ID:4mrmpy84 >>413
別のファイルに分けて、import すれば?
変数をコマンドライン引数で渡すとか、
設定ファイルに書いて読み込むとか
エディタは普通、VSCode を使う。
ソースコードのある範囲だけを、右クリックメニューから実行できる
普通、動的言語は関数定義を上に書かないと、関数を呼び出せない。
例外は、JavaScript で、関数の巻き上げ
別のファイルに分けて、import すれば?
変数をコマンドライン引数で渡すとか、
設定ファイルに書いて読み込むとか
エディタは普通、VSCode を使う。
ソースコードのある範囲だけを、右クリックメニューから実行できる
普通、動的言語は関数定義を上に書かないと、関数を呼び出せない。
例外は、JavaScript で、関数の巻き上げ
420デフォルトの名無しさん
2018/04/19(木) 04:18:53.20ID:T1rC3373 >>406
つなぎ目ならx,yからx+1,y+1までの4箇所の判定で対角2つ埋まってて2つ空いてる所を探せば良さそう
置ける場所リストの周辺の盤面を検索して、対角パターンを優先して、さらに出来るだけ大きいブロックを選べばいいと思う
全部の角の判定が正確に出来なくても、部分的にでも判定出来ればそこそこ強くなると思う
つなぎ目ならx,yからx+1,y+1までの4箇所の判定で対角2つ埋まってて2つ空いてる所を探せば良さそう
置ける場所リストの周辺の盤面を検索して、対角パターンを優先して、さらに出来るだけ大きいブロックを選べばいいと思う
全部の角の判定が正確に出来なくても、部分的にでも判定出来ればそこそこ強くなると思う
421デフォルトの名無しさん
2018/04/19(木) 04:24:10.12ID:T1rC3373422デフォルトの名無しさん
2018/04/19(木) 08:55:16.93ID:5y+3njqT423デフォルトの名無しさん
2018/04/19(木) 09:02:53.03ID:5y+3njqT >>420
回答ありがとです!これは自分もしたいなって考えてたのですが、どう書けばいいか分からなくてですね…
疑問点を列挙すると
@判定の仕方
A判定後の評価
B現在使ってる置ける場所を教えてくれる関数が返してくるリスト?をその評価でソートできるのか。
って感じで前途多難です( i _ i )
回答ありがとです!これは自分もしたいなって考えてたのですが、どう書けばいいか分からなくてですね…
疑問点を列挙すると
@判定の仕方
A判定後の評価
B現在使ってる置ける場所を教えてくれる関数が返してくるリスト?をその評価でソートできるのか。
って感じで前途多難です( i _ i )
424デフォルトの名無しさん
2018/04/19(木) 09:37:46.23ID:4mrmpy84 評価基準を決めるには、何年も掛かる。
点数を決めて、敵AI と何千局も対戦して、微調整を続ける
将棋・囲碁もそう
点数を決めて、敵AI と何千局も対戦して、微調整を続ける
将棋・囲碁もそう
425遊園地
2018/04/19(木) 09:54:14.94ID:+uu+DOll 大前提がブロックスを完成済み。として、話が進んでるが、
ブッロク自体を作れてるのか気になる。
ブッロク自体を作れてるのか気になる。
426デフォルトの名無しさん
2018/04/19(木) 10:09:51.11ID:3+zW45NU ガキの宿題手伝う必要ないでしょ
427遊園地
2018/04/19(木) 10:15:02.85ID:+uu+DOll 期限が2週間も有り、大学費だしてるなら、
直接
講師[先生]に聞いた方が良いよ。
むしろ、聞け。
なんの為に学費だしてるんの?
直接
講師[先生]に聞いた方が良いよ。
むしろ、聞け。
なんの為に学費だしてるんの?
428デフォルトの名無しさん
2018/04/19(木) 10:34:58.58ID:5y+3njqT429デフォルトの名無しさん
2018/04/19(木) 10:37:55.70ID:5y+3njqT430デフォルトの名無しさん
2018/04/19(木) 10:56:08.16ID:j5tv0M09 Pythonむずい!
なんでこんなむずいの?
なんでこんなむずいの?
431デフォルトの名無しさん
2018/04/19(木) 12:13:54.17ID:cIc2YD7o pythonてかやろうとしてることが難しいんじゃないの?
言語としては簡単な方でしょ、同じことを別の言語でやってみたら分かる
言語としては簡単な方でしょ、同じことを別の言語でやってみたら分かる
432デフォルトの名無しさん
2018/04/19(木) 12:17:59.12ID:4mrmpy84 そりゃあ、ブロックスなんて答えが無いだろ
将棋・囲碁みたいに、対戦コミュニティがあるか?
まず、コミュニティへ行って、AI 同士で、何千局も対戦して、
微調整を続けないと、無理だろ
将棋・囲碁みたいに、対戦コミュニティがあるか?
まず、コミュニティへ行って、AI 同士で、何千局も対戦して、
微調整を続けないと、無理だろ
433デフォルトの名無しさん
2018/04/19(木) 12:19:39.36ID:2nanKMvG434デフォルトの名無しさん
2018/04/19(木) 12:23:58.79ID:4mrmpy84 強いAI を作るのは無理だから、
とにかく、次に置けるマスだけを、リストに入れて、
その中からマスを適当に選んで、適当に選んだピースを置け
それで良い
とにかく、次に置けるマスだけを、リストに入れて、
その中からマスを適当に選んで、適当に選んだピースを置け
それで良い
435デフォルトの名無しさん
2018/04/19(木) 13:12:52.70ID:f7DkAV9f AIは可能な選択肢のうち、0点以上の最高得点手を打つ。同点時はランダム。初期値は0
AI同士に勝負させて、打った手は全部保存しておく。最終的に勝ったほうは手のそれぞれにプラス点、負け側はマイナス点
ってやろうぜw
それを二週間延々繰り返させたら強くなるんじゃなーい?
AI同士に勝負させて、打った手は全部保存しておく。最終的に勝ったほうは手のそれぞれにプラス点、負け側はマイナス点
ってやろうぜw
それを二週間延々繰り返させたら強くなるんじゃなーい?
436デフォルトの名無しさん
2018/04/19(木) 15:02:28.67ID:c48O4SX1 どんなゲームだか知らんけど
とある局面のとある手に対して、
その後は両者ランダムに打って終わらせる試行を100回くらい繰り返して
勝った回数をその手のスコアとすれば良い
とある局面のとある手に対して、
その後は両者ランダムに打って終わらせる試行を100回くらい繰り返して
勝った回数をその手のスコアとすれば良い
437遊園地
2018/04/19(木) 16:16:23.30ID:+uu+DOll 遊べる。ブロックスAIと言う課題なら
目安だと[GUI]は5日
ブロックスのAIを課題にするぐらいだと、逆算して
本人が半日から1日でブロックス自体が完成させれる段階で
長くても2日
残りの3,4日で
CPU AI をコレまでに教えた内容で、調整して下さい。みたいなモノ
どう、考えても[推測上の一日の固定時間 9時から20時45分]
[一日の作業量(思考)2,3時間]と過程しても、
2週間は多すぎる。
1日2日は前後する可能性が有るけど、辻褄が合わないな。
F欄大学か、なんちゃって専門学校かな?
目安だと[GUI]は5日
ブロックスのAIを課題にするぐらいだと、逆算して
本人が半日から1日でブロックス自体が完成させれる段階で
長くても2日
残りの3,4日で
CPU AI をコレまでに教えた内容で、調整して下さい。みたいなモノ
どう、考えても[推測上の一日の固定時間 9時から20時45分]
[一日の作業量(思考)2,3時間]と過程しても、
2週間は多すぎる。
1日2日は前後する可能性が有るけど、辻褄が合わないな。
F欄大学か、なんちゃって専門学校かな?
438デフォルトの名無しさん
2018/04/19(木) 17:59:06.99ID:hcjjAGnl439デフォルトの名無しさん
2018/04/19(木) 18:01:31.06ID:hcjjAGnl 回答していただいた方ありがとうございます。
参考になります。
参考になります。
440デフォルトの名無しさん
2018/04/19(木) 18:40:08.42ID:VWrPY/vr >>429
yahoo知恵袋の方がいいよ
yahoo知恵袋の方がいいよ
441遊園地
2018/04/19(木) 18:44:18.50ID:+uu+DOll 大学設定は嘘だな。
大学設定が本当だったら、今のお前に「そんな」課題だすアホ教員が悪いのか、
何も教えない大学で大金払ってる馬鹿なのか知らないけど、
質問内容で現在のレベルが分かる。
教えて貰うのに、
理解できてないなら、教えて貰ってないのと一緒。
大学設定が本当だったら、今のお前に「そんな」課題だすアホ教員が悪いのか、
何も教えない大学で大金払ってる馬鹿なのか知らないけど、
質問内容で現在のレベルが分かる。
教えて貰うのに、
理解できてないなら、教えて貰ってないのと一緒。
442デフォルトの名無しさん
2018/04/19(木) 19:10:55.84ID:ar7X8qES443遊園地
2018/04/19(木) 19:51:05.39ID:+uu+DOll おう。
大学受験に失敗して6年引き篭もってる俺には、
大学生は邪魔だぞいww
大学受験に失敗して6年引き篭もってる俺には、
大学生は邪魔だぞいww
444デフォルトの名無しさん
2018/04/19(木) 20:10:30.03ID:uEzvz53i 2週間ははっきり言って課題に対して期間がみじかすぎるよ。
python精通してる人でも強いAI作ろうとしたら2週間以上かかる。
まあルール部分は用意されてるようだからその分割り引くべきかもだけど。
python精通してる人でも強いAI作ろうとしたら2週間以上かかる。
まあルール部分は用意されてるようだからその分割り引くべきかもだけど。
445デフォルトの名無しさん
2018/04/19(木) 21:02:34.32ID:uEzvz53i 2週間なら>>436くらいが適当だとおもう。
あんま強くならないだろうけど。
あんま強くならないだろうけど。
446遊園地
2018/04/19(木) 22:34:07.23ID:+uu+DOll (^p^)「あうあうあーwwwwwwww」
447デフォルトの名無しさん
2018/04/19(木) 23:25:56.00ID:K4+BGrIF >>416
コード紹介ありがとうございます。
まだ内容がしっかり決まって居無くってちょっと書き換えたいという時にはちょっと大げな感じになりますね
ある程度のコードの中が決まっていると良さそうですね
>>417
ありがとうございます
色々な方法があるのですね
今回の場合、mainを置く方法が手っ取り早そうです
ただ、試しに書いてみるとエラーが出ました
どこか間違えていますかね?
>>419
関数が巻き上げられるのはそこそこ一般的だと思っていました
IDEだとそんなこともできるのですか・・・
大昔、Exlipseを使っていたのですが重たくって重たくって使わなくなっていましたが検討してみようと思います
ありがとうございます。
コード紹介ありがとうございます。
まだ内容がしっかり決まって居無くってちょっと書き換えたいという時にはちょっと大げな感じになりますね
ある程度のコードの中が決まっていると良さそうですね
>>417
ありがとうございます
色々な方法があるのですね
今回の場合、mainを置く方法が手っ取り早そうです
ただ、試しに書いてみるとエラーが出ました
どこか間違えていますかね?
>>419
関数が巻き上げられるのはそこそこ一般的だと思っていました
IDEだとそんなこともできるのですか・・・
大昔、Exlipseを使っていたのですが重たくって重たくって使わなくなっていましたが検討してみようと思います
ありがとうございます。
448デフォルトの名無しさん
2018/04/19(木) 23:41:15.47ID:FEDLlhkO eclipse
449デフォルトの名無しさん
2018/04/20(金) 01:21:16.01ID:p7k7S/mH 新年度始まって間もないのにpythonでブロックス+AIの課題が出るような学科は情報系の学科なのかな。
情報系の学科なら今流行りの機械学習系のことも普通にやるんだろうな
情報系の学科なら今流行りの機械学習系のことも普通にやるんだろうな
450デフォルトの名無しさん
2018/04/20(金) 03:06:20.06ID:qxue6Zgp 横からなのですが>>187さんのWebアプリにしてはpythonでサーバー建ててブラウザで表示するで合ってますか?
451遊園地
2018/04/20(金) 08:57:52.56ID:xu4ZA7YN >>450
# sudo pip3 install bottle
# http://localhost:8080/hello/world
from bottle import route, run, template
@route('/hello/<name>')
def index(name):
return template('<b>Hello {{name}}</b>!', name=name)
run(host='localhost', port=8080)
# sudo pip3 install bottle
# http://localhost:8080/hello/world
from bottle import route, run, template
@route('/hello/<name>')
def index(name):
return template('<b>Hello {{name}}</b>!', name=name)
run(host='localhost', port=8080)
452デフォルトの名無しさん
2018/04/20(金) 10:29:12.98ID:WJk0jxxj 日本の大学じゃなさそう
453デフォルトの名無しさん
2018/04/20(金) 11:53:43.70ID:bSpMfw5T >>447
コード貼り付け忘れていました
# ===test.py===
def main():
x = "H"
for num in range(5):
func(str(num))
def func(x,str):
print (x + "ello " + str)
if __name__ == '__main__':
main()
# UnboundLocalError: local variable 'func' referenced before assignment
コード貼り付け忘れていました
# ===test.py===
def main():
x = "H"
for num in range(5):
func(str(num))
def func(x,str):
print (x + "ello " + str)
if __name__ == '__main__':
main()
# UnboundLocalError: local variable 'func' referenced before assignment
454デフォルトの名無しさん
2018/04/20(金) 12:18:17.84ID:9v7e203Y ブロックスてそんなに有名なゲームなんか?聞いたことないわ
455デフォルトの名無しさん
2018/04/20(金) 12:29:06.14ID:WJk0jxxj456デフォルトの名無しさん
2018/04/20(金) 12:52:36.38ID:DDZisBas457デフォルトの名無しさん
2018/04/20(金) 12:59:05.08ID:CLWy02Nm えっパイソンってホイストないの?
c系言語には大抵あるのに。
抽象度の高い処理頭の方に書いて、使用関数の実装はお尻のほうに置いとけて便利なのに
c系言語には大抵あるのに。
抽象度の高い処理頭の方に書いて、使用関数の実装はお尻のほうに置いとけて便利なのに
458デフォルトの名無しさん
2018/04/20(金) 13:00:03.95ID:bSpMfw5T459デフォルトの名無しさん
2018/04/20(金) 13:02:16.40ID:bSpMfw5T Perlと比べてイライラすることがあったけど、
{
}
が不要なのはサクサク書けて良いな
Pythonの良いところまた1つ見つけた
>>457
perlしか知らないけど普段そういった使い方してたからあれば便利だよねー
{
}
が不要なのはサクサク書けて良いな
Pythonの良いところまた1つ見つけた
>>457
perlしか知らないけど普段そういった使い方してたからあれば便利だよねー
460デフォルトの名無しさん
2018/04/20(金) 13:43:32.65ID:szszCkSU 関数を書く順番はどうでも良いよ
関数は全部グローバルに書いといて、ファイルの最後でmainを呼べばオーケー
関数は全部グローバルに書いといて、ファイルの最後でmainを呼べばオーケー
461デフォルトの名無しさん
2018/04/20(金) 13:46:22.55ID:szszCkSU ってか、>>453はdef funcのインデント下げれば動くだろう
462デフォルトの名無しさん
2018/04/20(金) 13:49:06.94ID:bSpMfw5T >>460
こういうこと?
# ===test.py===
def main():
x = "H"
y = "h"
for num in range(5):
func(x,str(num))
func(y,str(num))
def func(x,str):
print (x + "ello" + str)
def func2(y,str):
print (x + "ello" + str)
if __name__ == '__main__':
main()
こういうこと?
# ===test.py===
def main():
x = "H"
y = "h"
for num in range(5):
func(x,str(num))
func(y,str(num))
def func(x,str):
print (x + "ello" + str)
def func2(y,str):
print (x + "ello" + str)
if __name__ == '__main__':
main()
463デフォルトの名無しさん
2018/04/20(金) 13:56:09.67ID:bSpMfw5T464デフォルトの名無しさん
2018/04/20(金) 14:06:06.09ID:aZdt3WBn 呼ぶ側がfunc2になってないから動かないと思うけど、だいたいそういうこと
465デフォルトの名無しさん
2018/04/20(金) 15:27:31.37ID:DDZisBas >>457
そもそもpythonのdefは実行文だから
そもそもpythonのdefは実行文だから
466デフォルトの名無しさん
2018/04/20(金) 17:50:44.02ID:1rBd94+J spyder使ってるんだけど、defの中の変数が実行後の変数エクスプローラに表示されなくなるんだけど、表示させる方法ない?
もちろん実行時はその変数に値が格納されてるんだけど、defを出た瞬間に破棄されちゃうのかな。
いちいちprintしてデバッグするのめんどくさい
もちろん実行時はその変数に値が格納されてるんだけど、defを出た瞬間に破棄されちゃうのかな。
いちいちprintしてデバッグするのめんどくさい
467デフォルトの名無しさん
2018/04/20(金) 17:54:59.99ID:WJk0jxxj global
468デフォルトの名無しさん
2018/04/20(金) 19:16:25.14ID:9TOBYLLi デバッガで何しようとしとんのやこのアホはw
469デフォルトの名無しさん
2018/04/20(金) 21:19:08.77ID:bNn+sorS デバッガはブレークポイント仕掛けたり1行ずつステップ実行しながら変数をウォッチするものだと思うので
実行中にリアルタイムで表示変えるのは超高速なエミュレータでもないと…;
実行中にリアルタイムで表示変えるのは超高速なエミュレータでもないと…;
470デフォルトの名無しさん
2018/04/20(金) 22:57:24.69ID:Xu3EKzy5471デフォルトの名無しさん
2018/04/20(金) 23:08:48.76ID:k7m69UuR ログ吐くようにしとけよ
472デフォルトの名無しさん
2018/04/20(金) 23:18:23.85ID:k7m69UuR printめんどくさいとか言ってるがある程度のサイズのあるプログラムはログ残したほうが結局は作業がはかどる。
473遊園地
2018/04/20(金) 23:47:55.05ID:xu4ZA7YN ログはprintでは無いと言う事を肝に免じて置いて下さい。
474デフォルトの名無しさん
2018/04/21(土) 00:18:21.37ID:NjF1F28w >>473
ログをprintで書くことで悦に入っています。
ログをprintで書くことで悦に入っています。
475デフォルトの名無しさん
2018/04/21(土) 00:46:49.28ID:SeoWSMd7 >>472
printがめんどくさいと言う人ならログ出すように変更するのもめんどくさいになるだろう。
めんどくさいのいやだいやだで、(コードに手を入れないで)
ツール(デバッガ)で楽々出来るようにしたいにニダと言う感じだろう
実運用ではこのログはイラネなんだろうが。
printがめんどくさいと言う人ならログ出すように変更するのもめんどくさいになるだろう。
めんどくさいのいやだいやだで、(コードに手を入れないで)
ツール(デバッガ)で楽々出来るようにしたいにニダと言う感じだろう
実運用ではこのログはイラネなんだろうが。
476デフォルトの名無しさん
2018/04/21(土) 01:00:05.67ID:YdpuWmPR 肝に免じてどうする
肝は銘ずる(刻みつける)ものだ
肝は銘ずる(刻みつける)ものだ
477デフォルトの名無しさん
2018/04/21(土) 01:10:45.10ID:SeoWSMd7478デフォルトの名無しさん
2018/04/21(土) 01:40:30.99ID:jRiYYFVC p2exeって日本語は扱えないのですか?
479デフォルトの名無しさん
2018/04/21(土) 03:00:26.77ID:HWyKzA01 >>478
py2exeではなく?
py2exeではなく?
480デフォルトの名無しさん
2018/04/21(土) 03:26:11.52ID:jRiYYFVC >>479
間違えました、py2exeです。日本語文字をprintしようとすると
UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequence
って出るんですよね。コードをutf-8にしたり、文字列の先頭にuを付けてみましたが、きちんとexeが生成されません
間違えました、py2exeです。日本語文字をprintしようとすると
UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequence
って出るんですよね。コードをutf-8にしたり、文字列の先頭にuを付けてみましたが、きちんとexeが生成されません
481デフォルトの名無しさん
2018/04/21(土) 07:09:29.13ID:nN/toUY2 肝免わろすwww
482遊園地
2018/04/21(土) 07:29:31.66ID:fW+0Fovn >>477
あああーーーー
それは、アカンww
明治時代の初期までなら、隣の県に行けば
言葉が通じないのもザラだったしなwww
あああーーーー
それは、アカンww
明治時代の初期までなら、隣の県に行けば
言葉が通じないのもザラだったしなwww
483デフォルトの名無しさん
2018/04/21(土) 08:46:12.30ID:HWyKzA01 >>480
んでもってPythonは2系をつかってるのか?
あるいはWindowsのユーザー名が日本語なのか。
素直に3系つかうことと
py2exeするときはあきらめて日本語を含まないユーザー名を作って
そこからやる
んでもってPythonは2系をつかってるのか?
あるいはWindowsのユーザー名が日本語なのか。
素直に3系つかうことと
py2exeするときはあきらめて日本語を含まないユーザー名を作って
そこからやる
484デフォルトの名無しさん
2018/04/21(土) 15:11:14.68ID:Jlfar8cI py2exeは3.6に対応してないから、バイナリ作るならpyinstallerの方がいいと思う
セットアップファイル作る必要もなくて楽だし
セットアップファイル作る必要もなくて楽だし
485デフォルトの名無しさん
2018/04/21(土) 15:16:38.37ID:K9lD61bw bytesをfloat配列にする高速な方法無いでしょうか?
4バイトで1floatではなく、1バイトで0.0〜1.0の範囲の1floatの
同じ長さの配列が欲しいのですが
4バイトで1floatではなく、1バイトで0.0〜1.0の範囲の1floatの
同じ長さの配列が欲しいのですが
486デフォルトの名無しさん
2018/04/21(土) 16:19:45.05ID:Jlfar8cI pyinstallerで詰まったのは、pandasを使うスクリプトでエラーが出ることぐらい
pandasを 0.20.0 に落とせば通る様になると思う
pandasを 0.20.0 に落とせば通る様になると思う
487デフォルトの名無しさん
2018/04/21(土) 16:38:34.70ID:Zke6MJB8 >>485
精度落ちて良いならいくらでもある
精度落ちて良いならいくらでもある
488デフォルトの名無しさん
2018/04/21(土) 16:42:03.35ID:K9lD61bw >>487
精度は構いませんので是非
精度は構いませんので是非
489デフォルトの名無しさん
2018/04/21(土) 16:58:38.10ID:V+d3uri5 正の数だけ?
490デフォルトの名無しさん
2018/04/21(土) 17:04:24.09ID:yl7d1HXp 精度気にしないなら
0x00 = 0.0
0x01 = 0.004
0x02 = 0.008
...
0xFA = 1.0
0xFB〜0xFF は使わない
とか勝手に決めれば良いだけ
0x00 = 0.0
0x01 = 0.004
0x02 = 0.008
...
0xFA = 1.0
0xFB〜0xFF は使わない
とか勝手に決めれば良いだけ
491デフォルトの名無しさん
2018/04/21(土) 17:09:59.96ID:K9lD61bw >>489
0.0〜1.0の正の数だけです
0.0〜1.0の正の数だけです
492デフォルトの名無しさん
2018/04/21(土) 17:22:36.40ID:6J3G0l4e >>490
それ普通に255.0で割る方が速いだろw
それ普通に255.0で割る方が速いだろw
■ このスレッドは過去ログ倉庫に格納されています
