Une liste des principales méthodes destructives (écrasant les données d'origine).
** <Ajouter un élément> **
** <Supprimer l'élément> ** 5. [remove](méthode #remove) 6. [pop](méthode #pop) 7. [clear](méthode #clear) 8. [instruction del](instruction #del)
**
** <Supplément> ** 11. [Notes sur les méthodes destructives](#Notes sur les méthodes destructives) 12. [Exemple de méthode destructive](# Exemple de méthode destructive)
insert x y
└ Insérez y au numéro d'index x.
└ x est un entier
└ Si vous spécifiez un numéro d'index au-dessus (ou en dessous) de l'élément d'origine, il sera ajouté à la fin (début).
python
a = [1,2,3]
#Ajouter «10» au 0e
a.insert(0,10)
print(a)
#production
[10, 1, 2, 3]
python
a = [1,2,3]
#Ajout de "20" au 10
a.insert(10,20)
print(a)
#production
[1, 2, 3, 20]
Bien que le numéro d'index 10 soit spécifié, il est ajouté à la fin car le maximum de la liste cible est inférieur à 10.
** ▼ Lorsqu'un numéro d'index inexistant est spécifié (moins) **
python
a = [1,2,3]
#-Ajout de "30" au 10
a.insert(-10,30)
print(a)
#production
[30, 1, 2, 3]
ʻAjouter (valeur à ajouter) `
python
a=[1,2,3]
a.append('a')
print(a)
##production
[1, 2, 3, 'a']
Chaîne
a=[1,2,3]
a.append("abcde")
print(a)
##production
[1, 2, 3, 'abcde']
list
a=[1,2,3]
b=[4,5,6]
a.append(b)
print(a)
##production
[1, 2, 3, [4, 5, 6]]
list
a=[1,2,3]
a.append(a)
print(a)
#production
[1, 2, 3, [...]]
list
a=[[1,2,3]]
b=[4,5,6]
a.append(b)
print(a)
#production
[[1, 2, 3], [4, 5, 6]]
Cela devient la même dimension.
ʻExtend (élément à ajouter) ` └ Ajoutez un caractère à la fois └ La chaîne de caractères est décomposée
Liste unidimensionnelle
a=[1,2,3]
b=[4,5,6]
a.extend(b)
print(a)
#production
[1, 2, 3, 4, 5, 6]
Chaîne
a=[1,2,3]
a.extend("abcde")
print(a)
#production
[1, 2, 3, 'a', 'b', 'c', 'd', 'e']
python
a=[1,2,3]
a.extend(a)
print(a)
#production
[1, 2, 3, 1, 2, 3]
python
a=[1,2,3]
b=[[4,5,6],[7,8,9]]
a.extend(b)
print(a)
#production
[1, 2, 3, [4, 5, 6], [7, 8, 9]]
Deux dimensions
a=[[1,2,3]]
b=[[4,5,6],[7,8,9]]
a.extend(b)
print(a)
#production
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
■ Propriétés qui ont à la fois étendre et ajouter ・ Ajouter au même niveau ・ Ajouter en morceaux (ne pas décomposer caractère par caractère)
list [x: x] = élément à ajouter
└ x: numéro d'index que vous souhaitez ajouter
└ Spécifiez la même plage pour la plage de tranches * S'ils sont différents, le remplacement aura lieu.
Le numéro d'index 1 est "'aaa','bbb'"Ajouter
a=[1,2,3]
a[1:1]=['aaa','bbb']
print(a)
#production
[1, 'aaa', 'bbb', 2, 3]
moins
a=[1,2,3]
a[-1:-1]=['aaa','bbb']
print(a)
#production
[1, 2, 'aaa', 'bbb', 3]
A partir du dernier élément, il devient 0, -1, -2 ,,,.
Hors de la gamme plus
a=[1,2,3]
a[10:10]=['aaa','bbb']
print(a)
#production
[1, 2, 3, 'aaa', 'bbb']
En dehors de la plage négative
a=[1,2,3]
a[-10:-10]=['aaa','bbb']
print(a)
#production
['aaa', 'bbb', 1, 2, 3]
list [x: y] = élément à ajouter
└ Remplacez la plage de x à y-1.
└ y n'est pas inclus
** ▼ Remplacer le nième élément **
list[n:n+1]
Remplacement du numéro d'index 2
a=[1,2,3,4,5,6,7]
a[2:3]=['aaa','bbb']
print(a)
##production
[1, 2, 'aaa', 'bbb', 4, 5, 6, 7]
Tout remplacer en même temps
a=[1,2,3,4,5,6,7]
a[0:5]=['aaa','bbb']
print(a)
##production
['aaa', 'bbb', 6, 7]
Remplacez la plage 0-4.
python
a=[1,2,3,4,5,6,7]
a[0:10]=['aaa','bbb']
print(a)
#production
['aaa', 'bbb']
** ▼ Lorsque hors de portée est spécifié 2 **
python
a=[1,2,3,4,5,6,7]
a[10:20]=['aaa','bbb']
print(a)
#production
[1, 2, 3, 4, 5, 6, 7, 'aaa', 'bbb']
python
a=[1,2,3,4,5,6,7]
a[:]=['aaa','bbb']
print(a)
#production
['aaa', 'bbb']
supprimer
└ S'il y en a plusieurs, ** seul le premier élément ** est supprimé
└ La valeur inexistante est une erreur
python
a = [1,2,3]
a.remove(1)
print(a)
#production
[2, 3]
** ▼ Lorsqu'il y a plusieurs valeurs spécifiées **
python
a = [1,2,3,1,2,3,1,2,3]
a.remove(2)
print(a)
#production
[1, 3, 1, 2, 3, 1, 2, 3]
Supprimez uniquement le premier élément.
pop (numéro d'index)
└ Supprimer la valeur du numéro d'index correspondant
└ Les nombres en dehors de la plage sont des erreurs
python
a = [1,2,3]
a.pop(2)
print(a)
#production
[1, 2]
Numéro d'index 2 supprimé (valeur 3).
▼ Erreur en dehors de la plage
python
a = [1,2,3]
a.pop(-10)
print(a)
#production
IndexError: pop index out of range
python
a = [1,2,3]
a.clear()
print(a)
##production
[]
Tout le contenu disparaît. Le conteneur (variable) reste.
Bien que ce ne soit pas une méthode pour la liste, les éléments peuvent être supprimés avec l'instruction del.
del objet de la liste [numéro d'index]
└ Numéro d'index spécifié par tranche
python
a=[1,2,3]
del a[0]
print(a)
##production
[2, 3]
Identique à la méthode pop.
[Valeur de départ: valeur de fin] └ La valeur finale n'est pas supprimée. (Moins que)
Numéro 3~Retirer 4 (5 non inclus)
b=[1,2,3,4,5,6,7,8,9]
del b[3:5]
print(b)
##production
[1, 2, 3, 6, 7, 8, 9]
Spécifiez la plage entière «[:]» dans la tranche.
python
a=[1,2,3]
del a[:]
print(a)
##production
[]
Identique à la méthode claire.
sort()
└ Par défaut (inverse = Faux)
└ Aucun argument requis * Erreur si saisie
Tri croissant
a=[4,2,10,-10]
a.sort()
print(a)
##production
[-10, 2, 4, 10]
Alphabet
a=[]
a.extend("egkacb")
a.sort()
print(a)
##production
['a', 'b', 'c', 'e', 'g', 'k']
sort(reverse=True)
└ Spécifiez "reverse = True" comme option
Tri décroissant
a=[4,2,10,-10]
a.sort(reverse=True)
print(a)
##production
[10, 4, 2, -10]
Inversion numérique
a=[4,2,10,-10]
a.reverse()
print(a)
##production
[-10, 10, 2, 4]
Inversion de l'alphabet
a=[]
a.extend("egkacb")
a.sort()
print(a)
##production
['b', 'c', 'a', 'k', 'g', 'e']
Parce que vous modifiez l'objet d'origine. Par exemple -A.append () fait référence à "a" lui-même. -Il n'existe pas de "a.append ()".
n'existe pas
a = [1,2,3]
b = a.append(4)
print(b)
##production
None
Puisque la variable inexistante est affectée à la variable b, le contenu de b est Aucun.
Si vous souhaitez ajouter plus d'éléments, jouez à nouveau avec un lui-même.
▼ Question Lorsqu'un élément parmi insérer, imprimer, supprimer, ajouter, trier, pop, inverser est entré, le processus correspondant est exécuté.
--insert a b: Insère la valeur b au numéro d'index a. --remove a: supprime la première valeur a. --append a: ajoute la valeur a à la fin. --pop a: Supprime la valeur du numéro d'index a --sort: tri croissant. --reverse: liste inversée --print: sortie
▼sample input
python
12 #Nombre de commandes à saisir
insert 0 5
insert 1 10
insert 0 6
print
remove 6
append 9
append 1
sort
print
pop
reverse
print
▼sample output
python
[6, 5, 10]
[1, 5, 9, 10]
[9, 5, 1]
▼answer1
python
if __name__ == '__main__':
n = int(input())
lists = [input() for _ in range(n)]
arr=[]
for i in lists:
arr.append(i.split())
res=[]
for j in arr:
if len(j) >= 2:
a=int(j[1])
if len(j) >=3:
b=int(j[2])
#Chaque processus
if j[0]=="insert":
res.insert(a, b)
if j[0]=="print":
print(res)
if j[0]=="remove":
res.remove(a)
if j[0]=="append":
res.append(a)
if j[0]=="sort":
res.sort()
if j[0]=="reverse":
res.reverse()
if j[0]=="pop":
res.pop()
ans=res
python
n = int(input())
l = []
for _ in range(n):
s = input().split()
cmd = s[0]
args = s[1:]
if cmd !="print":
#Créez une partie d'argument avec une chaîne de caractères et combinez-la avec cmd
cmd += "("+ ",".join(args) +")"
#Exécuter l'expression (chaîne de caractères entre parenthèses)
eval("l."+cmd)
else:
print (l)
・ ʻEval ("expression") ` └ Mettez une expression dans l'argument * Pas une déclaration
Exécute l'expression de la chaîne de caractères donnée par l'argument. ・ Exemple: eval ("list.insert (2,5)")
Recommended Posts