Onko Pythonissa eroa `aluksella [x, y]` ja `aluksella [x] [y]`?


Vastaus 1:

Sinulla on jo ollut vastauksia, jotka selittävät miksi ensimmäinen lomake on virhe, jos käytät sitä luettelon kanssa.

Esimerkiksi

L = [[5,9,3], 8,13,21]]
L [0] # [5,9,3]
L [0] [2] # 3
L [0,2] #error

Mutta et voi luoda tyyppejä, joille tämä syntaksi toimii.

Kaikille luomillesi luokille, joille indeksoidulla pääsyllä on järkeä, voit ottaa käyttöön __getitem__- ja __setitem__-menetelmät. Sinun on itse kuinka ohjelmoida heidät, ja voit saada heidät odottamaan tuplaa. Siinä tapauksessa merkintä kuten

a [1,2] # tuple (1,2)
# on annettu argumentiksi
# __getitem__
# sama kuin .__ getitem __ ((1,2))

Tämä merkintä pätee myös joihinkin erittäin tärkeisiin tietotyyppeihin, kuten nipurakenteisiin:

Tuo numerot kuin np
a = np.matriisi ([[1,2,3], [6,7,8]])
tulosta (a [0,1]) # kelpaa; tulostaa 2


Vastaus 2:

board[x][y]referstotheythelementofthe[math]xth[/math]elementofalist(orothercontainer).Forexample:board[x][y] refers to the y^{th}element of the [math]x^{th}[/math]element of a list (or other container). For example:

>>> lauta = [
... [1, 2, 3],
... [4, 5, 6],
... [7, 8, 9]
...]
>>> lauta
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> tyyppi (hallitus)

>>> x, y = 1,2
>>> lauta [x]
[4, 5, 6]
>>> lauta [x] [v]
6

Kirjoitin “tai muun säilön” yllä, joten tässä on esimerkki, jos sama syntaksi toimii yhdellä merkkijonolla:

>>> merkkijonot = 'tämä', 'tuo', 'muu'
>>> x, y = 1,2
>>> kielet [x] [v]
'A'

lauta [x, y], toisaalta, ei ole kelvollinen Python, paitsi jos käytät numpya. Esimerkiksi:

>>> tuo numpy kuin np
>>> lauta = np.arange (1, 10) .reshape (3, 3)
>>> lauta
ryhmä ([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])
>>> lauta [1, 2]
6
>>> lauta [: 2,: 2]
ryhmä ([[1, 2],
       [4, 5]])

Vastaus 3:

board[x][y]referstotheythelementofthe[math]xth[/math]elementofalist(orothercontainer).Forexample:board[x][y] refers to the y^{th}element of the [math]x^{th}[/math]element of a list (or other container). For example:

>>> lauta = [
... [1, 2, 3],
... [4, 5, 6],
... [7, 8, 9]
...]
>>> lauta
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> tyyppi (hallitus)

>>> x, y = 1,2
>>> lauta [x]
[4, 5, 6]
>>> lauta [x] [v]
6

Kirjoitin “tai muun säilön” yllä, joten tässä on esimerkki, jos sama syntaksi toimii yhdellä merkkijonolla:

>>> merkkijonot = 'tämä', 'tuo', 'muu'
>>> x, y = 1,2
>>> kielet [x] [v]
'A'

lauta [x, y], toisaalta, ei ole kelvollinen Python, paitsi jos käytät numpya. Esimerkiksi:

>>> tuo numpy kuin np
>>> lauta = np.arange (1, 10) .reshape (3, 3)
>>> lauta
ryhmä ([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])
>>> lauta [1, 2]
6
>>> lauta [: 2,: 2]
ryhmä ([[1, 2],
       [4, 5]])