#!usr/bin/python
import random
seg1='''_________'''
seg2='''| |'''
seg3a="| Ace |"
seg32="| 2 |"
seg33="| 3 |"
seg34="| 4 |"
seg35="| 5 |"
seg36="| 6 |"
seg37="| 7 |"
seg38="| 8 |"
seg39="| 9 |"
seg310="| 10 |"
seg3jack="| Jack |"
seg3queen="|Queen |"
seg3king="| King |"
seg4='''| of |'''
seg5s="| Spade |"
seg5h="| Heart |"
seg5c="| Clubs |"
seg5d="|Diamond|"
seg6='''| |'''
seg7='''|_______|'''
a=[seg3a,seg32,seg33,seg34,seg35,seg36,seg37,seg38,seg39,seg310,seg3jack,seg3queen,seg3king]
b=[seg5s,seg5h,seg5c,seg5d]
count=0
count1=0
print seg1*13,'\n',seg2*13#,#'\n'
while count<=12:
c=random.choice(a)
print c,
count+=1
print '\n',seg4*13,'\n'
while count1<=12:
d=random.choice(b)
print d,
count1+=1
print '\n',seg6*13,'\n',seg7*13
您好。我正在尝试制作这个应该并排打印13张随机卡的程序,但它的格式非常奇怪。我知道它是由while循环引起的,它在打印出来之后增加了一个额外的空间。感谢。
答案 0 :(得分:1)
可在此处找到更多信息:
How do I keep Python print from adding newlines or spaces?
这可以通过import
sys
然后使用:
while count<=12:
c=random.choice(a)
sys.stdout.write(c)
count+=1
sys.stdout.flush()
和其他while循环的等价物。
旁注:考虑阅读其他人的一些python代码。 Python用户喜欢保持简短和甜蜜,并且我从中受益匪浅 - 至少在编写快捷方式方面 - 通过这样做。事实上,您也可以用以下内容替换整个循环:
print "".join([random.choice(a) for i in range(13)])