级别:初学者
def play_game(word_list):
hand = deal_hand(HAND_SIZE) # random init
while True:
cmd = raw_input('Enter n to deal a new hand, r to replay the last hand, or e to end game: ')
if cmd == 'n':
hand = deal_hand(HAND_SIZE)
play_hand(hand.copy(), word_list)
print
elif cmd == 'r':
play_hand(hand.copy(), word_list)
print
elif cmd == 'e':
break
else:
print "Invalid command."
我的问题是:什么是真的?
我认为说“while true”是个速记,但这是为了什么?当变量“hand”被赋值时?如果变量“hand”没有赋值呢?
while True
表示永远循环。while
语句接受一个表达式并在该表达式的计算结果为(布尔值)“true”时执行循环体。True
始终计算为布尔值“true”,因此无限期地执行循环体。这是一个你最终会习惯的成语!你可能遇到的大多数语言都有相同的习语。请注意,大多数语言通常都有一些机制可以提前脱离循环。在Python的例子中,这是问题中样本的
cmd == 'e'
例子中的break
语句。而
True
是True
。只要条件表达式的计算结果为
True
,while循环就会运行。由于
True
的计算结果始终为True
,因此循环将无限期运行,直到循环return
s或break
s中的某个内容while语句()中的所有内容都将作为布尔值计算。意思是它被转换成真或假。
在语句中考虑
while(6 > 5)
它首先计算表达式
6 > 5
,它是true
,因此与表示while(true)
相同任何不为FALSE、0、空字符串“、null或未定义的内容都可能被计算为true。
当我第一次开始编程时,我曾经做过类似于
if(foo == true)
的事情,我没有意识到这实际上是和if(foo)
一样的事情。所以当你说
while(true)
时,就像是说while(true == true)
所以要回答你的问题:真理是真理。
相关问题 更多 >
编程相关推荐