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

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

創(chuàng)建將字母字符映射到數(shù)字的字典

創(chuàng)建將字母字符映射到數(shù)字的字典

蕪湖不蕪 2023-08-08 16:12:25
我想用Python編寫(xiě)一段代碼,為每個(gè)字母字符分配一個(gè)數(shù)字,如下所示:a=0,b=1,c=2,...,y=24,z=25。我個(gè)人不喜歡為每個(gè)字母表設(shè)置條件,也不希望我的代碼看起來(lái)經(jīng)過(guò)設(shè)計(jì)。我想知道如何以最短(即最短的代碼行)、最快和最簡(jiǎn)單的方式做到這一點(diǎn)。(我的想法是為此目的創(chuàng)建一本字典,但我想知道是否有更簡(jiǎn)潔更好的方法)。如有任何建議和提示,請(qǐng)?zhí)崆氨硎靖兄x。
查看完整描述

4 回答

?
慕萊塢森

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

您肯定需要一個(gè)字典來(lái)實(shí)現(xiàn)此目的,而不是將每個(gè)聲明為變量。一種簡(jiǎn)單的方法是使用字典理解string.ascii_lowercaseas:


from string import ascii_lowercase


{v:k for k,v in enumerate(ascii_lowercase)}

# {'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4, 'f': 5...


查看完整回答
反對(duì) 回復(fù) 2023-08-08
?
慕碼人2483693

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

這是我的兩分錢(qián),for 循環(huán)將完成這項(xiàng)工作:


d = {} #empty dictionary


alpha = 'abcdefghijklmnopqrstuvwxyz'


for i in range(26):

    d[alpha[i]] = i #assigns the key value as alphabets and corresponding index value from alpha string as the value for the key


print(d) #instant verification that the dictionary has been created properly


查看完整回答
反對(duì) 回復(fù) 2023-08-08
?
白衣染霜花

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

帶有地圖和枚舉的一行:


# given

foo = 'abcxyz'

dict(enumerate(foo))


# returns: {0: 'a', 1: 'b', 2: 'c', 3: 'x', 4: 'y', 5: 'z'}

如果你需要用字符作為字典鍵,我想到的要么是字典理解......


{letter:num for (num,letter) in enumerate(foo) }


# returns {'a': 0, 'b': 1, 'c': 2, 'z': 3, 'y': 4, 'x': 5}

...或 lambda...


dict( map(lambda x: (x[1],x[0]), enumerate(foo)) )


# returns {'a': 0, 'b': 1, 'c': 2, 'z': 3, 'y': 4, 'x': 5}

我覺(jué)得 dict 理解比 map+lambda+enumerate更具可讀性。


查看完整回答
反對(duì) 回復(fù) 2023-08-08
?
有只小跳蛙

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

已經(jīng)有與字符相關(guān)聯(lián)的數(shù)字。您可以將這些代碼點(diǎn)與ord()一起使用。

一個(gè)簡(jiǎn)短的(就行而言)解決方案是:


num_of = lambda s: ord(s) - 97

一個(gè)普通的函數(shù)會(huì)更容易閱讀:


def num_of(s):

    return ord(s) - 97

用法:


num_of("a") # 0

num_of("z") # 25

如果它必須是字典,您可以在不導(dǎo)入的情況下創(chuàng)建它,如下所示:


{chr(n):n-97 for n in range(ord("a"), ord("z")+1)}


查看完整回答
反對(duì) 回復(fù) 2023-08-08
  • 4 回答
  • 0 關(guān)注
  • 248 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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