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

■ このスレッドは過去ログ倉庫に格納されています
2018/03/17(土) 16:32:25.91ID:S1lkLDnv
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その36
http://mevius.2ch.net/test/read.cgi/tech/1514805522/
363aiueo
垢版 |
2018/04/15(日) 17:51:34.26ID:xfCmajNI
>>362
プログラミングやったことない超初心者です。
スクレイピングでやりたいことがあるのでpythonインストールしてみました。

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

計算式ではなく、計算結果を取り出すにはどうしたらよいの?
こう書きました→print(ws['A2'].value)
2018/04/15(日) 18:33:21.95ID:5wGddKlA
>>364
使ったことないけどここら辺の話かな?
http://cloudsquare.jp/hibiki/blog/2018/01/30/openpyxl/
366デフォルトの名無しさん
垢版 |
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点です。よろしくお願いします。
368デフォルトの名無しさん
垢版 |
2018/04/15(日) 23:32:53.30ID:xpwShDOv
help(str.replace)
369デフォルトの名無しさん
垢版 |
2018/04/15(日) 23:42:33.10ID:9jzNqCls
>>368
ほんとだ。ありがとうございます。
メソッドを呼び出す際は、ここでもオブジェクトが必要だったんですね。
そして、print()関数は不要でしたねすみません。
370デフォルトの名無しさん
垢版 |
2018/04/15(日) 23:44:00.12ID:xpwShDOv
1.間違い
3.何が言いたいのか意味が判らない
2018/04/16(月) 00:48:43.62ID:+F/asDGP
>>370
1.はクラスメソッド、スタティックメソッドのことを言っているような気がするが、
XXXclass.replace()なクラスメソッド、スタティックメソッドはあったっけな感じだが....

>>367
3.に関してはPythonを作っている奴らにきくのが一番良い
ついでにjava,rubyも同様だからjava,rubyスレでも尋ねたほうが良いかも
372遊園地
垢版 |
2018/04/16(月) 07:50:52.76ID:AgptP9w5
>>367
3
クラス継承したら良いと思う。
2018/04/16(月) 12:31:15.81ID:xRFNapub
ビルトイン型のメソッドはその型固有の機能だから
ビルトイン関数とは用途が違うんじゃないの
2018/04/16(月) 13:13:36.14ID:qlfABgAK
Ruby では、継承できて、インスタンスを作れる、class と、
継承もできず、インスタンスも作れない、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/
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/
2018/04/16(月) 17:56:18.32ID:ZFIHRn8x
>>376
ちなみに何で?
379遊園地
垢版 |
2018/04/16(月) 18:50:38.80ID:AgptP9w5
>>378
https://animeflv.net/ver/42639/getsuyoubi-no-tawawa-1

OK? Low grade
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です
382デフォルトの名無しさん
垢版 |
2018/04/16(月) 20:37:00.64ID:OxnvPd0M
エラーはわかるが、お前が何をやってるのか全くわからんから答える気にならん
383デフォルトの名無しさん
垢版 |
2018/04/16(月) 21:02:19.87ID:5B9l6nEL
>>382
すいませんでした
参考にしたサイトにある魚の線画を描くと魚っぽい写真になるの逆で
カラーの線画のない画像から黒い線画を書かせるという事がやりたいです。
384遊園地
垢版 |
2018/04/16(月) 21:06:58.35ID:AgptP9w5
失礼ww IQ220ぐらい有るんですけど

>>375
が解りません

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


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

 ぶひぃいいいいいいいいいいいいいいいwwwwwwwwwww
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))
386遊園地
垢版 |
2018/04/16(月) 21:31:05.09ID:AgptP9w5
計算式が違う
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))
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)
389遊園地
垢版 |
2018/04/16(月) 21:49:02.84ID:AgptP9w5
試したけど、受け取り値がint型だけど、実際のテストケースではフロート型
390遊園地
垢版 |
2018/04/16(月) 21:53:12.17ID:AgptP9w5
既に解決してるけど、12.3が123として計算されてるな。
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枚用意はしたんですが
動くかどうかも怪しいのでいまは三枚づつしかフォルダーに入れてません)
2018/04/17(火) 01:55:18.50ID:PvksN2Vg
>>392
なんかすごいことをやっているな。俺には出来るレベルの物ではないな。
ただ、>>381のコードはそっくりそのままgithubよりもって来た物なのか?
それとも何がしらの変更を加えている?
>>381は、コードはgithubのままだけどそれだとエラー出るからエラー出ないように修正したいてことかな
ひょっとしたら、中身の画像によっては要コード修正なのかもしれないのかもしれないが
394デフォルトの名無しさん
垢版 |
2018/04/17(火) 04:43:58.56ID:QMWYQNUe
>>385
print(f'{area:.5f} {length:.5f}')
2018/04/17(火) 05:33:09.17ID:Z6U7XFnZ
>>381
ブロードキャスト出来ない状態だから、テンソル(numpyアレイ)の次元が合ってないんだろう
元ソースと自分のプログラムで両辺のshapeをプリントかデバッガで見て比較すれば間違えた箇所に気付くと思う

