說我想問很多用戶給我他們的ID號和他們的名字,比保存它。 和比我可以打電話任何ID和名稱。有人可以告訴我怎麼做,通過做一個類,並使用_ _ init _ _方法?保存數據和調用數據python
回答
要從用戶獲取數據,請使用此代碼(python 3)。
ID = input("Enter your id: ")
在Python 2中,用raw_input替換輸入。
同樣應該可以做到獲取用戶名。
這將把它保存到一個變量中,以後可以在程序中使用它。如果要將其保存到文件,請使用以下代碼:
w = open('\path\to\file.txt', 'w')
w.write(ID, age)
w.close()
如果您不關心安全性,則可以使用pickle模塊來醃字典。
import pickle
data = {}
# whatever you do to collect the data
data[id] = name
pickle.dump(data, filename)
new_data = pickle.load(filename)
new_name = new_data[id]
#new_name == name
否則使用sqlite3的模塊
import sqlite3
conn = sqlite3.connect(filename)
cur = conn.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS names (id INTEGER, name TEXT)')
#do whatever you do to get the data
cur.execute('INSERT INTO names VALUES (?,?)', (id, name))
#to get the name later by id you would do...
cur.execute('SELECT name FROM names WHERE id = ?', (id,))
name = cur.fetchone()[0]
有沒有辦法通過做一個類來做到這一點?並使用_ _ init _ _方法? – babikar 2010-07-27 05:09:24
的 「要求」 部分,@風之子的回答說,可以在Windows中的一個終端( 「命令窗口」 使用raw_input
(或Python 3的input
) );但它也可以使用一個Web應用程序或一個GUI應用程序 - 你並沒有真正告訴我們用戶將在哪裏(在你用來運行代碼的同一臺機器上,或者在你的代碼的瀏覽器上在服務器上運行?)以及是否首選GUI或文本界面,因此不可能提供更精確的建議。
用於存儲和檢索數據,如@亞倫的答覆中提到一個SQL引擎是一種可能性(儘管有些人可能會矯枉過正,認爲如果這就是你想要保存),但他的建議的使用pickle
的替代直接讓小意義 - 我會推薦擱板模塊,它提供(幾乎)相當於保存到磁盤的字典。 (但是,鍵只能是字符串 - 但即使您的ID是整數,這也沒有問題,只需使用str(someid)
作爲存儲和檢索的關鍵字即可)。
在真正奇怪的評論我看你問...:
有沒有辦法通過使 類辦呢?並使用
__init__
方法?
當然有辦法做到「一類,使用__init__
法」任何東西,你可以在一個函數做的 - 在最壞的情況,你寫的所有代碼,將(在一個合理的程序)在__init__
方法中(代替return
,您將結果存儲在self.result
中,然後獲取由此創建的奇怪無用的實例的.result
屬性)。
但是,只有當你需要特殊的方法,或者想要關聯狀態和行爲,而你完全沒有解釋爲什麼要在這裏應用任何一種情況時,才使用類,這就是爲什麼我打電話你的請求「怪異」 - 你提供的絕對沒有上下文來解釋爲什麼你會想要代替函數。
如果你能澄清你的動機(最好通過編輯你的問題,或者,甚至更好,問一個單獨的一個,但不在各式各樣的評論擴展你的問題 - !)也許有可能進一步幫助您。
好吧,好吧,你抓住了關於關係數據庫的事情。我大多隻是拉着他/她的腿。不過,我很好奇「pickle」有什麼問題。 – aaronasterling 2010-07-27 07:05:11
wooow即時請求幫助和你拉我的腿! – babikar 2010-07-27 16:27:58
@babikar,這是一個有效的答案。這只是很明顯,你正試圖從我們的家庭作業中分配一些東西,而且你對於你想要的東西不是非常清楚。這整個'__init__'事情是相當荒謬的。你想讓這個班級爲一個用戶或一組用戶建模嗎?在這種情況下,「保存」意味着什麼?到一個文件?到數據庫?以後在程序中使用?等等。基本上,問一個嚴肅的問題,你會得到一個認真的答案。 – aaronasterling 2010-07-28 02:07:07
- 1. Maya MEL/Python保存數據
- 2. 保存應用程序的Python數據
- 3. AJAX調用onbeforeunload保存數據
- 4. FormWizard和保存數據
- 5. 添加和保存數據
- 6. addFlashAttribute和保存數據
- 7. Redux和保存數據?
- 8. tinyxml和C++保存數據
- 9. 保存元數據時調整大小和保存圖像
- 10. 保存數據
- 11. 保存數據
- 12. 保存數據
- 13. 。保存數據
- 14. 如何從數據庫中的瀏覽器保存數據到數據庫 - 調用python函數
- 15. 使用JPA和BeansBinding保存數據
- 16. 使用AJAX和CakePHP保存數據
- 17. 調用和保存用戶帳戶自定義數據
- 18. 在內存中保存數據和索引數據 - InnoDB與MyISAM
- 19. python self.session不能正確保存數據
- 20. 在Python中保存一列數據集
- 21. Python只保存一行數據
- 22. Python將數據保存到csv文件
- 23. Python Sqlite3 - 數據不是永久保存
- 24. 的Python:保存加入數據集---
- 25. 保存二進制數據到MySQLdb - Python
- 26. Python:將數據從BeautifulSoup保存到CSV
- 27. 用NSUserDefaults保存數據
- 28. 元數據保存用Clojure
- 29. 保存用戶數據(Swift)
- 30. 保存用戶數據
魔法?如果你只問他們的身份證號碼和姓名,你怎麼能知道他們的年齡:^) – 2010-07-27 04:51:28
對不起,我想說的名字.. – babikar 2010-07-27 04:54:09
@Mark,在南非,身份證號碼的第一部分是出生日期。或者這是什麼ID號碼? – systemovich 2010-07-27 14:13:36