Migliore risposta
Aloha !!
[] è usato per la lista così come per lindicizzazione, laffettamento (accesso agli elementi di una raccolta, stringa in python).
[] non può “t essere utilizzato per accedere a elementi di numero, perché numero non è in grado di indicizzare.
In caso di set indicizzazione e affettamento non possono essere eseguiti.
In caso di str, list e tuple è necessario menzionare il numero di indice in [].
Nel dizionario è necessario menzionare la chiave e lo slicing non è possibile.
Indicizzazione diretta, indicizzazione inversa
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
Indicizzazione
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
Slicing
[A: b: c] => inizia da A, termina in b-1 e conteggio dei passaggi
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 .
Spero che questo ti possa aiutare.
Grazie per A2A .
JD
Answer
[] oltre ad essere utilizzato per rappresentare un elenco vuoto può essere utilizzato anche nei seguenti modi:
indicizzazione di array:
# access first element
print(a[0])
# access last element
print(a[-1])
indicizzazione dizionario:
a = {"a": 1, "b":2}
# access the value of key "a"
print(a["a"])
suddivisione elenco:
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])
comprensione dellelenco:
# create a list of all even numbers upto 100
a = [i for i in range(0,101,2)]
Buon apprendimento 🙂