それでもダメなら、もっと簡単なmnistサンプルとかでnumpyの処理を勉強し直した方がいいかも
396遊園地
垢版 |
2018/04/17(火) 11:03:58.69ID:nd6YqIWE
darknetで検出した結果だけをキャプチャーするのって、どうするの?
ダメなら、テラテイルで聞くわww
397381
垢版 |
2018/04/17(火) 22:12:58.91ID:3Zz6leMl
>>393
いくつか変更というか、
どちらかが途中で変更されたみたいで
そのままだとエラー出る感じです

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

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

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

python入れ直したり、anacondaで入れ直したりしたけど改善されないです
2018/04/18(水) 09:05:12.90ID:IyxAGhJK
何かが、自動update されたのかも

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

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

clss XX():
def YY()
処理

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


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

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


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


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

以下ブロックスの詳細です!
http://saikoro-table.com/2016/12/05/blokus/
407遊園地
垢版 |
2018/04/18(水) 23:32:03.53ID:EkJY2Tio
??

 ??? ?? ???


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

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

追記です。ボードの情報は board[X][Y]で与えられます。また、置ける場所をリスト?で返してくれる関数も与えられています。
ただこれをただ使ってるだけだと弱くて弱くて…笑
ということで、相手のピースとピースのつなぎ目を狙わせたいのですが、(そうすると強い)
いい方法解答お願いします。
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だとどうすればいいかと思って
ショートカットキーで移動したり方法はあるけど、ファイルを開いてちょっと編集して閉じるみたいな使い方をすると意外とストレスで
2018/04/19(木) 00:20:52.00ID:4n9OXawP
>>403
関数の中にさらにインデントしたdefで関数を書けるから、ちょっとしたマクロっぽいことをしたい時は使う場所の近くに内部関数定義してる
あとは初心者には難しめだけどラムダ式とか
2018/04/19(木) 00:54:21.32ID:zrUS025p
>>413
このスレで有名になったperlさん?
416遊園地
垢版 |
2018/04/19(木) 02:43:06.18ID:+uu+DOll
>>413
単純にリストにしたら?

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


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

https://ideone.com/4X41rB

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


最後のfor文は、アイデアが出ない。
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() # この時点で名前解決出来ていればエラーにならない
2018/04/19(木) 03:39:32.00ID:4mrmpy84
ブロックスについては、将棋・囲碁みたいに、評価基準を考える必要がある

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

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

AI の研究は、何年も掛かる
2018/04/19(木) 03:50:24.69ID:4mrmpy84
>>413
別のファイルに分けて、import すれば?

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

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

普通、動的言語は関数定義を上に書かないと、関数を呼び出せない。
例外は、JavaScript で、関数の巻き上げ
2018/04/19(木) 04:18:53.20ID:T1rC3373
>>406
つなぎ目ならx,yからx+1,y+1までの4箇所の判定で対角2つ埋まってて2つ空いてる所を探せば良さそう
置ける場所リストの周辺の盤面を検索して、対角パターンを優先して、さらに出来るだけ大きいブロックを選べばいいと思う

全部の角の判定が正確に出来なくても、部分的にでも判定出来ればそこそこ強くなると思う
2018/04/19(木) 04:24:10.12ID:T1rC3373
>>420
訂正
対角2つが敵、1つが自分、1つが空白だった
422デフォルトの名無しさん
垢版 |
2018/04/19(木) 08:55:16.93ID:5y+3njqT
>>418

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

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

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

って感じで前途多難です( i _ i )
2018/04/19(木) 09:37:46.23ID:4mrmpy84
評価基準を決めるには、何年も掛かる。
点数を決めて、敵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+3njqT
>>424

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

>>425

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

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

>>427

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

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

まず、コミュニティへ行って、AI 同士で、何千局も対戦して、
微調整を続けないと、無理だろ
2018/04/19(木) 12:19:39.36ID:2nanKMvG
>>429
今時そんな殿様商売あるのかあやかりてぇ
いいなー先生様は
2018/04/19(木) 12:23:58.79ID:4mrmpy84
強いAI を作るのは無理だから、

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

