[問題] 函數中下標或是呼叫另一個檔案

看板Python作者 (R_pu)時間6年前 (2018/09/21 23:07), 6年前編輯推噓1(1011)
留言12則, 2人參與, 6年前最新討論串1/2 (看更多)
先跟各位前輩問好,小妹還是python超超新手 可能有些名詞說法不太正確,請鞭小力一點 問題一: 目前發現def中沒辦法運算有下標的結構 像是 pop={'姓名':,'性別':,'生日':} 我先將pop變成5大小 然後想要寫一個def 函數 def 函數(pop): for i in range(0,5) pop[i]['姓名']: pop[i]['性別']: pop[i]['生日']: i=i+1 return pop 目前發現在函數裡面沒辦法有[i],不知道是不是哪邊盲點沒突破 問題二: 後來想了一下 我在另一個檔案裡面寫好我想要運用的函數 只是不以def開頭 就是把函數改寫成小的副程式'Fk' 想要在主程式裡面運行到一個階段 把主程式產出的變數pop 輸入到副程式Fk中 (也就是說Fk中的變數是沒有在Fk裡面給予定義,需要從主程式裡面擷取) 在Fk.py中 from 主程式 import pop 但由於我的pop是隨機產生的,不知道他會重新隨機產生? 還是可以讀到我主程式運行到一個階段所產生的那組pop? 覺得我兩個問題敘述的好像有點亂, 請各位前輩們,幫幫小妹 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.249.134.49 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1537542446.A.81B.html

09/22 02:21, 6年前 , 1F
一。pop是dict 不能用list的index寫法
09/22 02:21, 1F

09/22 02:22, 6年前 , 2F
不太懂你的變成5大小是指什麼?
09/22 02:22, 2F
就是先把pop變成 pop=[{'姓名':,'性別':,'生日': '姓名':,'性別':,'生日': '姓名':,'性別':,'生日': '姓名':,'性別':,'生日': '姓名':,'性別':,'生日':}]

09/22 02:23, 6年前 , 3F
然後for I in range他的i會自動加,不用再額外加一了
09/22 02:23, 3F
啊...!!!之前是學了一點點的matlab... 還是很弱但是要轉換成python就會一直邏輯卡住QQ matlab常常會先把要得到的解以及相關的資訊變成一個解結構 初始直接產生一組龐大的解結構群體的東西, 才丟進去函數裡面用下標去確保每個東西都有被算到 python遇到那種類似結構東西是不是只能一組一組 (不能下標) 丟進去算??有其他方法可以克服嗎?? 很怕在邏輯上面卡住,不知道變通... ※ 編輯: majoyun (111.249.134.49), 09/22/2018 10:24:17

09/22 12:46, 6年前 , 4F
如果你是希望存每個人不同的性別生日資訊
09/22 12:46, 4F

09/22 12:46, 6年前 , 5F
可以試試看直接拿姓名當key
09/22 12:46, 5F

09/22 12:48, 6年前 , 6F
例如 { A: {性別:, 生日:}, B: {性別:, 生日:}…}
09/22 12:48, 6F

09/22 12:50, 6年前 , 7F
不然如果你想用list就是 [{…},{…},…]這樣
09/22 12:50, 7F

09/22 12:54, 6年前 , 8F
抱歉第二個問題還是不太懂XD 意思是在a檔案中先算好一
09/22 12:54, 8F

09/22 12:54, 6年前 , 9F
些變數再給b檔案用嗎?那如果執行b檔案的時候再去算這
09/22 12:54, 9F

09/22 12:54, 6年前 , 10F
些值會有什麼問題嗎?
09/22 12:54, 10F

09/24 08:28, 6年前 , 11F
因為你的dict不是index 0-4啊
09/24 08:28, 11F

09/24 08:29, 6年前 , 12F
而且你的dict沒有value 看不太懂
09/24 08:29, 12F
文章代碼(AID): #1RfGakWR (Python)
文章代碼(AID): #1RfGakWR (Python)