我是Python的新手。我需要一个包含两个元素元组的数据结构:date
和file path
。我需要能够不时地改变它们的值,因此我不确定元组是一个好主意,因为它是不可变的。每次我需要更改它时,我必须创建一个新的元组并引用它,而不是真正改变它的值;所以,我们可能会遇到一个内存问题:分配了很多元组。
另一方面,我想到了一个列表,但列表不是固定大小的,因此用户可能会输入2个以上的元素,这是不理想的。
最后,我还想以合理的名义引用每个元素;也就是说,而不是list[0]
(映射到日期)和list[1]
(映射到文件路径),我更喜欢可读的解决方案,例如PHP中的关联数组:
tuple = array()
tuple['Date'] = "12.6.15"
tuple['FilePath] = "C:\somewhere\only\we\know"
处理这种情况的Pythonic方法是什么?
答案 0 :(得分:3)
听起来像是在描述字典(dict
)
# Creating a dict
>>> d = {'Date': "12.6.15", 'FilePath': "C:\somewhere\only\we\know"}
# Accessing a value based on a key
>>> d['Date']
'12.6.15'
# Changing the value associated with that key
>>> d['Date'] = '12.15.15'
# Displaying the representation of the updated dict
>>> d
{'FilePath': 'C:\\somewhere\\only\\we\\know', 'Date': '12.15.15'}
答案 1 :(得分:2)
为什么不使用字典。字典允许您将“键”映射到“值”。 例如,您可以像这样定义字典:
dict = { 'Date' : "12.6.15", 'Filepath' : "C:\somewhere\only\we\know"}
你可以像这样轻松改变它:
dict['Date'] = 'newDate'