Was ist die Verwendung von eckigen Klammern in Python, außer Liste?


Beste Antwort

Aloha !!

[] wird sowohl zum Auflisten als auch zum Indizieren und Schneiden (Zugriff auf Elemente einer Sammlung, Zeichenfolge in Python) verwendet.

[] kann nicht verwendet werden, um auf Elemente der Zahl zuzugreifen, da die Zahl nicht tiefgestellt werden kann.

Im Falle einer festgelegten Indizierung kann kein Slicing durchgeführt werden.

Im Fall von str, list und tuple müssen Sie die Indexnummer in [] angeben.

Im Wörterbuch müssen Sie den Schlüssel angeben, und das Schneiden ist nicht möglich.

Vorwärtsindizierung, Rückwärtsindizierung

s="Jaydeep"

Forward indexing =>index starts from 0 and ends at len(s)-1

Reverse indexing =>index starts from -len(s) and ends at -1

Indizierung

s="JaydeepUpadhyaya"

print(s[0]) =>element at index 0 of str s.

l=[1,2,3,5]

print(l[1]) =>element at index 1 of list

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

print(l[2]) =>[3,4]=>2nd element of l

print(l[2][1])=>4

l={190,100,120,78}

print(l[2])

O/P

Traceback (most recent call last):

File "source\_file.py", line 2, in

print(words[0])

TypeError: "set" object does not support indexing

t=(190,78,67,90)

print(l[3]) =>3rd element of tuple

print(l[-2])=>67 , 2nd last element of tuple

dict={"list":"yes","tuple":"yupp","set":"NO"}

print(dict["set"])

i=1234567

print(i[4])

O/P

Traceback (most recent call last):

File "source\_file.py", line 2, in

print(i[4])

TypeError: "int" object is not subscriptable

Schneiden

[A: b: c] => Start bei A, Ende bei b-1 und Schrittanzahl

s="Jaydeep Upadhyaya"

For forward slicing end =b-1

print(s[0:4:1])=> start from 0 end at 3 with step count 1 (next index after 0 should be +1)

O/P=>JAYD

print(s[1:9:2])=>start from 0 end at (9-1)8 with step count 2 , so index are 1,3,5,7 .

O/P=>ade

Note element at index 7 is 1 space , so o/p is ade

-------------------------------------

Reverse Slicing

For reverse slicing end=b+1

print(s[-1:-5:-1])=>start from -1 , end at (-5+1)-4 with step count 1 so indexs are -1,-2,-3-4-.

O/p=>ayay

print(s[-2:-9:-2])=>start from -2 , end at (-9+1)-8 with step count 2 , so indexes are -2,-4,-6,-8.

O/P=>yydp

Reverse of string

print(s[len(s)::-1])

O/P=>ayayhdapU peedyaJ

print(s[-1:-len(s):-1])=>ayayhdapU peedyaJ

Concept of Slicing for list and tuple is same as string .

Hoffe, dass dis Ihnen helfen kann.

Vielen Dank für A2A .

JD

Antwort

[] kann nicht nur zur Darstellung einer leeren Liste verwendet werden, sondern auch auf folgende Weise:

Array-Indizierung:

# access first element

print(a[0])

# access last element

print(a[-1])

Indexierung des Wörterbuchs:

a = {"a": 1, "b":2}

# access the value of key "a"

print(a["a"])

Listenaufteilung:

a = [1, 3, 4, 5]

# print all elements

print(a[:])

# print all elements except first element

print(a[1:])

# print all elements in intervals of 2

print(a[::2])

# reverse the list

print(a[::-1])

Listenverständnis:

# create a list of all even numbers upto 100

a = [i for i in range(0,101,2)]

Viel Spaß beim Lernen 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.