第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何讓選擇函數(shù)在while循環(huán)下返回不同的結(jié)果

如何讓選擇函數(shù)在while循環(huán)下返回不同的結(jié)果

我有這段代碼可以正常工作,但有一個(gè)小問(wèn)題。第一個(gè)選擇函數(shù)運(yùn)行良好并返回問(wèn)題中的隨機(jī)狀態(tài)。如果答案是肯定的,它就可以正常工作并打印出我想要的東西。但是當(dāng)答案是否定的時(shí)候,我希望這個(gè)問(wèn)題有一個(gè)不同的州名。但是第二個(gè)選擇函數(shù),在while循環(huán)下,返回與第一個(gè)問(wèn)題相同的狀態(tài)。我認(rèn)為選擇的另一種用法會(huì)返回另一個(gè)隨機(jī)狀態(tài)名稱,但顯然,事實(shí)并非如此。這是代碼:from random import choicestates = {        'AK': 'Alaska',        'AL': 'Alabama',        'AR': 'Arkansas',        'AS': 'American Samoa',        'AZ': 'Arizona',        'CA': 'California',        'CO': 'Colorado',        'CT': 'Connecticut',        'DC': 'District of Columbia',        'DE': 'Delaware',        'FL': 'Florida',        'GA': 'Georgia',        'GU': 'Guam',        'HI': 'Hawaii',        'IA': 'Iowa',        'ID': 'Idaho',        'IL': 'Illinois',        'IN': 'Indiana',        'KS': 'Kansas',        'KY': 'Kentucky',        'LA': 'Louisiana',        'MD': 'Maryland',        'MA': 'Massachusetts',        'ME': 'Maine',        'MI': 'Michigan',        'MN': 'Minnesota',        'MO': 'Missouri',        'MP': 'Northern Mariana Islands',        'MS': 'Mississippi',        'MT': 'Montana',        'NA': 'National',        'NC': 'North Carolina',        'ND': 'North Dakota',        'NE': 'Nebraska',        'NH': 'New Hampshire',        'NJ': 'New Jersey',        'NM': 'New Mexico',        'NV': 'Nevada',        'NY': 'New York',        'OH': 'Ohio',        'OK': 'Oklahoma',        'OR': 'Oregon',        'PA': 'Pennsylvania',        'PR': 'Puerto Rico',        'RI': 'Rhode Island',        'SC': 'South Carolina',        'SD': 'South Dakota',        'TN': 'Tennessee',        'TX': 'Texas',        'UT': 'Utah',        'VA': 'Virginia',        'VI': 'Virgin Islands',        'VT': 'Vermont',        'WA': 'Washington',        'WI': 'Wisconsin',        'WV': 'West Virginia',        'WY': 'Wyoming'}
查看完整描述

2 回答

?
森林海

TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊

我有這段代碼可以正常工作,但有一個(gè)小問(wèn)題。第一個(gè)選擇函數(shù)運(yùn)行良好并返回問(wèn)題中的隨機(jī)狀態(tài)。如果答案是肯定的,它就可以正常工作并打印出我想要的東西。但是當(dāng)答案是否定的時(shí)候,我希望這個(gè)問(wèn)題有一個(gè)不同的州名。但是第二個(gè)選擇函數(shù),在while循環(huán)下,返回與第一個(gè)問(wèn)題相同的狀態(tài)。我認(rèn)為選擇的另一種用法會(huì)返回另一個(gè)隨機(jī)狀態(tài)名稱,但顯然,事實(shí)并非如此。


這是代碼:


from random import choice


states = {

        'AK': 'Alaska',

        'AL': 'Alabama',

        'AR': 'Arkansas',

        'AS': 'American Samoa',

        'AZ': 'Arizona',

        'CA': 'California',

        'CO': 'Colorado',

        'CT': 'Connecticut',

        'DC': 'District of Columbia',

        'DE': 'Delaware',

        'FL': 'Florida',

        'GA': 'Georgia',

        'GU': 'Guam',

        'HI': 'Hawaii',

        'IA': 'Iowa',

        'ID': 'Idaho',

        'IL': 'Illinois',

        'IN': 'Indiana',

        'KS': 'Kansas',

        'KY': 'Kentucky',

        'LA': 'Louisiana',

        'MD': 'Maryland',

        'MA': 'Massachusetts',

        'ME': 'Maine',

        'MI': 'Michigan',

        'MN': 'Minnesota',

        'MO': 'Missouri',

        'MP': 'Northern Mariana Islands',

        'MS': 'Mississippi',

        'MT': 'Montana',

        'NA': 'National',

        'NC': 'North Carolina',

        'ND': 'North Dakota',

        'NE': 'Nebraska',

        'NH': 'New Hampshire',

        'NJ': 'New Jersey',

        'NM': 'New Mexico',

        'NV': 'Nevada',

        'NY': 'New York',

        'OH': 'Ohio',

        'OK': 'Oklahoma',

        'OR': 'Oregon',

        'PA': 'Pennsylvania',

        'PR': 'Puerto Rico',

        'RI': 'Rhode Island',

        'SC': 'South Carolina',

        'SD': 'South Dakota',

        'TN': 'Tennessee',

        'TX': 'Texas',

        'UT': 'Utah',

        'VA': 'Virginia',

        'VI': 'Virgin Islands',

        'VT': 'Vermont',

        'WA': 'Washington',

        'WI': 'Wisconsin',

        'WV': 'West Virginia',

        'WY': 'Wyoming'

}


state_list = list(states.values())


choice = choice(state_list)


question = "Would you like to move to {}?: ".format(choice)


answer = input(question).strip().lower()


while answer!= "yes":


    question = "Okay. How about {}?: ".format(choice)

    answer = input(question).strip().lower()


print("Sounds good! Let's go there!")   



查看完整回答
反對(duì) 回復(fù) 2021-10-26
?
GCT1015

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超4個(gè)贊

解釋


你的問(wèn)題是你從 state_list 中找到 random


choice = choice(state_list)

并且您將 is 視為函數(shù) -> 您認(rèn)為無(wú)論何時(shí)使用它,它都會(huì)生成隨機(jī)選擇。不。 Choice 是一個(gè)變量,您在其中從 state_list 中保存了隨機(jī)數(shù)。在您的循環(huán)中,您基本上是在調(diào)用選擇,它只不過(guò)是保存的變量。


但是,您可以創(chuàng)建函數(shù) generate_choice() 來(lái)執(zhí)行您想要的操作


import random

def generate_choice():

    return random.choice(state_list)

所以現(xiàn)在你可以隨時(shí)打電話


new_choice = generate_choice()

從 state_list 獲取新的隨機(jī)元素


你也犯了很大的錯(cuò)誤


choice = choice(state_list)

因?yàn)槟闫茐牧四銓?dǎo)入的函數(shù)選擇,你把這個(gè)函數(shù)的結(jié)果代替了這個(gè)函數(shù),所以現(xiàn)在你不能再調(diào)用它了。


解決方案


...

#

#choice = choice(state_list) <-- here you destroyed your function

# instead import module like this:

import random


choice = random.choice(state_list) <--- now you are save

question = "Would you like to move to {}?: ".format(choice) 


answer = input(question).strip().lower()


while answer!= "yes":


    question = "Okay. How about {}?: ".format(random.choice(state_list)) # generate choice everytime new

    answer = input(question).strip().lower()


print("Sounds good! Let's go there!")   


查看完整回答
反對(duì) 回復(fù) 2021-10-26
  • 2 回答
  • 0 關(guān)注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)