我的任务是用一种非常基本的python风格编写一个程序。程序应该询问用户是否想要1。掷一枚硬币,或2枚。选一张牌。在
然后使用IF来检查用户选择了什么。如果它是一个,它应该随机产生正面或反面,然后打印它得到的。在
如果选择是2,它会要求用户选择一套西装,然后生成一个介于1到13之间的数字(从王牌变为王牌),并打印出“You picked[value]of[suit]”
import random
print('1. Flip a coin')
print('2. Pick a card')
choice = int(input('Enter a coice :'))
if choice == 1:
Hort = ''
HorT == random.randint(0,1)
if HorT == "0":
print('You got Heads')
elif HorT == "1":
print('You got Tails')
elif choice == 2:
print()
print('1. Hearts')
print('2. Clubs')
print('3. Diamonds')
print('4. Spades')
print()
suitno = ''
suitno ==int(input('Choose a suit'))
if suitno == "1":
suit == "Hearts"
elif suitno == '2':
suit == 'Clubs'
elif suitno == '3':
suit == 'Diamonds'
elif suitno == '4':
suit == 'Spades'
value = ''
value == random.randint(1,13)
print()
print('You picked', value, 'of', suit)
正如您所看到的,它是基本的,但是我被要求尽可能地紧跟伪代码。它从一开始就停止了。我输入then number作为选择,结果就结束了。在
编辑:我修改了代码,以显示我所做的更改。在
你有两个问题:
在这里,您将比较integer choice和字符串“1”的值。在
第二个问题是,你有很多结构,看起来像:
^{pr2}$这种开关可以用python和字典组成:
常见错误:
==
用于比较,不用于赋值,例如4 == 4
是{int
类型的变量将从不等于字符串,例如4 == '4'
是False
。这就是您的if
语句没有执行的原因。在input()
之前不需要初始化变量。在else
,通常最好是else
。在脏,但完全修复:
它可以写得更简洁,但它是
pretty basic python style
程序:)@Two-Bit Alchemist-@vaultah版本:
^{pr2}$既然other answers相当充分地批评了你的选牌设计,我就只贴一点我对你投硬币的看法。在
掷硬币
该项目的结果是:
因此,我们只对字符串}感兴趣。由于显式优于隐式:
'heads'
或{就是你所需要的。在
相关问题 更多 >
编程相关推荐