Artikelverzeichnis
eingebaute Eigenschaften
Verwenden Sie die integrierte Funktion dir
, um alle von einem Objekt unterstützten Eigenschaften und Methoden anzuzeigen. In Python gibt es viele integrierte Eigenschaften.
__slots__
Python unterstützt dynamische Attribute, Sie können Attribute direkt über die Punktsyntax zu einem Objekt hinzufügen und der Code ist flexibler. In einigen Fällen müssen wir jedoch möglicherweise die Eigenschaften steuern. Zu diesem Zeitpunkt können wir __slots__
die Implementierung verwenden.
class Person(object):
__slots__ = ('name', 'age')
def __init__(self, name, age):
self.name = name
self.age = age
p = Person('张三', 18)
p.name = '李四'
# 对象p只能设置name和age属性,不能再动态添加属性
# p.height = 180 # 报错
__doc__
Gibt die beschreibenden Informationen der Klasse an.
class Foo:
""" 描述类信息,这是用于看片的神奇 """
def func(self):
pass
print(Foo.__doc__)
# 输出:类的描述信息
__module__
und __class__
__module__
Gibt an, in welchem Modul sich das Objekt der aktuellen Operation befindet; __class__
welche Klasse das Objekt der aktuellen Operation hat.
test.py
class Person(object):
def __init__(self):
self.name = 'laowang'
main.py
from test import Person
obj = Person()
print(obj.__module__) # 输出 test 即:输出模块
print(obj.__class__) # 输出 test.Person 即:输出类
__dict__
Zeigen Sie in Form eines Wörterbuchs alle Eigenschaften und Methoden des Objekts an.
class Province(object):
country = 'China'
def __init__(self, name, count):
self.name = name
self.count = count
def func(self, *args, **kwargs):
print('func')
# 获取类的属性,即:类属性、方法、
print(Province.__dict__)
# 输出:{'__dict__': <attribute '__dict__' of 'Province' objects>, '__module__': '__main__', 'country': 'China', '__doc__': None, '__weakref__': <attribute '__weakref__' of 'Province' objects>, 'func': <function Province.func at 0x101897950>, '__init__': <function Province.__init__ at 0x1018978c8>}
obj1 = Province('山东', 10000)
print(obj1.__dict__)
# 获取 对象obj1 的属性
# 输出:{'count': 10000, 'name': '山东'}
obj2 = Province('山西', 20000)
print(obj2.__dict__)
# 获取 对象obj1 的属性
# 输出:{'count': 20000, 'name': '山西'}
__getitem__
, __setitem__
und __delitem__
Methoden
Diese drei Methoden bearbeiten das Objekt als Wörterbuch.
class Foo(object):
def __getitem__(self, key):
print('__getitem__', key)
def __setitem__(self, key, value):
print('__setitem__', key, value)
def __delitem__(self, key):
print('__delitem__', key)
obj = Foo()
result = obj['k1'] # 自动触发执行 __getitem__
obj['k2'] = 'laowang' # 自动触发执行 __setitem__
del obj['k1'] # 自动触发执行 __delitem__
Fortgeschrittener Fall
[Python] Python erkennt das Wort-Ratespiel – fordern Sie Ihre Intelligenz und Ihr Glück heraus!
[Python] Verwenden Sie Selenium, um (2023 Blog Star)-Einträge zu erhalten
[Xiaobai muss sehen] Detaillierte Analyse und Codeimplementierung des Python-Wortwolkengenerators
[Xiaobai muss sehen] Python crawlt ein Beispiel für NBA-Spielerdaten
[Xiaobai muss sehen] Python-Crawler-Datenverarbeitung und -visualisierung
Geodatenverarbeitung und Visualisierung mit Geopandas und Shapely (.shp)
Verwenden Sie Selen, um die Daten der Maoyan-Filmliste zu crawlen
Erste Schritte mit Crawlern (4): Der beste Weg, dynamische Webseiten mit Selenium und API zu crawlen
Leitfaden zum Einstieg in Crawler (3): Python-Netzwerkanfragen und gängige Anti-Crawler-Strategien
Erste Schritte mit Reptilien (1): Lernen Sie die Grundlagen und Fähigkeiten von Reptilien
Grundlagen der objektorientierten Python-Programmierung und Beispielcode
Anleitung zum Betrieb von Python-Dateien: Kodierung, Lesen, Schreiben und Ausnahmebehandlung
Verwenden Sie Python und Selenium, um das Crawlen zu automatisieren
Selenium Automation Toolset – Vollständiger Leitfaden und Tutorials
Von den Grundlagen des Python-Webcrawlers bis hin zum eigentlichen Kampf-Tutorial
Tutorial zur Pandas-Datenverarbeitung und -Analyse: von den Grundlagen bis zum tatsächlichen Kampf
Detaillierte Erläuterung häufig verwendeter Datentypen und zugehöriger Vorgänge in Python