我的意思是我怎樣才能得到這樣的十六進(jìn)制值列表:['0x1', '0x2', '0x1e4b1', '0x5b', '0x80', '0x52', '0x111', '0x6b0d ', '0x4e', '0x34a', '0x2067', '0x6ef3', '0x1cf', '0x1b', '0x15b', '0x4f', '0xba8', '0x319'] 并將它們?nèi)糠湃胍粋€(gè)新文件中所謂的十六進(jìn)制值?這里有一些背景信息可以提供幫助:我有一個(gè) .txt 文件,上面有一些數(shù)字,這些數(shù)字都用逗號(hào)分隔。然后,我使用 Python 代碼將其打開并閱讀。在那之后,我列出了文件中的所有數(shù)字。當(dāng)我制作一個(gè)列表時(shí),數(shù)字都是字符串(例如:'9'、'8' 等),所以我使用一些 Python 代碼將列表的值轉(zhuǎn)換為整數(shù)。這樣做之后,我將所有整數(shù)轉(zhuǎn)換為十六進(jìn)制形式。現(xiàn)在,我要做的是將十六進(jìn)制整數(shù)列表轉(zhuǎn)換為新的 .txt 文件。我已經(jīng)嘗試對(duì)此進(jìn)行很多研究,所以請(qǐng)幫忙。到目前為止,這是我為達(dá)到這一點(diǎn)所做的代碼:my_file = open(r'C:\Users\KAPS\Downloads\List of Numbers File.txt',?encoding='utf-8-sig')content = my_file.read()print(content)content_list = content.split(",")my_file.close()print(content_list)for i in range(0, len(content_list)):? ? content_list[i] = int(content_list[i])print(str(content_list))hex_list = [hex(int(x)) for x in content_list]print(hex_list)這是我希望我的結(jié)果在最后看起來(lái)像的樣子:因?yàn)槲覜]有足夠的聲譽(yù),圖像的鏈接在下面。請(qǐng)點(diǎn)擊那個(gè)。我的結(jié)果和這張圖片之間的唯一區(qū)別是我希望我的結(jié)果最后打開一個(gè)名為 Hexadecimal Values 的新.txt 文件,而不是名為 List of Numbers 的 OG 文件。
1 回答

Smart貓小萌
TA貢獻(xiàn)1911條經(jīng)驗(yàn) 獲得超7個(gè)贊
如果要在文件中包含十六進(jìn)制字符串,可以執(zhí)行以下操作:
hex_list = ['0x1', '0x2', '0x1e4b1', '0x5b', '0x80', '0x52', '0x111', '0x6b0d', '0x4e', '0x34a', '0x2067', '0x6ef3', '0x1cf', '0x1b']
with open(r'C:\Users\KAPS\Downloads\output_numbers.txt', 'w') as my_file:
? ? my_file.write(', '.join(hex_list))
該代碼執(zhí)行以下操作:
在寫入模式下打開一個(gè)名為“output_numbers”的新文件 - 關(guān)鍵字“with.. as”用于在寫入后自動(dòng)關(guān)閉文件(稱為上下文管理器)。
將列表 hex_list 的元素作為逗號(hào)分隔值寫入文件。這是通過使用字符串操作join完成的。由于列表是可迭代的,并且列表僅包含字符串元素,因此這是可行的。
添加回答
舉報(bào)
0/150
提交
取消