打印方形点板

时间:2011-05-23 21:35:59

标签: python

我需要在python中创建一个程序来打印一个由点组成的方块板。大小由用户输入(在2x2和9x9平方之间),例如4x4 =

. . . .
. . . .
. . . .
. . . .

程序要求用户输入2-9之间的int值并打印板。 例如board_size? 4

4 个答案:

答案 0 :(得分:1)

我告诉你的老师你从哪里得到这个:

(w, h) = [int(i) for i in raw_input().split('x')]
print (". "*w + "\n") * h

答案 1 :(得分:0)

这是使用生成器表达式的答案。它基本上与在这种情况下使用列表推导相同,只是它在仍然是半Pythonic的情况下将工作加倍。它真的不需要这样,但我强迫它这么糟糕。除了完全难以阅读并且设计不紧凑之外,您可能会为此计划获得好评!

sz = 4
line_gen = (((' ' for i in range(sz)), ('.' for i in range(sz))) for i in range(sz))
for line in line_gen:
    print(''.join((space.join((dot for dot in line[0])) for space in line[1])))

答案 2 :(得分:0)

这是一个非常具有挑战性的问题。

w,x,h=raw_input("board_size?")
exec"print'. '*int(w);"*int(h)

可能是最直接的方式。

答案 3 :(得分:-1)

这是你的作业(正方形的大小):

print "\n".join ( [" ".join ( ["." for i in range (s) ] ) for j in range (s) ] )

只需从stdin或用户输入的任何位置扫描尺寸s。