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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python:將單個元素打印為字符串,并在列表中有多個元素時打印列表

Python:將單個元素打印為字符串,并在列表中有多個元素時打印列表

一只名叫tom的貓 2023-10-06 10:52:35
我有以下字典(其中計數(shù)(值)反向排序):sorted_dict={'A': 4, 'W': 4, 'T': 2, 'S': 2, 'I': 2, 'R': 1}正如您所看到的,有 2 個鍵具有相同的值,即。A和W。我編寫了以下邏輯來獲取最大計數(shù)max_count = list(sorted_dict.values())[0]max_count_letter_list = []迭代字典中的每個鍵后,我將具有最大計數(shù)的字母添加到列表中。for letter in sorted_dict:    if sorted_dict[letter] == max_count:        max_count_letter_list.append(letter) 打印到控制臺時,它被打印為列表,這正是我所期望的print("Most frequent letter \"{}\" appears {} times"          .format(max_count_letter_list, max_count))Output: Most frequent letter "['W', 'A']" appears 4 times但是,如果列表中有一個元素,它會像這樣打印出來:Most frequent letter "['A']" appears 4 times我的期望是這樣打印:Most frequent letter "A" appears 4 times問題:在一行打印語句中,如何打印列表中不帶括號的單個元素,如果它是一個列表,它應該打印元素列表。我需要寫一個 if 語句還是有更好的方法來寫這個?
查看完整描述

3 回答

?
米脂

TA貢獻1836條經(jīng)驗 獲得超3個贊

適合所有人的解決方案可能是用逗號連接項目


print("Most frequent letter \"{}\" appears {} times".format(",".join(max_count_letter_list), max_count))


# Giving

Most frequent letter "A,W" appears 4 times

Most frequent letter "A" appears 4 times

如果你想以不同的方式處理它們,你需要一個條件來分隔大小寫: an if,然后正常編寫或使用內(nèi)聯(lián)模式


 # inline

print("Most frequent letter \"{}\" appears {} times".format(letter_list[0] if len(letter_list) == 1 else letter_list, max_count))


# multi-line

if len(letter_list) == 1:

    print("Most frequent letter \"{}\" appears {} times".format(letter_list[0], max_count))

else:

    print("Most frequent letter \"{}\" appears {} times".format(letter_list, max_count))

縮短前面代碼的解決方案


from itertools import groupby

from operator import itemgetter

g = groupby(sorted_dict.items(), key=itemgetter(1))

max_count, letter_list = next((count, [x[0] for x in vals]) for count, vals in g)


查看完整回答
反對 回復 2023-10-06
?
猛跑小豬

TA貢獻1858條經(jīng)驗 獲得超8個贊

我認為這就是您正在考慮的...根據(jù)列表中的項目數(shù)量以不同方式打印的條件:


max_count_letter_list = ['A', 'W']

max_count = 4

print("Most frequent letter \"{}\" appears {} times".format(max_count_letter_list[0] if len(max_count_letter_list) == 1 else max_count_letter_list, max_count))

max_count_letter_list = ['A']

print("Most frequent letter \"{}\" appears {} times".format(max_count_letter_list[0] if len(max_count_letter_list) == 1 else max_count_letter_list, max_count))

結(jié)果:


Most frequent letter "['A', 'W']" appears 4 times

Most frequent letter "A" appears 4 times


查看完整回答
反對 回復 2023-10-06
?
揚帆大魚

TA貢獻1799條經(jīng)驗 獲得超9個贊

print("Most frequent letter \"{}\" appears {} times"

.format((max_count_letter_list[0] if len(max_count_letter_list) ==1 else max_count_letter_list), 

max_count)

我想這就是您正在尋找的。


查看完整回答
反對 回復 2023-10-06
  • 3 回答
  • 0 關(guān)注
  • 129 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

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