Python の宿題ここで ..
714:デフォルトの名無しさん
09/01/04 23:06:46
# -*- coding: utf-8 -*-
import tkinter as Tk
from tkinter.simpledialog import SimpleDialog
import random
class Application:
FONT = ("MSゴシック", 20)
OPS = [("+", lambda x, y: x + y),
("−", lambda x, y: x - y),
("×", lambda x, y: x * y)]
def __init__(self):
self.root = Tk.Tk()
self.root.title("100マス計算")
self.root.option_add("*font", self.FONT)
frame = Tk.Frame(self.root)
frame.pack(side=Tk.TOP)
self.op_button = Tk.Button(frame, command=self.change_op)
self.op_button.grid(row=0, column=0)
self.entries = {}
self.tate_labels = []
self.yoko_labels = []
for i in range(10):
label = Tk.Label(frame, text="0")
label.grid(row=i+1, column=0)
self.tate_labels.append(label)
label = Tk.Label(frame, text="0")
label.grid(row=0, column=i+1)
self.yoko_labels.append(label)
715:714の続き
09/01/04 23:08:22
for j in range(10):
entry = Tk.Entry(frame, width=4)
entry.grid(row=i+1, column=j+1)
self.entries[(i, j)] = entry
button = Tk.Button(self.root, text="出題", command=self.new)
button.pack(side=Tk.LEFT)
button = Tk.Button(self.root, text="終了", command=self.root.quit)
button.pack(side=Tk.RIGHT)
button = Tk.Button(self.root, text="確認", command=self.check)
button.pack(side=Tk.BOTTOM)
self.easy = True
self.debug = False
self.op = 0
self.new()
self.root.mainloop()
def change_op(self):
self.op = (self.op + 1) % 3
self.new()
def new(self):
label, func = self.OPS[self.op]
self.op_button.config(text=label)
if self.easy:
self.tate = list(range(1, 11)); random.shuffle(self.tate)
self.yoko = list(range(1, 11)); random.shuffle(self.yoko)
else:
self.tate = [random.randint(11, 99) for i in range(10)]
self.yoko = [random.randint(11, 99) for i in range(10)]
for i, num in enumerate(self.tate):
self.tate_labels[i].config(text=str(num))
for i, num in enumerate(self.yoko):
self.yoko_labels[i].config(text=str(num))
716:715の続き
09/01/04 23:09:53
for i in range(10):
for j in range(10):
entry = self.entries[(i, j)]
entry.config(bg="white")
entry.delete(0, Tk.END)
if self.debug:
for i in range(10):
for j in range(10):
answer = func(self.tate[i], self.yoko[j])
entry = self.entries[(i, j)]
entry.insert(0, str(answer))
def check(self):
label, func = self.OPS[self.op]
count = 0
for i in range(10):
for j in range(10):
entry = self.entries[(i, j)]
if entry.get() == str(func(self.tate[i], self.yoko[j])):
entry.config(bg="white")
else:
entry.config(bg="red")
count += 1
if count == 0:
msg = "全問正解\(^o^)/\nよくできました"
else:
msg = "赤色の{0}マスが間違っています".format(count)
d = SimpleDialog(self.root, text=msg, buttons=["OK"])
d.go()
Application()
717:デフォルトの名無しさん
09/01/04 23:12:09
禿げしくありがとうございます!!
718:714-716
09/01/04 23:21:38
Python 3.0 で書いてみたお。2.x とほとんど変わらない希ガス。
self.easy を偽にすると11〜99の数字で出題されるようになるお。
self.debug を真にすると自動的に正答が記入されるお。
Windows 以外の環境では FONT の値を適当にいじる必要があると思われ。
回答時はタブキーを利用して次のマスに移動すると良さげ。
足し算をすこしやってみたけどイライラして神経衰弱になりそうだったお orz
719:デフォルトの名無しさん
09/01/05 00:07:46
2桁の掛け算はつらいですね
720:デフォルトの名無しさん
09/01/05 00:14:13
死ぬな これ・・・
721:デフォルトの名無しさん
09/01/05 00:34:20
こんなのの動作確認したくない
722:デフォルトの名無しさん
09/01/05 00:59:22
学校の宿題で必須なんです、お願いしますm(_ _)m
723:デフォルトの名無しさん
09/01/05 01:06:13
もれ2桁の掛け算の仕方忘れてるw
724:デフォルトの名無しさん
09/01/05 05:52:46
Rubyスレからきますた。即レスで回答してて吹いたww
これは負けられんwww
725:デフォルトの名無しさん
09/01/05 08:24:56
煽らなくていいから
726:デフォルトの名無しさん
09/01/05 09:52:39
はあ?wwwみなぎってきたwww
727:デフォルトの名無しさん
09/01/05 14:33:30
KO ,
OK、○十く,
728:デフォルトの名無しさん
09/01/07 21:51:12
足し算をすこしやってみたけどイライラして神経衰弱になりそうだったお orz
729:デフォルトの名無しさん
09/01/08 00:54:33
だおだおうっせーお
730:デフォルトの名無しさん
09/01/08 15:37:11
彼氏が3.0なのにprint "hoge"してた。
別れたい。
731:デフォルトの名無しさん
09/01/08 19:29:37
童貞でネカマって死んだ方がいいよな。
732:デフォルトの名無しさん
09/01/08 22:22:39
いいや、
殺伐とした世の中で
「ときめき」みたいなものを感じてくれるから
生きていて欲しい。
733:デフォルトの名無しさん
09/01/08 22:40:59
天国のお花畑で生きてくれ。
734:デフォルトの名無しさん
09/01/08 23:36:35
おい、上の方にあるプログラミング自慢みたいなコードは
みんなのpythonに大体載っていますか?
735:デフォルトの名無しさん
09/01/08 23:38:39
あれを読んだだけでTkが使えるようにはならないから安心しやがれ
736:デフォルトの名無しさん
09/01/08 23:53:38
必要になったら書けばいいか
別にWEBアプリとかいらないし
737:デフォルトの名無しさん
09/01/09 00:05:23
お花畑からご苦労様です。
738:デフォルトの名無しさん
09/01/09 00:14:46
みんなのpythonは入門書だろ
739:デフォルトの名無しさん
09/01/09 11:43:59
732も童貞ネカマの仲間だな
一緒にいってこいや(w
740:デフォルトの名無しさん
09/01/11 11:47:17
努力が必要
741:デフォルトの名無しさん
09/01/22 02:17:17
そこでIronPythonですよ
742:デフォルトの名無しさん
09/01/22 05:43:34
はじぱい 第2版 (2004/11) \5,040
URLリンク(www.amazon.co.jp)
はじぱい原著 3rd Edition (2008/07/16) $26.39
URLリンク(www.amazon.com)
恥ぱい 初犯 (2007/11) \1,995
URLリンク(www.amazon.co.jp)
恥ぱいネットワーク 初版 (2008/06) \1,995
URLリンク(www.amazon.co.jp)
恥ぱい3 初版 (2009/01) \1,995
URLリンク(www.kohgakusha.co.jp)
恥ぱいが3.0用になったんですね
743:デフォルトの名無しさん
09/01/22 10:52:51
URLリンク(www.amazon.co.jp)
ランキングがついてないってことは「一冊も売れてない」ということか。。。
744:デフォルトの名無しさん
09/01/26 00:49:52
Python Network Programing といえばこっち
URLリンク(www.amazon.com) (2004/08/17 $36.51)
URLリンク(www.amazon.co.jp) (2004/08/30 \3,749) 値下がりしたっぽい
745:デフォルトの名無しさん
09/01/26 01:07:49
URLリンク(www.amazon.co.jp) 恥ぱい
163位 ─ 本 > コンピュータ・インターネット > 一般・入門書 > プログラミング入門書
574位 ─ 本 > コンピュータ・インターネット > インターネット・Web開発 > Web開発
1832位 ─ 本 > コンピュータ・インターネット > プログラミング
URLリンク(www.amazon.co.jp) 恥ぱいネットワーク
89位 ─ 本 > コンピュータ・インターネット > 一般・入門書 > ネットワーク入門書
230位 ─ 本 > コンピュータ・インターネット > ネットワーク
277位 ─ 本 > コンピュータ・インターネット > 一般・入門書 > プログラミング入門書
URLリンク(www.amazon.co.jp) 恥ぱい3
3020位 ─ 本 > コンピュータ・インターネット
URLリンク(www.amazon.co.jp) みんPy
9位 ─ 本 > コンピュータ・インターネット > 一般・入門書 > プログラミング入門書
28位 ─ 本 > コンピュータ・インターネット > インターネット・Web開発 > Web開発
83位 ─ 本 > コンピュータ・インターネット > プログラミング
URLリンク(www.amazon.co.jp) みんPy Webアプリ編
377位 ─ 本 > コンピュータ・インターネット > プログラミング
URLリンク(www.amazon.co.jp) TurboGears + Python
537位 ─ 本 > コンピュータ・インターネット > 出版社別 > 技術評論社
URLリンク(www.amazon.co.jp) 開発のプロが教える標準Django完全解説
1427位 ─ 本 > コンピュータ・インターネット > プログラミング
URLリンク(www.amazon.co.jp) Jythonプログラミング
402位 ─ 本 > コンピュータ・インターネット > 出版社別 > 毎日コミュニケーションズ
746:デフォルトの名無しさん
09/01/26 08:39:45
恥ぱい3は新刊なのにこんなに売れなくて大丈夫なのか?
作者首くくるようだな。
747:デフォルトの名無しさん
09/01/26 12:32:21
ランキング何位とかどうやって調べてんだ?
748:デフォルトの名無しさん
09/01/26 12:56:49
ランキングだけを見ると、みんPyはクソ本ということでFA ?
749:デフォルトの名無しさん
09/01/26 19:20:32
7749
750:デフォルトの名無しさん
09/01/27 17:52:01
>>748
みんPy以外がクソに見える。
恥ぱい3とかJythonとか売れてなさ過ぎ。
751:デフォルトの名無しさん
09/01/27 18:46:14
URLリンク(www.nikoli.co.jp)
1.「スリザーリンク」を解くプログラムを書いてください
2.適当な難易度で問題を出題するプログラムを書いてください
752:デフォルトの名無しさん
09/01/27 19:15:38
つURLリンク(www.nikoli.com)
じゃなくて勝手に線引けってこと?それってつまんなくね?
753:デフォルトの名無しさん
09/01/27 20:22:29
質問させてください。
Linux上で(pythonのバージョンは2.3)
mkdir()の引数を変数でパスを指定した正常にディレクトリが
作られるんですが、
windows上で(バージョンは2.6)
同じようにすると、パス中の\が\\に変換されてしまってるようで
うまくいきません。
ちなみにprintで変数を出力するとちゃんとそのままのパスが出てきます。
windows上ではどうすればいいんですか?
754:デフォルトの名無しさん
09/01/27 20:25:58
日本語で桶
755:デフォルトの名無しさん
09/01/27 20:43:01
r"dirname\filename"
"dirname\\filename"
"dirname/filename"
756:753
09/01/27 20:52:48
ごめんなさい。わかりにくくて。
import sys
import os
f = open(sys.argv[1],"r")
for li in f.readlines():
li.rstrip("\n")
abc=os.path.dirname(sys.argv[1])
os.mkdir(os.path.join(abc,li))
txtファイルに作りたいフォルダ名がいくつかかかれていて、
それを同じフォルダ内に作りたいんです。
>>755
そのパス自体をsys.argvから受け取ってる場合はrはどう付ければいいんですか?
757:756
09/01/27 21:33:26
os.mkdir(r""+os.path.join(abc,li))
としてみました。が変わりませんでした…。
758:756
09/01/27 21:44:13
ごめんなさい。自己解決しました。\nの処理が不完全だったのが原因でした。
エラー表示を見たら\が\\となってたのでてっきりそれが原因かと…。
お騒がせしました。
759:デフォルトの名無しさん
09/01/27 22:06:25
never mind
760:デフォルトの名無しさん
09/01/28 02:23:52
def Okeru(Baseban,i):
Ura=[
[(1,2,3,4,5),(6,12,18,24,30),(7,14,21,28,35)],[(2,3,4,5),(7,13,19,25,31),(8,15,22,29)],
[(3,4,5,),(1,0),(8,14,20,26,32),(9,16,23),(7,12)],[(4,5),(2,1,0),(8,14,20,26,32),(7,12),(9,16,23)],
[(3,2,1,0),(10,16,22,28,34),(9,14,19,24)],[(4,3,2,1,0),(11,17,23,29,35),(10,15,20,25,30)],
[(7,8,9,10,11),(12,18,24,30),(13,20,29,34)],[(8,9,10,11),(13,19,25,31),(14,21,28,35)],
[(9,10,11),(7,6),(14,20,26,32),(13,18),(15,22,29)],[(10,11),(8,7,6),(15,21,29,35),(14,19,24),(16,23)],
[(9,8,7,6),(16,22,28,34),(15,20,25,30)],[(10,9,8,7,6),(17,23,29,35),(16,21,26,31)],
[(13,14,15,16,17),(6,0),(18,24,30),(7,2),(19,26,33)],[(14,15,16,17),(7,1),(19,25,31),(8,3),(20,29,34),()],[],[],
[(15,14,13,12),(10,4),(16,22,28,34),(9,2),(21,26,31)],[(16,15,14,13,12),(11,5),(23,29,35),(10,3),(22,27,32)],
[(19,20,21,22,23),(12,6,0),(18,24,30),(13,8,3),(25,32)],[(20,21,22,23),(13,7,1),(25,31),(14,9,4),(26,33)],[],[],
[(21,20,19,18),(16,10,4),(28,34),(15,8,1),(27,31)],[(22,21,20,19,18),(17,11,5),(29,35),(16,9,2),(28,33)],
[(25,26,27,28,29),(19,13,7,1),(18,12,6,0)],[(26,27,28,29),(19,13,7,1),(20,15,10,5)],
[(27,28,29),(25,24),(20,14,8,2),(19,12),(21,16,11)],[(26,25,24),(28,29),(21,15,9,3),(20,13,6),(22,17)],
[(27,26,25,24),(22,16,10,4),(21,14,7,0)],[(28,27,26,25,24),(23,17,11,5),(22,15,8,1)],
[(31,32,33,34,35),(24,18,12,6,0),(25,20,15,10,5)],[(32,33,34,35),(25,19,13,7,1),(26,21,16,11)],
[(31,30),(33,34,35),(26,20,14,8,2),(25,18),(27,22,17)],[(32,31,30),(34,35),(27,21,15,9,3),(28,23),(26,19,12)],
[(33,32,31,30),(28,22,16,10,4),(27,20,13,7,0)],[(34,33,32,31,30),(29,23,17,11,5),(28,21,14,7,0)]]
761:デフォルトの名無しさん
09/01/28 02:25:10
Banlist=[]
for cnt in range(36):
if Baseban[cnt]==0:
matome=[]
for zyun in Ura[cnt]:
itizi=[]
for x in zyun:
if Baseban[x]==0:
break
elif Baseban[x]==i:
matome+=itizi
break
else:
itizi+=[x]
if matome!=[]:
Copyban=Baseban[:]
for x in matome:
Copyban[x]=i
Copyban[cnt]=i
Banlist+=[Copyban]
return Banlist
def Ura(ban):
copyban=[]
for cnt in ban:
copyban+=[-cnt]
return copyban
762:デフォルトの名無しさん
09/01/28 02:26:13
すみません張るの失敗しました。
763:デフォルトの名無しさん
09/01/28 02:32:59
URLリンク(www11.uploader.jp)
これは6×6マスのオセロをプレイした時に分岐する数を数えるプログラムなんですが、
途中でメモリが足りなくなってフリーズしてしまいます。
どうにかpickleを使ってフリーズせずに最後まで数える事ができるプログラムにできないでしょうか?
自分で試行錯誤してみたのですがどうしても上手くいきませんでした。
764:デフォルトの名無しさん
09/01/28 08:09:42
事故解決しました
お騒がせしました
765:デフォルトの名無しさん
09/01/28 11:18:28
自己解決してませんが。
お願いします。答えをください。
766:デフォルトの名無しさん
09/01/28 13:26:55
自己解決禁止
767:デフォルトの名無しさん
09/01/28 15:44:47
自己解決しても張ったほうがいいですか?
とても見栄えのいいものじゃないんで恥ずかしいんですが・・・
768:デフォルトの名無しさん
09/01/28 18:19:03
/\___/\
/ / ヽ ::: \
| (●), 、(●)、 |
| ,,ノ(、_, )ヽ、,, |
| ,;‐=‐ヽ .:::::|
\ `ニニ´ .:::/
/`ー‐--‐‐―´´\
.n:n nn
nf||| | | |^!n
f|.| | ∩ ∩|..| |.|
|: :: ! } {! ::: :|
ヽ ,イ ヽ :イ
769:デフォルトの名無しさん
09/01/29 00:46:02
自己解決厨はまだ粘着してたのか。
770:デフォルトの名無しさん
09/01/29 13:49:54
>>763
ちらっと走らせてみたけど、幅優先でやってるんじゃ?
10手目(?)ですら264994個も状態がある。
天文学的な容量のHDDでも持ってるんなら別だけど、
pickleとかじゃ解決しないような気がする。
771:デフォルトの名無しさん
09/01/29 22:58:12
>>751-752
レベル高すぎ
もう少し簡単なのにしてくれないと誰もこなせないよ
772:デフォルトの名無しさん
09/01/29 23:00:44
>>771
スレリンク(tech板:402番)
773:デフォルトの名無しさん
09/01/30 12:34:40
>>747
書籍のページにランキングがあるんだよ。
総合ランキングを並べてみるな。
URLリンク(www.amazon.co.jp) 恥ぱい
126,738位
URLリンク(www.amazon.co.jp) 恥ぱいネットワーク
400,898位
URLリンク(www.amazon.co.jp) 恥ぱい3
13,868位
URLリンク(www.amazon.co.jp) みんPy
4,261位
URLリンク(www.amazon.co.jp) みんPy Webアプリ編
102,274位
URLリンク(www.amazon.co.jp) TurboGears + Python
295,137位
URLリンク(www.amazon.co.jp) 開発のプロが教える標準Django完全解説
102,570位
URLリンク(www.amazon.co.jp) Jythonプログラミング
41,324位
774:デフォルトの名無しさん
09/01/30 13:49:15
>書籍のページにランキングがあるんだよ
そのランキングを(Amazonの中のひとが)どうやって出してるかって話では?
775:デフォルトの名無しさん
09/01/30 13:52:11
注文履歴見りゃ判るだろうに
776:デフォルトの名無しさん
09/01/30 14:05:17
わろす
777:デフォルトの名無しさん
09/01/30 14:05:40
>>745
どの部門に入っているかで順位入れ替わる可能性あるのか
部門新設するようなネタなら1位狙える訳だ
778:デフォルトの名無しさん
09/01/30 14:07:52
総合ランキングで比べないと意味がないよね。
779:デフォルトの名無しさん
09/01/30 14:52:26
>>773ではぶっちぎり再会の
>URLリンク(www.amazon.co.jp) 恥ぱいネットワーク
>400,898位
が
>>745では比較的検討しているように見える
これはネットワーク系書籍が少ないことに由来するためであろうか
同部門の他の書籍(というか部門のかたまりのようなもの)が総合ランクで
どの辺の位置にいるのかも考慮する必要があるね
あるいは同部門の他の書籍との格差?(もしそれが定義出来るなら)も必要
A部門の5位はB部門の10位より下とかね
780:デフォルトの名無しさん
09/01/30 15:01:32
同じ条件で比較しないと意味無いだろ。
当たり前のことほざくな。
781:デフォルトの名無しさん
09/01/30 19:01:54
恥ぱい3は3万に下がっているのに、みんぱいは4千のままだ。
どうなってるの?
売れるとランキングが上がって、売れないと下がる仕組みなのかな?
782:デフォルトの名無しさん
09/01/31 06:50:16
>>773
サンクス。書籍のページにあるのか。
スクレイピングして言語別のama書籍ランキングとか作れそうだね。面白そうだ
誰かやランかな
783:デフォルトの名無しさん
09/02/04 11:35:30
URLリンク(www.amazon.co.jp)
元祖はじパイも売れてないんだな。
ランキング10万台って恥パイと変わらないだろ。みんパイを調べたら6000台だったぞ。
翻訳者が必死になるわけだ。
784:デフォルトの名無しさん
09/02/07 12:57:54
なるほど
ありがとうございました
785:デフォルトの名無しさん
09/02/12 16:50:37
[1] 授業単元:Python
[2] 問題文(含コード&リンク):
1から9までの数字を縦横方向に同じものが並ばないように下記の例のように並べる
並べ方が全部で何通りあるかとその並びをすべて列挙する
[3] 環境:特になし
[4] 期限: 明日まで
[5] その他の制限:
例
534681297
685293714
948367125
153472869
426538971
261759483
817945632
379126548
792814356
786:デフォルトの名無しさん
09/02/12 17:02:05
URLリンク(docs.python.org)
787:デフォルトの名無しさん
09/02/12 17:08:55
Python の宿題ここで答えます Part 1
スレリンク(tech板:785番)
C/C++の宿題片付けます 122代目
スレリンク(tech板:542番)
Rubyの宿題教えてください。2限目
スレリンク(tech板:476番)
こんなんで数独の掲載料もらえるなら俺だって問題送りたい
無言であっさり方向性出てるあたりさすがPyという気はする
788:デフォルトの名無しさん
09/02/13 01:26:16
何故かリリカルLispスレにも来てたんだが
スレリンク(tech板:141-番)
スクロールした形を数えないことにしたら16億くらいかなーとか
思ったんだけどそんな単純な話じゃないのね。
URLリンク(en.wikipedia.org)
789:デフォルトの名無しさん
09/03/29 00:11:48
[1] 授業単元:Python
[2] 問題文(含コード&リンク): 下の例参照
与えられた数字のみからなる文字列から各桁の数字に分割し、
隣り合う数字の合計の下一桁の値を並べたものを次の文字列とし、
結果が一桁になるまで繰り返しそれぞれの過程の文字列を出力する。
[3] 環境:特になし
[4] 期限: 明日まで
[5] その他の制限: 例
525123214112431
77635535523674
4398088075931
727886872424
99564459666
8410894522
251873974
76950261
3545287
899705
78675
5432
95
4
790:デフォルトの名無しさん
09/03/29 00:12:29
[1] 授業単元:Python
[2] 問題文(含コード&リンク): 課題2
>>789 の出力において(上から1段目だけは入力なので)
上から2段目から最後の段までに現れる0から9数字の
総出現数と各数字毎の出現比率を出力する。
[3] 環境:特になし
[4] 期限: 明日まで
[5] その他の制限:
129個
0: 10回 3%
1: 43回 20%
2: 8回 2%
...
9: 18回 6%
のように出力してください。
おながいします
791:デフォルトの名無しさん
09/03/29 00:13:25
[1] 授業単元:Python
[2] 問題文(含コード&リンク): 課題3
>>790 のスクリプト名を p2.py とする
その入出力について入力はスクリプトへの標準入力として例えば
echo 525123214112431 | p2.py
という形で受け取れるようにし、
10, 0.03, 43, 0.20, 8, 0.02, ... 18, 0.06, 129
の様に0から9までの出現数、出現比率(末尾に総数)をカンマ区切りで
出力するように変更し、
さらに新たなスクリプト p3.py から別プロセスとして p2.py を起動し、
標準出力を介して 111111111 から 999999999 までの連続する数字を与え、
それぞれの結果を出力する。
[3] 環境:特になし
[4] 期限: 明日まで
[5] その他の制限:
792:デフォルトの名無しさん
09/03/29 00:14:09
[1] 授業単元:Python
[2] 問題文(含コード&リンク): 課題4
>>791 の出力について
111111111 から 999999999 までの連続する数字を与える代わりに
N 桁の全ての数字を与え、N を 2 〜 9 まで変化させたときに
各 N における全ての出現数、出現比率を0から9までの数字毎に合計し、出力する。
[3] 環境:特になし
[4] 期限: 明日まで
[5] その他の制限:
N = 2 のとき 10 〜 99 について
10 -> 1 が 1回
11 -> 2 が 1回
12 -> 3 が 1回
...
99 -> 18, 9 -> 1 が 1回, 8 が 1回, 9 が 1回
の回数の合計として
0から9までの出現数、出現比率(末尾に総数)をカンマ区切りで出力する。
よろしくおねがいします。
793:デフォルトの名無しさん
09/03/29 00:15:21
>>789-792
URLリンク(www.google.com)
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5402日前に更新/222 KB
担当:undef