このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は 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
363aiueo
2018/04/15(日) 17:51:34.26ID:xfCmajNI >>362
プログラミングやったことない超初心者です。
スクレイピングでやりたいことがあるのでpythonインストールしてみました。
ライブラリとファイル名、かち合わないように気を付けます
わざわざありがとうございます!
プログラミングやったことない超初心者です。
スクレイピングでやりたいことがあるのでpythonインストールしてみました。
ライブラリとファイル名、かち合わないように気を付けます
わざわざありがとうございます!
364デフォルトの名無しさん
2018/04/15(日) 18:14:44.88ID:WdW8h5cl openpyxlを使ってExcelファイルのA2セルの値を取り出そうとしたんだけど
そのセルに書かれている計算式が取り出せました。
計算式ではなく、計算結果を取り出すにはどうしたらよいの?
こう書きました→print(ws['A2'].value)
そのセルに書かれている計算式が取り出せました。
計算式ではなく、計算結果を取り出すにはどうしたらよいの?
こう書きました→print(ws['A2'].value)
365デフォルトの名無しさん
2018/04/15(日) 18:33:21.95ID:5wGddKlA366デフォルトの名無しさん
2018/04/15(日) 22:39:51.61ID:UX4y5Mn1 ありがd
367デフォルトの名無しさん
2018/04/15(日) 23:29:55.35ID:9jzNqCls 長文になって申し訳ないけど、メソッドに関する質問。
1.Pythonで始めから使えるメソッド(.replace()とか)に呼び名はある?
ビルトインメソッド?、ビルトイン関数?、メソッド?それとも他の呼び名?
2.help()関数のようにビルトインメソッド(仮)の定義を見ることはできるか?
print(help(replace))と入力すると
>>>NameError: name 'replace' is not defined となるため見れない
3.ビルトインメソッド(仮)はなぜ存在しているのか?ビルトイン関数で代替できないのか?
メソッドがオブジェクト指向版の関数という自分の解釈なら、
メソッドはライブラリかユーザー定義用だけにしておいて、
ビルトインオブジェクト(クラス)のメソッドなんて用意するべきではないと思うから。
以上3点です。よろしくお願いします。
1.Pythonで始めから使えるメソッド(.replace()とか)に呼び名はある?
ビルトインメソッド?、ビルトイン関数?、メソッド?それとも他の呼び名?
2.help()関数のようにビルトインメソッド(仮)の定義を見ることはできるか?
print(help(replace))と入力すると
>>>NameError: name 'replace' is not defined となるため見れない
3.ビルトインメソッド(仮)はなぜ存在しているのか?ビルトイン関数で代替できないのか?
メソッドがオブジェクト指向版の関数という自分の解釈なら、
メソッドはライブラリかユーザー定義用だけにしておいて、
ビルトインオブジェクト(クラス)のメソッドなんて用意するべきではないと思うから。
以上3点です。よろしくお願いします。
368デフォルトの名無しさん
2018/04/15(日) 23:32:53.30ID:xpwShDOv help(str.replace)
369デフォルトの名無しさん
2018/04/15(日) 23:42:33.10ID:9jzNqCls370デフォルトの名無しさん
2018/04/15(日) 23:44:00.12ID:xpwShDOv 1.間違い
3.何が言いたいのか意味が判らない
3.何が言いたいのか意味が判らない
371デフォルトの名無しさん
2018/04/16(月) 00:48:43.62ID:+F/asDGP373デフォルトの名無しさん
2018/04/16(月) 12:31:15.81ID:xRFNapub ビルトイン型のメソッドはその型固有の機能だから
ビルトイン関数とは用途が違うんじゃないの
ビルトイン関数とは用途が違うんじゃないの
374デフォルトの名無しさん
2018/04/16(月) 13:13:36.14ID:qlfABgAK Ruby では、継承できて、インスタンスを作れる、class と、
継承もできず、インスタンスも作れない、module の2つがある
classに、moduleをインクルードして、機能を付け加えることを、Mix-in と言う
module内の関数は、多くのクラスで使えるような、汎用的なもの
継承もできず、インスタンスも作れない、module の2つがある
classに、moduleをインクルードして、機能を付け加えることを、Mix-in と言う
module内の関数は、多くのクラスで使えるような、汎用的なもの
375遊園地
2018/04/16(月) 16:33:02.84ID:AgptP9w5 Recognizing hand-written digits
画像ファイルを読み込んで結果だけ取得したい。
どの様なコードになりますか?
この場合は、421です。
http://fast-uploader.com/file/7079419507797/
画像ファイルを読み込んで結果だけ取得したい。
どの様なコードになりますか?
この場合は、421です。
http://fast-uploader.com/file/7079419507797/
376デフォルトの名無しさん
2018/04/16(月) 16:40:52.73ID:r1/f7Sud captcha禁止
377遊園地
2018/04/16(月) 17:43:27.26ID:AgptP9w5 これなら、大丈夫ですか?
http://fast-uploader.com/file/7079423736170/
http://fast-uploader.com/file/7079423736170/
378デフォルトの名無しさん
2018/04/16(月) 17:56:18.32ID:ZFIHRn8x >>376
ちなみに何で?
ちなみに何で?
379遊園地
2018/04/16(月) 18:50:38.80ID:AgptP9w5380デフォルトの名無しさん
2018/04/16(月) 19:33:30.30ID:gUfDVwYo url見てから回避余裕でした。アニ豚死ね
381デフォルトの名無しさん
2018/04/16(月) 20:14:00.57ID: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,:]の中身の画像これです
https://imgur.com/a/PViEJ
pix2pix
ttps://github.com/pfnet-research/chainer-pix2pix
ここの解説見ながらちょっとづつやってみたんですがほぼほぼわかってないです・・・。
ttps://spjai.com/pix2pix-image-generation/
windows 10です
updater.pyの70行辺りで
x_in[i,:] = xp.asarray(batch[i][0])
Exception in main training loop: Broadcasting failedというエラーが出ました
なんとかnumpyのコピーのエラーという事が分かったのですが
どう直したらいいのか分かりません・・・お助け下さい・・・
batch[0][0]とx_in[i,:]の中身の画像これです
https://imgur.com/a/PViEJ
pix2pix
ttps://github.com/pfnet-research/chainer-pix2pix
ここの解説見ながらちょっとづつやってみたんですがほぼほぼわかってないです・・・。
ttps://spjai.com/pix2pix-image-generation/
windows 10です
382デフォルトの名無しさん
2018/04/16(月) 20:37:00.64ID:OxnvPd0M エラーはわかるが、お前が何をやってるのか全くわからんから答える気にならん
383デフォルトの名無しさん
2018/04/16(月) 21:02:19.87ID:5B9l6nEL384遊園地
2018/04/16(月) 21:06:58.35ID:AgptP9w5 失礼ww IQ220ぐらい有るんですけど
>>375
が解りません
教えて下さい
http://fast-uploader.com/file/7079435955779/
ぶひぶひぃ ぶひうぃいぃぃぃぃいいっwwww
ぶひぃいいいいいいいいいいいいいいいwwwwwwwwwww
>>375
が解りません
教えて下さい
http://fast-uploader.com/file/7079435955779/
ぶひぶひぃ ぶひうぃいぃぃぃぃいいっwwww
ぶひぃいいいいいいいいいいいいいいいwwwwwwwwwww
385デフォルトの名無しさん
2018/04/16(月) 21:26:32.35ID:M9Gf/bCG プログラミング自体初心者&独学です
aizu online judgeを順に解いていっているのですが以下のコードでRuntime Errorが出てしまいました。
なにが悪いのかまったくわからないので教えてください!
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_4_B
pi = 3.14159265359
r = int(input())
area = pi*pi*r
length = pi*r*2
print('{:.5f}'.format(area),'{:.5f}'.format(length))
aizu online judgeを順に解いていっているのですが以下のコードでRuntime Errorが出てしまいました。
なにが悪いのかまったくわからないので教えてください!
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_4_B
pi = 3.14159265359
r = int(input())
area = pi*pi*r
length = pi*r*2
print('{:.5f}'.format(area),'{:.5f}'.format(length))
386遊園地
2018/04/16(月) 21:31:05.09ID:AgptP9w5 計算式が違う
387デフォルトの名無しさん
2018/04/16(月) 21:39:21.07ID:M9Gf/bCG 小学生からやり直します(汗)
以下に修正しても同じエラーになるんですがなぜでしょうか(泣)
pi = 3.14159265359
r = int(input())
area = r*r*pi
length = 2*r*pi
print('{:.6f}'.format(area),'{:.6f}'.format(length))
以下に修正しても同じエラーになるんですがなぜでしょうか(泣)
pi = 3.14159265359
r = int(input())
area = r*r*pi
length = 2*r*pi
print('{:.6f}'.format(area),'{:.6f}'.format(length))
388デフォルトの名無しさん
2018/04/16(月) 21:47:49.19ID:M9Gf/bCG なんかこれで通りました。
import math
r = float(input())
pi=math.pi
s = ( r ** 2 ) * pi
l = 2 * r * pi
print(s, l)
import math
r = float(input())
pi=math.pi
s = ( r ** 2 ) * pi
l = 2 * r * pi
print(s, l)
389遊園地
2018/04/16(月) 21:49:02.84ID:AgptP9w5 試したけど、受け取り値がint型だけど、実際のテストケースではフロート型
390遊園地
2018/04/16(月) 21:53:12.17ID:AgptP9w5 既に解決してるけど、12.3が123として計算されてるな。
391デフォルトの名無しさん
2018/04/16(月) 23:24:15.51ID:ovdjG7M8 >>390
ありがとうございました!
ありがとうございました!
392381
2018/04/17(火) 00:13:29.86ID:3Zz6leMl >>382
すいませんどこまで何をやったか、という事ですよね???
解説サイトにあったものをfacade_dataset.pyに丸っと上書き保存して
色のみの画像500枚をfacade/labelフォルダー
線のみの画像を500枚をfacade/baseフォルダーにいれて
同じように評価用画像もtest_dにdetabaseからとれるようにちょっと変えて
python train_facade.py -g 0 -o image --snapshot_interval 100実行したところエラーがでたって感じです
(学習用と教師用の画像は500枚用意はしたんですが
動くかどうかも怪しいのでいまは三枚づつしかフォルダーに入れてません)
すいませんどこまで何をやったか、という事ですよね???
解説サイトにあったものをfacade_dataset.pyに丸っと上書き保存して
色のみの画像500枚をfacade/labelフォルダー
線のみの画像を500枚をfacade/baseフォルダーにいれて
同じように評価用画像もtest_dにdetabaseからとれるようにちょっと変えて
python train_facade.py -g 0 -o image --snapshot_interval 100実行したところエラーがでたって感じです
(学習用と教師用の画像は500枚用意はしたんですが
動くかどうかも怪しいのでいまは三枚づつしかフォルダーに入れてません)
393デフォルトの名無しさん
2018/04/17(火) 01:55:18.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()
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か [ぐれ★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★8 [蚤の市★]
- 「中国人の訪日熱は冷めた」 人気旅行先から日本外れる 14日で自粛呼びかけ1カ月 ★3 [蚤の市★]
- 京都のホテル大幅値下げ 訪日中国人客、年1000万人目前で急ブレーキ [蚤の市★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★3 [蚤の市★]
- 【福岡】「50歳くらいの男性が倒れている」血を吐いた状態で歩道に倒れている女性見つかる 女性はその後死亡 事件と事故の両面で捜査 [ぐれ★]
- 議員定数削減法案、廃案へwmwmwmmwmwmwmw [834922174]
- 【悲報】高市首相「閣僚時代は怖くて政治資金パーティーを企画できなかった」⇒やってました [115996789]
- 【悲報】高市早苗、天皇末裔説wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww [904880432]
- 日本人、株高により消費マインドが旺盛になる!今日の買い物は明日の株高で実質ゼロ円! [782460143]
- 保育士、勤務する保育園のお着替えタイムを撮影し逮捕。レッサーパンダ並みの知能しかなさそう [389326466]
- 【悲報】高齢者、マルチコピー機で自分の逮捕状を印刷してしまう [394133584]