それで良い
2018/04/19(木) 13:12:52.70ID:f7DkAV9f
AIは可能な選択肢のうち、0点以上の最高得点手を打つ。同点時はランダム。初期値は0
AI同士に勝負させて、打った手は全部保存しておく。最終的に勝ったほうは手のそれぞれにプラス点、負け側はマイナス点
ってやろうぜw
それを二週間延々繰り返させたら強くなるんじゃなーい?
2018/04/19(木) 15:02:28.67ID:c48O4SX1
どんなゲームだか知らんけど
とある局面のとある手に対して、
その後は両者ランダムに打って終わらせる試行を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欄大学か、なんちゃって専門学校かな?
438デフォルトの名無しさん
垢版 |
2018/04/19(木) 17:59:06.99ID:hcjjAGnl
>>437

実験の一端でそもそもpythonもこの授業が初めてです。丸投げされました。
439デフォルトの名無しさん
垢版 |
2018/04/19(木) 18:01:31.06ID:hcjjAGnl
回答していただいた方ありがとうございます。
参考になります。
440デフォルトの名無しさん
垢版 |
2018/04/19(木) 18:40:08.42ID:VWrPY/vr
>>429
yahoo知恵袋の方がいいよ
441遊園地
垢版 |
2018/04/19(木) 18:44:18.50ID:+uu+DOll
大学設定は嘘だな。

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

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

行ってみます!

>>441

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

まあルール部分は用意されてるようだからその分割り引くべきかもだけど。
2018/04/19(木) 21:02:34.32ID:uEzvz53i
2週間なら>>436くらいが適当だとおもう。
あんま強くならないだろうけど。
446遊園地
垢版 |
2018/04/19(木) 22:34:07.23ID:+uu+DOll
(^p^)「あうあうあーwwwwwwww」
2018/04/19(木) 23:25:56.00ID:K4+BGrIF
>>416
コード紹介ありがとうございます。
まだ内容がしっかり決まって居無くってちょっと書き換えたいという時にはちょっと大げな感じになりますね
ある程度のコードの中が決まっていると良さそうですね


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


>>419
関数が巻き上げられるのはそこそこ一般的だと思っていました
IDEだとそんなこともできるのですか・・・
大昔、Exlipseを使っていたのですが重たくって重たくって使わなくなっていましたが検討してみようと思います
ありがとうございます。
2018/04/19(木) 23:41:15.47ID:FEDLlhkO
eclipse
2018/04/20(金) 01:21:16.01ID:p7k7S/mH
新年度始まって間もないのにpythonでブロックス+AIの課題が出るような学科は情報系の学科なのかな。
情報系の学科なら今流行りの機械学習系のことも普通にやるんだろうな
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)
452デフォルトの名無しさん
垢版 |
2018/04/20(金) 10:29:12.98ID:WJk0jxxj
日本の大学じゃなさそう
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
454デフォルトの名無しさん
垢版 |
2018/04/20(金) 12:18:17.84ID:9v7e203Y
ブロックスてそんなに有名なゲームなんか?聞いたことないわ
455デフォルトの名無しさん
垢版 |
2018/04/20(金) 12:29:06.14ID:WJk0jxxj
これか
https://studio.beatnix.co.jp/
2018/04/20(金) 12:52:36.38ID:DDZisBas
>>453
> def func(x,str):
の前に
> func(str(num))
の呼び出ししたらそりゃそうなるわな
2018/04/20(金) 12:59:05.08ID:CLWy02Nm
えっパイソンってホイストないの?
c系言語には大抵あるのに。
抽象度の高い処理頭の方に書いて、使用関数の実装はお尻のほうに置いとけて便利なのに
2018/04/20(金) 13:00:03.95ID:bSpMfw5T
>>456
ありがと
全部main()に入れるんだと勝手に思い込んでた
2018/04/20(金) 13:02:16.40ID:bSpMfw5T
Perlと比べてイライラすることがあったけど、
{
}
が不要なのはサクサク書けて良いな
Pythonの良いところまた1つ見つけた


>>457
perlしか知らないけど普段そういった使い方してたからあれば便利だよねー
2018/04/20(金) 13:43:32.65ID:szszCkSU
関数を書く順番はどうでも良いよ
関数は全部グローバルに書いといて、ファイルの最後でmainを呼べばオーケー
2018/04/20(金) 13:46:22.55ID:szszCkSU
ってか、>>453はdef funcのインデント下げれば動くだろう
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()
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況