Re: [問題] 為什麼有動作,但還是空白
※ 引述《euser1777 (YY)》之銘言:
: 感謝各位解答,程式更新如右 https://github.com/cj044/Qtrandom
: 希望寫成的目標如圖片:https://imgur.com/IrX3bmX
: 但是目前加入兩段功能後
: 遇到很多問題
: 1.問題圖片如下:
: https://imgur.com/mDxLVRF
不知道為什麼?
: 寫到這兩段功能,a 抽樣數據後存入CSV檔案 b.全班數據存入CSV檔案
: 都顯示呼叫功能,沒有這屬性?
: 2.像是顯示在螢幕功能的代碼都是一樣,能否優化?
: 謝謝!
https://github.com/Saxo0213/Qtrandom/blob/main/VIP-Qtrandom-TEST.py
我也是新手,因為最近也在研究檔案存取的機制所以有點興趣
首先是有關內建的CSV讀取功能
假設CSV有兩行
--
高雄,左營,
高雄,三民,
--
rows = csv.reader(csvfile, delimiter=',')
^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^
變數 套件功能 讀取的分隔方式(用,分隔資料)
一般讀取是以 ","做分隔
但因為我們整行資料有獨立性
所以我們要整行讀取
小list-單行儲存
v
所以他讀取出來的rows=[["高雄","左營"],["高雄","三民"]]
^ ^
大LIST-各行儲存 讀取出來的資料 str
是一個list中還有list的狀況
for row in rows:
self.class_info.append(row)
將位置row存入list
小list儲存各行資料
v
這裡self.class_info 會變成 [["高雄","左營"],["高雄","三民"]]
^ ^ ^
大list-各行儲存 符合原本各行的兩個單獨資料
以上是為了顯示在螢幕上的功能做準備
第一次用QT,參考前面前輩的說明
QStringListModel() 是一個只接受包含str的list
從rows讀出來的當然不能符合
所以我們的資料在輸入到QStringListModel()前
要先把各行的資料做處理再輸出給他
函式傳入我們要顯示的資料
v
def show_list(self,list):#顯示在螢幕
pf=[]
for l in list:
pf.append(",".join(l))
^^
定義一個臨時的list
把小list轉成str
轉換完的pf=["高雄,左營","高雄,三民"]
^ ^
大LIST list 內的 str
這樣listView在顯示資料就沒有問題了
我自己在學習都是翻網路資源
寫程式我覺得至少型態轉換要弄懂
再來就是型態的組合拆分功能
有關list 我是看這網頁
https://selflearningsuccess.com/python-list/
有關str 我是看這網頁
https://selflearningsuccess.com/pythonstring/
是不知道 CSV讀取的分隔方式可不可以多重設定
有機會在繼續研究
應該還有更好的寫法,在請前輩們指導了
至於原PO想要優化的部分
我有大概整理全部的code 應該有符合需求
有也幫你 補上開啟檔案的方式選擇CSV
你再參考看看.....
學習新的指令套件真燒腦
不過QT真的刻UI好像比較方便點
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.194.95 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1644298089.A.29E.html
→
02/08 13:34,
2年前
, 1F
02/08 13:34, 1F
→
02/08 13:39,
2年前
, 2F
02/08 13:39, 2F
※ 編輯: nsay (122.117.194.95 臺灣), 02/08/2022 14:19:16
推
02/08 14:22,
2年前
, 3F
02/08 14:22, 3F
→
02/08 14:23,
2年前
, 4F
02/08 14:23, 4F
→
02/08 14:28,
2年前
, 5F
02/08 14:28, 5F
→
02/08 14:28,
2年前
, 6F
02/08 14:28, 6F
→
02/08 14:29,
2年前
, 7F
02/08 14:29, 7F
→
02/08 14:29,
2年前
, 8F
02/08 14:29, 8F
討論串 (同標題文章)