2012-11-28 22 views
2

例如在python:在python中,兩組列表放在一起意味着什麼?

employees[x][i] = float(employees[x][i]) 

的電話,以便不能提供太多的代碼對不起張貼這一點。

+0

'employees [x] [i]'代表一個值,這個語法只會將您的值轉換爲float值並將其存回...... – avasal

+0

@dallen:很難搜索「多維數組/列表語法「,當你不知道它是關於多維數組/列表的。 – LazerSharks

回答

2

兩個括號表示你所訪問的元素列表(或字典)

的列表,以便在這個例子中,它可能是這個樣子

In [17]: employees = {'joe': ['100', 0], 'sue': ['200', 0]} 
In [18]: x = 'joe' 
In [19]: i = 0 
In [20]: employees[x][i] 
Out[20]: '100' 
+0

因此,如果我= 3,並且x = 4,您正在訪問列表員工中的第三個元素(也是列表)中的第四個元素? – LazerSharks

+1

@usmcs:請注意,字典與列表是由'employees'或'employees [x]'對象的類型決定的,而不是由括號內的內容是字符串還是整數。整數可以是字典鍵,但字符串不能是數組索引。 –

+0

@GregHewgill是的,這是一個馬虎的聲明,謝謝澄清。 ShaltNot:我認爲你有倒退。在這個例子中,x = 4將是員工的第四元素,我將是員工的第三元素[x] – munk

1

我把多餘的括號以顯示這是如何評估

(employees[x])[I] = float((employees[x])[i]) 

和示例

>>> foo = dict(name="Foo", salary=10.00) 
>>> bar = dict(name="Bar", salary=12.00) 
>>> employees = dict(foo=foo, bar=bar) 
>>> employees 
{'foo': {'salary': 10.0, 'name': 'Foo'}, 'bar': {'salary': 12.0, 'name': 'Bar'}} 
>>> employees['foo']['name'] 
'Foo' 
>>> employees['bar']['salary'] 
12.0 

員工也可以是一個列表(或任何其他類型的容器)

>>> employees = [foo, bar] 
>>> employees 
[{'salary': 10.0, 'name': 'Foo'}, {'salary': 12.0, 'name': 'Bar'}] 
>>> employees[0]['name'] 
'Foo' 
>>> employees[1]['salary'] 
12.0 
3

最喜歡的語言,它是指一個元素在多維列表:

l = [[0,1,2,3], [1,1,1,1]] 
l[1] == [0,1,2,3] 
l[1][2] == 2 
2

語法的意義[ ] in python:

在python中,[]運算符至少用於三個目的(可能不完整):

  1. 限定在字面的陣列,例如xx = [0,1,2,3]
  2. 數組元素索引,像X1 = XX [1],這需要指數是一個整數整數或評價
  3. 字典成員檢索,如s = person ['firstname'] // person = {'firstname':'san','lastname':'zhang'},在這種情況下,索引可以是任何字典標籤可以

    matrix = [[0,1],[2,3]] 
    e01 = matrix[0][1] 
    
    people = [{'fname':'san','lname':'zhang'}, {'fname':'si', 'lname':'li'}] 
    last1 = people[1]['lname'] 
    
    :在[]中嵌入[]或[]旁邊[],參見下面的實施例時

事情要複雜

[[]]和[] []互爲對方。