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

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

在字典列表中用 x 替換逗號 (Python)

在字典列表中用 x 替換逗號 (Python)

開滿天機 2024-01-27 16:26:23
我的代碼:for i in range(len(new_list)):    # Use of Lambda to multiply each number in each list    nums_product = reduce((lambda x,y: x * y), new_list[i])    list_product_num.append(nums_product)print(list_product_num)x = [{'qns': f , 'ans': c} for f, c in zip(input_list, list_product_num)]print(x, end= '' )enter code here這是輸出:[{'qns': [1, 3, 3], 'ans': 9}, {'qns': [2, 5, -1], 'ans': -10}, {'qns': [3, 2], 'ans': 6}, {'qns': [4, 5, 3], 'ans': 60}, {'qns': [0, 23], 'ans': 0}, {'qns': [1, 2, 3, 4], 'ans': 24}]然而,這是我必須實現的預期輸出,基本上將 [1,3,3] 替換為“1 x 3 x 3”:[{'qns': '1 x 3 x 3', 'ans': 9}, {'qns': '2 x 5 x -1', 'ans': -10}, {'qns': '3 x 2', 'ans': 6}, {'qns': '4 x 5 x 3', 'ans': 60}, {'qns': '0 x 23', 'ans': 0}, {'qns': '1 x 2 x 3 x 4', 'ans': 24}]我一直在尋找解決這個問題的方法,如果有人能指出正確的方向,我將不勝感激,謝謝!
查看完整描述

3 回答

?
尚方寶劍之說

TA貢獻1788條經驗 獲得超4個贊

您可以通過以下方式修改最終輸出:

x = [{'qns': ' x '.join(map(str, d['qns'])), 'ans': d['ans']} for d in x]

如果您想從頭開始構建正確的輸出,只需將最后一行代碼替換為:

x = [{'qns': ' x '.join(map(str, f)) , 'ans': c}
     for f, c in zip(input_list, list_product_num)]


查看完整回答
反對 回復 2024-01-27
?
寶慕林4294392

TA貢獻2021條經驗 獲得超8個贊

您正在尋找名為 的字符串的內置方法join。 " x ".join(f)但不起作用,因為列表中的項目f不是strings。為了解決這個問題,我們可以將列表中的每個項目轉換為具有列表理解的字符串[str(n) for n in f]:


將其放在一起作為您的示例,我們可以替換'qns': f為'qns': ' x '.join([str(n) for n in f])


您沒有為輸入列表提供值,但我猜您唯一的輸入是包含數字的列表列表。我冒昧地為您創(chuàng)建了一個緊湊的示例


from functools import reduce


new_list = [[1, 3, 3], [2, 5, -1], [3, 2], [4, 5, 3], [0, 23], [1, 2, 3, 4]]


print([{"qns": " x ".join(str(x) for x in l), "ans": reduce((lambda x, y: x * y), l)} for l in new_list])

>>> [{'qns': '1 x 3 x 3', 'ans': 9}, {'qns': '2 x 5 x -1', 'ans': -10}, {'qns': '3 x 2', 'ans': 6}, {'qns': '4 x 5 x 3', 'ans': 60}, {'qns': '0 x 23', 'ans': 0}, {'qns': '1 x 2 x 3 x 4', 'ans': 24}]


查看完整回答
反對 回復 2024-01-27
?
慕無忌1623718

TA貢獻1744條經驗 獲得超4個贊

替換f為以下內容:

' x '.join([str(num) for num in f])

結果會是這樣的:

x = [{'qns': ' x '.join([str(num) for num in f]) , 'ans': c} for f, c in zip(input_list, list_product_num)]


查看完整回答
反對 回復 2024-01-27
  • 3 回答
  • 0 關注
  • 261 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號