格式化输出问题
这是改进我们的小游戏最后一讲双色球题目:下面是我的写法,程序是有问题的。
import random
while True:
z = random.randint(1,16)
c = random.sample(range(1,34),k=6)
print("开奖结果是:%d ,特别号码是:%d" % (*c, z))
input("按任意键继续开奖")
我的才猜想是不是问题出在这行
print("开奖结果是:%d ,特别号码是:%d" % (*c, z))
应该是格式化输出*C这里面包含了多个数子,而我用的是%d,去格式化应该是有问题的;
那么如果我要按照我这样的写法输出,该怎么做? 本帖最后由 isdkz 于 2022-4-29 12:08 编辑
c 解包后有 6 个整数,所以要用 6 个 %d
import random
while True:
z = random.randint(1,16)
c = random.sample(range(1,34),k=6)
print("开奖结果是:%d %d %d %d %d %d,特别号码是:%d" % (*c, z))
input("按任意键继续开奖")
或者不解包,直接用 %s :
import random
while True:
z = random.randint(1,16)
c = random.sample(range(1,34),k=6)
print("开奖结果是:%s,特别号码是:%d" % (c, z))
input("按任意键继续开奖")
import random
while True:
z = random.randint(1,16)
c = random.sample(range(1,34),k=6)
print("开奖结果是:%s,特别号码是:%d" % (' '.join(map(str, c)), z))
input("按任意键继续开奖")
不能用%d 就直接用连接吧 直接用字符串拼接,这么整就跟C没区别了 wp231957 发表于 2022-4-29 12:03
不能用%d 就直接用连接吧
import random
while True:
z = random.randint(1,16)
c = random.sample(range(1,34),k=6)
print("开奖结果是:",*c,"\n特别号码是:" ,z)
input("按任意键继续开奖:")
大哥你说的是这个意思把! lbf4325 发表于 2022-4-29 16:01
大哥你说的是这个意思把!
是啊 isdkz 发表于 2022-4-29 12:03
c 解包后有 6 个整数,所以要用 6 个 %d
最后这个用法我去瞧瞧看。 wp231957 发表于 2022-4-29 16:02
是啊
嗯谢谢提醒!忘了print函数的用法! 老八秘制 发表于 2022-4-29 13:27
直接用字符串拼接,这么整就跟C没区别了
没太明白你的意思 ,和楼上大哥说的是一个意思吗?
页:
[1]