作者tsrn37992307 (Ts)
看板Python
標題[問題] 陣列放值進去 出錯
時間Sat Jun 2 17:08:30 2018
我是想把一個檔案內的字,放到陣列裡面
那些字我想轉成十六進制,有轉成功!但是值放不進去。。以下是我的程式碼
import numpy as np
fileName = input ("輸入檔案名稱:")
file = open(fileName,"r")
#abc = np.zeros((4,4))
abc = np.zeros((4,4))
i = 0
for j in range (4):
for i in range (4):
text = file.read(1)
#print("text"+" "+str(text))
textB = text.upper()
#print("textB" +" "+ str(textB))
text2 = ord(text)
#print("textord" +" " + str(text))
text3 = hex(text2)
print("texthex" +" "+text3)
abc[j][i] = text3
#print(abc)
https://i.imgur.com/MvN4C9P.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.72.175.68
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1527930512.A.5E7.html
→ kobe8112: 下面不是有錯誤訊息嗎? 06/02 18:15
推 ponponjerry: 先設定一個空的list,再用append就可以了 ex: g= [] 06/03 00:07
→ ponponjerry: ...省略.... g.append() 06/03 00:07
推 abcd810112: 因為轉進位法時 前面會有前綴 比如你錯誤下面寫的0x31 06/03 00:07
→ abcd810112: 06/03 00:07
→ abcd810112: 因為x不能轉為float 所以報錯 06/03 00:07
→ tsrn37992307: x不能轉為float是什麼意思?是指我那個二維陣列不 06/03 16:11
→ tsrn37992307: 能放十六進制的東西嗎? 06/03 16:11
推 abcd810112: 也不是不能放的問題 而是x是string 沒辦法直接轉為別 06/04 00:21
→ abcd810112: 的進位 06/04 00:21
→ abcd810112: 你可以試試看在ide打看看 bin(數字) 出來的東西其實只 06/04 00:21
→ abcd810112: 有第三位以後的才是你要的進位轉換後的數字 06/04 00:21