Heim >Backend-Entwicklung >Python-Tutorial >Teilen Sie verschiedene Bedienfähigkeiten von Listen in Python
Ich lerne kürzlich die Python-Sprache. Grundsätzlich habe ich die grundlegende Syntax von Python gelernt. Ich bin der Meinung, dass die Position von Python in der Datenverarbeitung untrennbar mit seiner Listenoperation verbunden ist.
Hier habe ich die relevanten Grundoperationen gelernt und mir Notizen gemacht.
''' Python --version Python 2.7.11 Quote : https://docs.python.org/2/tutorial/datastructures.html#more-on-lists Add by camel97 2017-04 ''' list.append(x) #在列表的末端添加一个新的元素 Add an item to the end of the list; equivalent to a[len(a):] = [x].
list.extend(L)#Füge die Elemente in den beiden Listen zusammen
Erweitere die Liste, indem du alle Elemente in der angegebenen Liste anhängst, die einem[ entsprechen; len(a):] = L.
list.insert(i, x)#Fügen Sie das Element an der angegebenen Position ein (die Position ist die vorherige des Elements mit Index i)
Einfügen Element an einer bestimmten Position. Das erste Argument ist der Index des Elements, vor dem eingefügt werden soll. Daher wird a.insert(0, x) am Anfang der Liste eingefügt und a.insert(len(a), x) ist Äquivalent zu a.append(x).
list.remove(x)#Entfernen Sie das erste Element mit dem Wert x in der Liste (d. h. wenn zwei x in der Liste vorhanden sind, wird nur das erste x entfernt gelöscht werden)
Entfernen Sie das erste Element aus der Liste, dessen Wert x ist. Es ist ein Fehler, wenn kein solches Element vorhanden ist.
list.pop([i])# Liste löschen Das i-te Element in und gibt dieses Element zurück. Wenn der Parameter i nicht angegeben ist, wird standardmäßig das letzte Element in der Liste gelöscht.
Entfernen Sie das Element an der angegebenen Position in der Liste und geben Sie es zurück. Wenn kein Index angegeben ist, wird a.pop() entfernt und zurückgegeben das letzte Element in der Liste. (Die eckigen Klammern um das i in der Methodensignatur zeigen an, dass der Parameter optional ist und nicht, dass Sie an dieser Position eckige Klammern eingeben sollten. Diese Notation wird häufig in der Python-Bibliotheksreferenz angezeigt.)
list.index(x)#Gibt den Index in der Liste des ersten Elements zurück, dessen Wert x ist. Es ist ein Fehler, wenn es kein solches Element gibt.
list.count (x)#Gibt die Anzahl der Elemente mit dem Wert x in der Liste zurück
Gibt die Häufigkeit zurück, mit der x in der Liste erscheint.
Ergebnis:
#-*-coding:utf-8-*- L = [1,2,3] #创建 list L2 = [4,5,6] print L L.append(6) #添加 print L L.extend(L2) #合并 print L L.insert(0,0) #插入 print L L.remove(6) #删除 print L L.pop() #删除 print L print L.index(2)#索引 print L.count(2)#计数 L.reverse() #倒序 print L
list.sort(cmp=None, key=None, reverse=False)
[1, 2, 3] [1, 2, 3, 6] [1, 2, 3, 6, 4, 5, 6] [0, 1, 2, 3, 6, 4, 5, 6] [0, 1, 2, 3, 4, 5, 6] [0, 1, 2, 3, 4, 5] 2 1 [5, 4, 3, 2, 1, 0]Sortieren Sie die Elemente der Liste an Ort und Stelle (die Argumente können zum Sortieren verwendet werden). Anpassung, siehe sorted() für ihre Erklärung).1. Sortieren Sie eine Liste. Standardmäßig wird von klein nach groß sortiert
2.reverse ist ein boolescher Wert. Der Standardwert ist „True“, dann werden die Elemente in dieser Liste entsprechend verglichen entgegengesetztes Ergebnis. (Umgekehrte Reihenfolge).
L = [2,5,3,7,1] L.sort() print L ==>[1, 2, 3, 5, 7] L = ['a','j','g','b'] L.sort() print L ==>['a', 'b', 'g', 'j']# reverse ist ein boolescher Wert. Wenn auf True gesetzt, werden die Listenelemente so sortiert, als ob jeder Vergleich umgekehrt wäre.
3 .key ist eine Funktion, die den Sortierschlüssel angibt, normalerweise ein Lambda-Ausdruck oder eine angegebene Funktion
L = [2,5,3,7,1] L.sort(reverse = True) print L ==>[7, 5, 3, 2, 1] L = ['a','j','g','b'] L.sort(reverse = True) print L ==>['j', 'g', 'b', 'a']#key gibt eine Funktion eines Arguments an, das zum Extrahieren eines Vergleichsschlüssels aus jedem Listenelement verwendet wird: key =str .lower. Der Standardwert ist None (die Elemente direkt vergleichen).
4.cmp ist eine Funktion, die zwei Parameter angibt. Es bestimmt die Sortiermethode.
#-*-coding:utf-8-*- #创建一个包含 tuple 的 list 其中tuple 中的三个元素代表名字 , 身高 , 年龄 students = [('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)] print students ==>[('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)] students.sort(key = lambda student:student[0]) print students ==>[('Dave', 180, 10), ('John', 170, 15), ('Tom', 160, 12)]#按名字(首字母)排序 students.sort(key = lambda student:student[1]) print students ==>[('Tom', 160, 12), ('John', 170, 15), ('Dave', 180, 10)]#按身高排序 students.sort(key = lambda student:student[2]) print students ==>[('Dave', 180, 10), ('Tom', 160, 12), ('John', 170, 15)]#按年龄排序#cmp gibt eine benutzerdefinierte Vergleichsfunktion zweier Argumente (iterierbarer Elemente) an, die eine negative, null oder positive Zahl zurückgeben soll, je nachdem, ob das erste #Argument als kleiner, gleich oder größer als das zweite angesehen wird Argument: cmp=lambda x,y: cmp(x.lower(), y.lower()). Der Standardwert ist None.
cmp ermöglicht Benutzern die Anpassung des Größenverhältnisses. Normalerweise denken wir 1 <
#-*-coding:utf-8-*- students = [('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)] print students ==>[('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)] #指定 用第一个字母的大写(ascii码)和第二个字母的小写(ascii码)比较 students.sort(cmp=lambda x,y: cmp(x.upper(), y.lower()),key = lambda student:student[0]) print students ==>[('Dave', 180, 10), ('Tom', 160, 12), ('John', 170, 15)] #指定 比较两个字母的小写的 ascii 码值 students.sort(cmp=lambda x,y: cmp(x.lower(), y.lower()),key = lambda student:student[0]) print students ==>[('Dave', 180, 10), ('John', 170, 15), ('Tom', 160, 12)] #cmp(x,y) 是python内建立函数,用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1Jetzt können wir die Funktion anpassen, um die Liste gemäß den angegebenen Regeln zu sortieren, indem wir das Größenverhältnis anpassen (z. B. 2 < a < 1 < b). Dies ist oft nützlich, wenn wir uns mit besonderen Problemen befassen.
Das obige ist der detaillierte Inhalt vonTeilen Sie verschiedene Bedienfähigkeiten von Listen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!