[問題] 陣列放值進去 出錯

看板Python作者 (Ts)時間7年前 (2018/06/02 17:08), 編輯推噓3(309)
留言12則, 4人參與, 7年前最新討論串1/1
我是想把一個檔案內的字,放到陣列裡面 那些字我想轉成十六進制,有轉成功!但是值放不進去。。以下是我的程式碼 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

06/02 18:15, 7年前 , 1F
下面不是有錯誤訊息嗎?
06/02 18:15, 1F

06/03 00:07, 7年前 , 2F
先設定一個空的list,再用append就可以了 ex: g= []
06/03 00:07, 2F

06/03 00:07, 7年前 , 3F
...省略.... g.append()
06/03 00:07, 3F

06/03 00:07, 7年前 , 4F
因為轉進位法時 前面會有前綴 比如你錯誤下面寫的0x31
06/03 00:07, 4F

06/03 00:07, 7年前 , 5F
06/03 00:07, 5F

06/03 00:07, 7年前 , 6F
因為x不能轉為float 所以報錯
06/03 00:07, 6F

06/03 16:11, 7年前 , 7F
x不能轉為float是什麼意思?是指我那個二維陣列不
06/03 16:11, 7F

06/03 16:11, 7年前 , 8F
能放十六進制的東西嗎?
06/03 16:11, 8F

06/04 00:21, 7年前 , 9F
也不是不能放的問題 而是x是string 沒辦法直接轉為別
06/04 00:21, 9F

06/04 00:21, 7年前 , 10F
的進位
06/04 00:21, 10F

06/04 00:21, 7年前 , 11F
你可以試試看在ide打看看 bin(數字) 出來的東西其實只
06/04 00:21, 11F

06/04 00:21, 7年前 , 12F
有第三位以後的才是你要的進位轉換後的數字
06/04 00:21, 12F
文章代碼(AID): #1R4bwGNd (Python)
文章代碼(AID): #1R4bwGNd (Python)