0
a = 1
b = 2
我想插入A:B到一個空白的Python列表如何將一個鍵值對插入python列表中?
list = []
爲
a:b
究竟是什麼的正確語法,導致
[(a:b), (c:d)]
?
這只是這樣我就可以在列表中值從最小到最大再整理
a = 1
b = 2
我想插入A:B到一個空白的Python列表如何將一個鍵值對插入python列表中?
list = []
爲
a:b
究竟是什麼的正確語法,導致
[(a:b), (c:d)]
?
這只是這樣我就可以在列表中值從最小到最大再整理
讓我們假設你的數據是這樣的:
a: 15
c: 10
b: 2
有幾種方式可以讓您的數據進行排序。如果數據存儲爲元組的列表
data = {
'a': 15,
'c': 10,
'b': 2,
}
# Sort by key:
print [v for (k, v) in sorted(data.iteritems())]
# Output: [15, 2, 10]
# Keys, sorted by value:
from operator import itemgetter
print [k for (k, v) in sorted(data.iteritems(), key = itemgetter(1))]
# Output: ['b', 'c', 'a']
:
data = [
('a', 15),
('c', 10),
('b', 2),
]
data.sort() # Sorts the list in-place
print data
# Output: [('a', 15), ('b', 2), ('c', 10)]
print [x[1] for x in data]
# Output [15, 2, 10]
# Sort by value:
from operator import itemgetter
data = sorted(data, key = itemgetter(1))
print data
# Output [('b', 2), ('c', 10), ('a', 15)]
print [x[1] for x in data]
# Output [2, 10, 15]
怎樣才能插入一個關鍵值對到一個Python列表?
你不能。你可以做的是「模仿」這種通過附加2個元素的元組的列表:
a = 1
b = 2
some_list = []
some_list.append((a, b))
some_list.append((3, 4))
print some_list
>>> [(1, 2), (3, 4)]
但正確的/最好的辦法是使用字典:
some_dict = {}
some_dict[a] = b
some_dict[3] = 4
print some_dict
>>> {1: 2, 3: 4}
注:
list
,因爲它會隱藏其內置的實現。將它命名爲別的東西,像some_list
,L
,...
沒有「鍵值對」作爲作爲字典此鍵/值數據是最好的存儲,像這樣一般的東西在Python中。你爲什麼用列表而不是字典?字典包含鍵值對,但有一個鍵值對,這不是在字典中沒有內置的概念。 – BrenBarn
請向我們展示預期的輸出。 – thefourtheye
你想使用鍵來查詢列表嗎?如果是這樣,請使用@BrenBarn建議的字典。否則,你可以在2元組添加到列表中,如果你只是想保存 「項目配對」:'my_list = [( 'A', 'B'),( 'C', 'd')]' –