Python Interpréteur intégré(Interne)Beaucoup de fonctions,Ce blog les présente un par un,Les blogueurs qui jugent nécessaire de donner un exemple de code donnent un exemple de code.
Déclaration:Blogueurs(Algorithme d'image haohong)En écrivant ce billet de blog,- Oui.PythonLe numéro de version est3.9.10.
Documents officiels:https://docs.python.org/zh-cn/3.9/library/functions.html#built-in-functions
Description:Les documents officiels énumèrent14*5-1=59Fonctions intégrées,Mais les blogueurs pensentclassmethod、staticmethod、propertyCe sont plutôt les trois mots clés qui définissent la classe,Il n'y a donc pas d'introduction dans ce billet de blog,Si vous voulez voir ces trois présentations,Voir mon autre billet de blog,Liens https://blog.csdn.net/wenhao_ir/article/details/125383895
Cet article de blog fait référence à plusieurs reprises à l'introduction d'objets itérables , Qu'est - ce qu'un objet itérable? ?
Liste、Tuple、 Les dictionnaires et les collections sont des objets itérables typiques , Ces objets contiennent des méthodes __iter__() Ou__next__(). Les éléments d'un objet itérable peuvent passer par ses méthodes internes __iter__() Ou __next__()Traverser.
abs(x)
Renvoie la valeur absolue d'un nombre. Le paramètre peut être un entier、Nombre de points flottants ou toute réalisation __abs__() Objet de. Si le paramètre est un nombre complexe,Renvoie son module.
L'exemple de code n'est pas donné. .
Qu'est - ce qu'un objet itérable ?Liste、Tuple、 Les dictionnaires et les collections sont des objets itérables typiques , Ces objets contiennent des méthodes __iter__() Et __next__(). Les éléments d'un objet itérable peuvent passer par ses méthodes internes __iter__() Et __next__()Traverser.
Alors, quelles sont les conditions que l'objet élément satisfait pour TrueEt alors??Voir mon autre billet de blog https://blog.csdn.net/wenhao_ir/article/details/125439660
Attention!:C'est logique.,Tuple vide、La valeur booléenne de la liste vide estFalse, Donc pour les tuples vides 、Liste vide,Fonctionsall()Ça devrait revenirFalseC'est vrai,Mais ce n'est pas le cas, Pour les tuples vides 、 Fonction de liste vide all() La valeur de retour pour True,Une attention particulière doit être accordée à.
Voici un exemple de code::
list1 = [1, 2, 3]
list2 = [-1, 2, 3]
list3 = [0, 2, 3]
list4 = []
bool1 = all(list1)
bool2 = all(list2)
bool3 = all(list3)
bool4 = all(list4)
Les résultats sont les suivants:
Qu'est - ce qu'un objet itérable ?Liste、Tuple、 Les dictionnaires et les collections sont des objets itérables typiques , Ces objets contiennent des méthodes __iter__() Et __next__().
any() Fonction utilisée pour déterminer si un objet itérable a plus d'un élément comme True,Si l'un d'eux est True,Renvoie True;Si tout estFalse,Renvoie False.
Alors, quelles sont les conditions que l'objet élément satisfait pour TrueEt alors??Voir mon autre billet de blog https://blog.csdn.net/wenhao_ir/article/details/125439660
Attention!:Pour les fonctionsany()En termes,Tuple vide、La valeur de retour de la liste vide estFalse.
Voici un exemple de code::
list1 = [0, '', False, None]
list2 = [-1, 2, 3]
list3 = [0, 2, 3]
list4 = []
bool1 = any(list1)
bool2 = any(list2)
bool3 = any(list3)
bool4 = any(list4)
Les résultats sont les suivants:
Fonctionsascii() Renvoie n'importe quel objet (String、Tuple、Liste, etc)Une version lisible de, C'est un peu comme forcer un objet à ASCIIChaîne de code, Il va ASCIIRemplacer le caractère par le caractère d'évasion.
Ce n'est pas très clair. , Regardez un exemple de code. .
Voici un exemple de code::
x1 = ascii('My name is Ståle')
print(x1)
x2 = ascii([77, 88, 'swh'])
print(x2)
Les résultats sont les suivants:
Attention ici.x1Dans“\xe5”Qu'est - ce qui se passe??C'est parce queASCII Aucun caractère dans le Code å , Il a donc été remplacé par \xe5
En plus, Nous voyons que les guillemets avant et après la chaîne sont également convertis en caractères .
Voici un exemple de code::
x1 = bin(10)
print(x1)
Les résultats sont les suivants:
À propos des fonctionsbool(), Voir mon autre billet de blog https://blog.csdn.net/wenhao_ir/article/details/125439660
Cette fonction est3.7 Après la version , La fréquence d'utilisation n'est pas élevée non plus. , Pas trop de présentations pour le moment .
Fonctionsbytearray()La syntaxe de:
bytearray([source[, encoding[, errors]]])
Description des paramètres:
Si source Est un entier,Renvoie une longueur de source Tableau d'initialisation pour;
Si source Pour la chaîne,Selon la spécification encoding Convertir une chaîne en séquence d'octets;
Si source Est un type itératif, Parce que chaque élément n'a qu'un octet de stockage ,L'élément doit être[0 ,255] Entier en;
Si aucun paramètre n'est entré,Par défaut, le tableau d'initialisation est0Éléments.
Voici un exemple de code::
bytearray0 = bytearray()
bytearray1 = bytearray(5)
bytearray2 = bytearray('suwenhao', 'utf-8')
bytearray3 = bytearray([65, 66, 67])
Les résultats sont les suivants:
D'après les résultats ci - dessus, nous pouvons voir:
①La longueur est source La valeur par défaut de l'élément du tableau d'initialisation pour est \x00
② Afficher comme suit: ASCII Code pour afficher sa valeur ,Alors...bytearray3 Les trois chiffres sont affichés en majuscules ABC.
Si l'objet spécifié est appelable ,Renvoie True,Sinon, retournez à False.
Attention!:Si la fonctioncallable()RetourTrue,object L'appel peut encore échouer;Mais si vous revenez False,Objet d'appel object Ça ne marchera jamais.
Pour les fonctions、Méthodes、lambda Fonction anonyme、 Classes et implémentations __call__ Exemple de classe pour la méthode, Il revient. True.
Voici un exemple de code::
def add(a_p, b_p):
return a_p + b_p
class A:
def method(self):
return 0
class B:
def __call__(self):
return 0
bool1 = callable(0) # Objet0 Ne peut pas être appelé ,C'est pour ça qu'il faut revenir.False
bool2 = callable(add) # FonctionsaddRetourTrue
bool3 = callable(A) # CatégorieARetourTrue
a = A()
bool4 = callable(a) # CatégorieAObjet instantané pouraNon réalisé__call__,C'est pour ça qu'il faut revenir.False
bool5 = callable(B) # CatégorieBRetourTrue
b = B()
bool6 = callable(b) # CatégorieBObjet instantané pourbC'est fait.__call__,C'est pour ça qu'il faut revenir.True
Les résultats sont les suivants:
Fonctionschr( i )Retour Unicode Le BIT de code est un entier i Format de chaîne pour les caractères de.Par exemple,chr(97) Renvoie la chaîne ‘a’,chr(8364) Renvoie la chaîne ‘€’.
i — C'est possible. 10 Le système décimal peut aussi être 16 Les chiffres sous forme décimale,La plage numérique est 0 À 1,114,111 (16 Décimal as0x10FFFF).
Voici un exemple de code::
char1 = chr(97)
char2 = chr(8364)
Les résultats sont les suivants:
En plus, Fonctions disponibles ord()Renvoie le caractèreASCII Valeur numérique ou UnicodeValeur numérique, Pour plus de détails, voir la Section du présent document. 47Fonctions.
Fonctionscompile() .Pour compiler le Code de chaîne dans un objet de code exécutable .
Après avoir lu cette phrase ci - dessus, je ne sais toujours pas ce qu'elle a fait .C'est bon, Regardez l'exemple de code. .
Voici un exemple de code::
a1 = 188
x = compile('print(a1)', 'jhoij', 'eval')
eval(x)
Les résultats sont les suivants:
Nous pouvons voir à partir de l'exemple de code ci - dessus , Lorsqu'une déclaration print(a1) Exécuté sous la forme evalDecompileAprès l'opération, J'ai l'objet. x,Pour le momenteval() Objet d'appel de fonction x, C'est comme exécuter une déclaration. print(a1).
À quoi bon une telle opération? ?
J'a i trouvé un point en ligne comme suit: :
Lorsque le code sous forme de chaîne est exécuté , Ces codes doivent être compilés en octets à chaque fois .compile() La fonction fournit un code d'octet unique précompilé , Chaque fois que vous appelez , Pas besoin de compiler. .
Mais les blogueurs ( Hao hongjun ) Je trouve ça un peu problématique. ,D'après l'exemple ci - dessus,, Chaque fois que vous lancez ce script, vous l'exécutez une fois compile()Fonctions, C'est toujours compilé. , Sauf si ses résultats sont mis en cache quelque part .
compile()La syntaxe de la fonction est la suivante:
compile(source, filename, mode[, flags[, dont_inherit,[ optimize]]])
La signification des paramètres est la suivante::
Au pluriel oui Python Un type de valeur dans .Vous pouvez utiliser la fonctioncomplex() Le pluriel est obtenu en spécifiant les parties réelles et imaginaires du pluriel .
Voici un exemple de code::
z1 = complex(7, 8)
print(z1)
Les résultats sont les suivants:
La syntaxe est la suivante::
delattr(object, name)
object – Objet.
name – Doit être une propriété de l'objet.
Voici un exemple de code::
class Coordinate:
x = 10
y = -5
z = 0
point1 = Coordinate()
print('x = ', point1.x)
print('y = ', point1.y)
print('z = ', point1.z)
delattr(Coordinate, 'z')
print('--Supprimer z Après la propriété--')
print('x = ', point1.x)
print('y = ', point1.y)
# Erreur de déclenchement
print('z = ', point1.z)
Les résultats sont les suivants:
Fonctionsdict() Pour plus de détails, voir le blog https://blog.csdn.net/wenhao_ir/article/details/125412774 De“01-Annexe2”
Fonctionsdir() Pour plus de détails, voir le blog https://blog.csdn.net/wenhao_ir/article/details/125421060
Voici un exemple de code::
result_1 = divmod(5, 2)
Les résultats sont les suivants:
À propos des fonctionsenumerate()Description détaillée de, Voir mon autre billet de blog :https://blog.csdn.net/wenhao_ir/article/details/125443427
Voir la fonction compile()Introduction, Plus précisément, c'est le numéro 11- Oui..
filter() Fonction utilisée pour filtrer les séquences,Filtrer les éléments non admissibles,Renvoie un objet Itérateur,Si vous voulez convertir en liste,Peut être utilisé list() Pour convertir.
Il est temps de recevoir deux paramètres,Le premier est la fonction,La deuxième est la séquence,Chaque élément de la séquence est passé à la fonction comme paramètre pour le jugement,Et revenir à True Ou False,Enfin, il reviendra à True Éléments de la nouvelle liste.
Voici un exemple de code::
def is_odd(n):
return n % 2 == 1
tmplist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
newlist = list(tmplist)
print(newlist)
Les résultats sont les suivants:
Cette fonction et la Liste (list)Méthodesort()Premier paramètre pourkey C'est très similaire. ,Pour plus de détails, voir le bloghttps://blog.csdn.net/wenhao_ir/article/details/125406092
Qu'est - ce que? Les chaînes peuvent également être converties en nombres flottants ,C'est vrai.,Tu n'as pas tort., Regardez l'exemple ci - dessous. .
int1 = 112
str1 = '123'
float_1 = float(int1)
float_2 = float(str1)
Les résultats sont les suivants:
D'après les résultats ci - dessus, nous pouvons voir,String’123’ A été converti en un nombre flottant 123.0,C'est ça.Python La flexibilité ,Même fonction,InC++ Classe requise stringstreamPour réaliser, Pour plus de détails, voir mon autre billet de blog https://blog.csdn.net/wenhao_ir/article/details/124508457
À propos des fonctionsformat(),Je suis déjà sur le bloghttps://blog.csdn.net/wenhao_ir/article/details/125390532Décrit en détail dans,Il n'y aura plus d'introduction ici.
Fonctionsfrozenset() Utilisé pour renvoyer un objet itérable gelé d'un objet itérable original , Un objet itérable gelé ne peut ajouter ou supprimer aucun élément .
Voici un exemple de code::
list1 = ['Google', 'CSDN', 'tencent', 1997, 1999, 1998]
list2 = frozenset(list1)
list2[0] = 'facebook'
Les résultats sont les suivants:
Voici un exemple de code::
class A(object):
bar = 1
a1 = A()
b1 = getattr(a1, 'bar')
Les résultats sont les suivants:
Si vous voulez définir la valeur de propriété de l'objet ,Vous pouvez utiliser la fonctionsetattr() Pour mettre en place !Fonctionssetattr() Voir le numéro de ce billet de blog 56Fonctions
globals() La fonction renvoie toutes les variables globales de l'emplacement actuel en tant que type de Dictionnaire.
Voici un exemple de code::
str1 = 'suwenhao'
int1 = 1990
list1 = [1, 2, 3]
global_variable = globals()
Les résultats sont les suivants:
Fonctionshasattr()Voici un exemple de code pour:
class Coordinate:
x = 10
y = -5
z = 0
point1 = Coordinate()
bool1 = hasattr(point1, 'x')
bool2 = hasattr(point1, 'y')
bool3 = hasattr(point1, 'z')
bool4 = hasattr(point1, 'no') # Il n'y a pas de propriété
Les résultats sont les suivants:
Voici un exemple de code::
hash1 = hash('swh')
hash2 = hash(2487872782)
Exécuter le code ci - dessus deux fois ,Les résultats sont les suivants::
Résultats de la première opération:
Résultats de la deuxième course:
D'après les résultats des deux opérations ci - dessus ,Une chaîne dehash Les valeurs ne sont pas uniques ,Entierhash Valeur ou elle - même .
Voici un exemple de code::
help('sys') # VoirsysAide du module
help('str') # Voirstr Aide pour la classe
a = [1, 2, 3]
help(a) # Voir la ListelistAide
help(a.append) # VoirlistDeappend Aide méthodologique
Les deux lignes de code suivantes
a = [1, 2, 3]
help(a.append) # VoirlistDeappend Aide méthodologique
Voici les résultats de l'opération:
Voici un exemple de code::
hex1 = hex(10)
Les résultats sont les suivants:
Attention!:Fonctionshex()Renvoie un objet string.
Voici un exemple de code::
str1 = 'CSDN'
id1 = id(str1)
Les résultats sont les suivants:
Voici un exemple de code::
str1 = input("input:")
Les résultats sont les suivants:
Première course(Chaîne d'entrée):
Deuxième course(Entrez le numéro)
D'après les résultats de la deuxième opération , Les chiffres entrés sont également traités comme des chaînes .Mais peu importe,Nous pouvons utiliser des fonctionsfloat()Ou fonctionint() Convertir les nombres de type chaîne en floatType etint- Oui..
La syntaxe est la suivante::
int(x, base=10)
Signification du paramètre:
x – Chaîne ou numéro.
base – Représentantx Pour quel nombre décimal , Notez qu'il ne s'agit pas d'une notation décimale pour l'île de retour
Voici un exemple de code::
int1 = int(3.6)
int2 = int('20')
int3 = int('12', 16) #16Décimal12Convertir en10Le système décimal est18
int4 = int('0xa', 16)
Les résultats sont les suivants:
D'après les résultats de l'opération ci - dessus,Fonctionsint() Lors de la conversion d'un nombre flottant en entier , Pour les fractions décimales, le traitement est éliminé directement ,Au lieu d'arrondir.
Voici un exemple de code::
a = 2
bool1 = isinstance(a, int)
bool2 = isinstance(a, str)
bool3 = isinstance(a, (str, int, list)) # Si c'est un Tuple, il retourne True
Les résultats sont les suivants:
La syntaxe est la suivante::
issubclass(class1, class2)
Si class1 - Oui. class2 La Sous - classe pour renvoie True,Sinon, retournez à False.
Voici un exemple de code::
class A:
pass
class B(A):
pass
class C:
pass
bool1 = issubclass(B, A)
bool2 = issubclass(B, C)
Les résultats sont les suivants:
Cette fonction est utilisée pour générer un objet Itérateur pour un objet itérable .ParlistExemple d'objet, Si on veut passer à travers l'Itérateur ,Comment faire?? L'une des façons est que M. devienne son objet Itérateur , Ensuite, utilisez la fonction intégrée next()Effectuer une opération de traversée.
Fonctions intégréesnext()La syntaxe de:
next(iterable[, default])
iterable – Objets itérables
default – Facultatif,Utilisé pour définir le retour de cette valeur par défaut lorsqu'il n'y a pas d'élément suivant,Si ce n'est pas réglé,Aucun autre élément ne déclenchera StopIteration Anomalie.
Regardez la fonction. iter()Syntaxe de:
iter(object[, sentinel])
Selon qu'il y a un deuxième argument , L'interprétation du premier argument est très différente .
S'il n'y a pas de deuxième argument ,object Doit être un protocole d'itération de soutien (Oui. __iter__() Méthodes)Objet de collection pour(Comme une liste.、Tuple、 Tout est là. __iter__() Méthode,Bowenhttps://blog.csdn.net/wenhao_ir/article/details/125421060 Les résultats de l'exécution du premier exemple de code pour ), Ou le Protocole de séquence doit être pris en charge (Oui. __getitem__() Méthodes, Et les paramètres numériques vont de 0 C'est parti.). S'il ne prend pas en charge ces protocoles ,Ça va déclencher TypeError.
S'il y a un deuxième argument sentinel,Alors object Doit être un objet appelable . Itérateur généré dans ce cas , Chaque itération l'appelle __next__() Les méthodes sont appelées sans arguments object;Si le résultat retourné est sentinel Déclenche StopIteration, Pour arrêter l'itération , Sinon, le résultat de l'appel est retourné ..
Parfait. iter() Une des applications de la deuxième forme est le lecteur de blocs de construction . Par exemple, Lire un bloc de largeur fixe à partir d'un fichier de base de données binaire , Jusqu'à la fin du fichier , Voici un exemple de ce cas: :
from functools import partial
with open('mydata.db', 'rb') as f:
for block in iter(partial(f.read, 64), 'b'):
process_block(block)
La fonction ci - dessuspartial() Est itéré sans paramètres ,Jusqu'à ce que sa valeur de retour soit’b’ Pour arrêter l'itération .
Revenons à la première situation. ,En utilisant la fonctioniter()Et fonctionsnext() Voici un exemple de code pour itérer la liste :
x = iter(["apple", "banana", "cherry"])
print(next(x))
print(next(x))
print(next(x))
Les résultats sont les suivants:
C'est à propos des chaînes 、Liste、Tuple、Dictionnaire、 La collection a été introduite , Pour plus de détails, voir le lien ci - dessous :
https://blog.csdn.net/wenhao_ir/article/details/125396412( Dans ce billet de blog 14-3 Utilisé en point len()Mesurer la longueur de la chaîne)
https://blog.csdn.net/wenhao_ir/article/details/125400072
https://blog.csdn.net/wenhao_ir/article/details/125407815
https://blog.csdn.net/wenhao_ir/article/details/125412774
https://blog.csdn.net/wenhao_ir/article/details/125424671
Donc, plus d'exemples ici. .
Voici un exemple de code::
tup1 = ('Google', 'Taobao', 'CSDN', 555)
list1 = list(tup1)
str1 = "Hello World"
list2 = list(str1)
Les résultats sont les suivants:
Fonction de corrélation:
62-Fonctionstuple(): Convertir des objets itérables en tuples
locals() La fonction renvoie toutes les variables locales de la position courante dans le type de Dictionnaire.
Voici un exemple de code::
def fun1(arg): # Deux variables locales:arg、z
z = 1
print(locals())
fun1(6)
Les résultats sont les suivants:
map() La fonction mappe la séquence spécifiée en fonction de la fonction fournie. Son premier paramètre et listMéthodesort()、filter() Le premier argument de la fonction est similaire à .
sort() Pour une description détaillée de la méthode, voir le blog https://blog.csdn.net/wenhao_ir/article/details/125406092
filter() Les fonctions sont décrites ci - dessus .
Exemple de code I ci - dessous :
def square(x): # Calculer le carré
return x ** 2
iter1 = map(square, [1, 2, 3, 4, 5])
list1 = list(iter1)
Les résultats sont les suivants:
L'exemple de code II est le suivant:(Fonction anonyme):
iter1 = map(lambda x: x ** 3, [1, 2, 3, 4, 5])
list1 = list(iter1)
Les résultats sont les suivants:
Cette fonction est utilisée pour 、Liste、 Il est mentionné dans l'introduction des tuples , Dans une chaîne, il apparaît comme une méthode de classe de caractères , Mais il fonctionne aussi sur les objets string .
Voici un exemple complet de code .
str1 = 'abcdef'
max_str1 = max(str1)
list1 = [10, 11, 12, 13]
max_list1 = max(list1)
tup1 = (20, 21, 22, 25)
max_tupl1 = max(tup1)
set1 = {
50, 51, 52, 53}
max_set1 = max(set1)
Les résultats sont les suivants:
Ce qu'on appelle un objet de visualisation de mémoire,Est l'emballage des données qui supportent le Protocole tampon, Puis vous pouvez le voir en octets .
Voici un exemple de code::
v = memoryview(bytearray("abcefg", 'utf-8'))
v_01 = v[1]
v_02 = v[2]
Les résultats sont les suivants:
J'ai l'impression quePycharm-IDE Ce n'est pas très important. ,Parce que je suisIDE Vous pouvez facilement voir la mémoire de l'objet .
Fonctionsmin()Et40- Oui.max()L'utilisation est la même, C'est juste qu'il renvoie le minimum , C'est pour ça qu'on n'en parle plus ici. , Ne donnez pas non plus de code d'exemple .
Fonctionsnext()En introduction35-Fonctionsiter()C'est déjà fait.,Plus de présentation ici.
object() La fonction renvoie un objet vide .
Vous ne pouvez pas ajouter de nouvelles propriétés ou méthodes à cet objet, Cette fonction n'accepte aucun argument .
Cet objet est la base de toutes les classes,Il a des propriétés et des méthodes intégrées par défaut pour toutes les classes.
Voici un exemple de code::
x = object()
Les résultats sont les suivants:
Fonctionsoct()Convertir un entier en 8 Chaîne décimale,8 Les chiffres sont 0o Comme préfixe pour indiquer.
Voici un exemple de code::
str1 = oct(10)
Les résultats sont les suivants: :
open()Fonction pour ouvrir un fichier,Et renvoie l'objet de fichier,Cette fonction est nécessaire lors du traitement des fichiers,Si le fichier ne peut pas être ouvert,Va lancer OSError.
Attention!: Une fois l'objet de fichier utilisé ,N'oubliez pas d'appelerclose()Fonction fermer le fichier.
open() La forme courante d'une fonction est de recevoir deux arguments :Nom du fichier(file)ET MODALITÉS(mode).
open(file, mode='r')
Le format syntaxique complet est le suivant: :
pen(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
file— Chemin ou nom du fichier .
mode—Mode d'ouverture du fichier,Les détails sont les suivants::
Notes complémentaires:
mode Est une chaîne optionnelle,Utilisé pour spécifier le mode d'ouverture du fichier.
La valeur par défaut est ‘r’ ,Avec ‘rt’ Synonymes, Cela signifie qu'il ouvre et lit le fichier en mode texte .
D'autres modes courants sont: :Écrire ‘w’ 、Création exclusive ‘x’ 、Ajouter ‘a’(In Quelques Unix Sur le système, Quel que soit l'emplacement actuel du pointeur de fichier ,Tous les Toutes les écritures sont ajoutées à la fin du fichier ).
Continuer avec les fonctions open()Autres paramètres pour.
En mode texte ,Si encoding Non spécifié, Le codage à utiliser est déterminé en fonction de la plate - forme :Utiliser locale.getpreferredencoding(False) Pour obtenir le code local .
Pour lire et écrire les octets originaux , Veuillez utiliser le mode binaire et ne pas spécifier encoding.
Fichiers ouverts en mode binaire (Y compris: mode Dans le paramètre ‘b’ )Le contenu retourné est bytes Objet, Pas de décodage .En mode texte(Par défaut,Ou mode Inclus dans le paramètre ‘t’ )Heure, Le contenu du fichier est retourné comme suit: str , Utiliser d'abord le encoding (Si) Ou décoder en utilisant l'encodage octet par défaut de la plateforme .
Mode ‘w+’ Avec ‘w+b’ Le fichier s'ouvre et le contenu est vide .
Mode ‘r+’ Avec ‘r+b’ Ouvrir le fichier ne vide pas le contenu .
buffering— Ce paramètre est utilisé pour définir le tampon .
encoding— encoding Est le nom de l'encodage utilisé pour décoder ou encoder le fichier ,Utilisation généraleutf8. Ceci ne doit être utilisé qu'en mode texte . L'encodage par défaut dépend de la plate - forme (Sans tenir compte locale.getpreferredencoding() Quelle valeur est retournée ), Mais vous pouvez utiliser n'importe quel PythonSoutien text encoding . À propos de la liste des encodages pris en charge ,VoirPythoncodecs Module.
errors– Est un paramètre de chaîne optionnel , Utilisé pour spécifier comment traiter les erreurs d'encodage et de décodage - Ceci ne peut pas être utilisé en mode binaire . Divers gestionnaires d'erreurs standard sont disponibles (Listé dans Gestion des erreurs ),Mais utiliser codecs.register_error() Tout nom de traitement des erreurs enregistré est également valide . Les noms standard comprennent: :
newline— Contrôle de la nouvelle ligne du fichier ,C'est - à - dire: universal newlines Comment le mode fonctionne - t - il? ( Il ne s'applique qu'au mode texte ).Ça pourrait être None,‘’,‘\n’,‘\r’ Et ‘\r\n’.Il fonctionne comme suit::
En lisant l'entrée du flux ,Si newline Pour None,Activer le mode d'enroulement universel.Les lignes en entrée peuvent être ‘\n’,‘\r’ Ou ‘\r\n’ Fin, Ces lignes sont traduites en ‘\n’ Avant de retourner à l'appelant .Si c'est ‘’,Activer le mode d'enroulement universel, Mais la fin de la ligne sera retournée à l'appelant sans traduction .Si elle a d'autres valeurs légales,La ligne d'entrée se termine par une chaîne donnée seulement, Et la fin de la ligne sera retournée à l'appelant non appelé .
Lors de l'écriture de la sortie au flux ,Si newline Pour None,Tout ce qui est écrit ‘\n’ Les caractères sont convertis en séparateurs de ligne par défaut du système os.linesep.Si newline - Oui. ‘’ Ou ‘\n’,Sans traduction.Si newline Est toute autre valeur légale ,Tout ce qui est écrit ‘\n’ Les caractères seront convertis en une chaîne donnée .
closefd—Si closefd - Oui. False Et donne un descripteur de fichier au lieu d'un nom de fichier , Alors quand le fichier sera fermé , Le descripteur de fichier sous - jacent restera ouvert . Si vous donnez un nom de fichier closefd Doit être True (Par défaut),Sinon, une erreur sera lancée.
opener— Peut être appelé en passant opener Pour utiliser un démarreur personnalisé . Puis en utilisant les paramètres ( file,flags )Appelez opener Obtient le descripteur de fichier de base de l'objet de fichier . opener Un descripteur de fichier ouvert doit être retourné (Utiliser os.open as opener Temps et transmission None Même effet).
ord() La fonction estchr() Fonction pour 8 Bitwise ASCII String)Fonction d'appariement pour[Fonctionschr()Voir le paragraphe10- Oui.],C'est une chaîne(Unicode Les caractères)Comme paramètre,Renvoie le ASCII Valeur numérique,Ou Unicode Valeur numérique.
Voici un exemple de code::
int1 = ord('a')
char1 = chr(int1)
Les résultats sont les suivants:
La syntaxe est la suivante::
pow(x, y[, z])
CalculxDeySecondaire,SizEn présence,Ensuite, le résultat est modélisé,Le résultat est équivalent àpow(x,y) %z
Voici un exemple de code::
int1 = pow(2, 3)
int2 = pow(2, 3, 6)
Les résultats sont les suivants:
Fonctionsprint() Pour plus de détails, voir mon autre billet de blog :https://blog.csdn.net/wenhao_ir/article/details/125390532
Fonctionsproperty() Généralement utilisé pour obtenir 、Paramètres、 Supprimer une propriété de la classe .
Fonctionsproperty()La syntaxe de:
class property([fget[, fset[, fdel[, doc]]]])
Paramètres:
fget – -Fonction pour obtenir la valeur de l'attribut( La fonction n'a pas nécessairement pour fonction d'obtenir la valeur de l'attribut , C'est facile à comprendre en regardant l'exemple de code )
fset —Fonction qui définit la valeur de la propriété( La fonction n'est pas nécessairement vraiment de définir la valeur de l'attribut , C'est facile à comprendre en regardant l'exemple de code )
fdel — Supprimer la fonction de valeur de propriété( La fonction ne supprime pas nécessairement les attributs , C'est facile à comprendre en regardant l'exemple de code )
doc — Description de l'attribut.
Voici un exemple de code::
class C(object):
def __init__(self):
self._x = None
def getx(self):
return self._x
def setx(self, value):
self._x = value
def delx(self):
del self._x
x = property(getx, setx, delx, "I'm the 'x' property.")
Si c - Oui. C Instanciation de, Et
c.x Sera appelégetx(),
c.x = value Sera appelésetx()
del c.x Sera appelédelx()
Si doc Paramètres,Ce sera la valeur de cet attribut docstring,Sinon property Les fonctions sont copiées fget Fonction docstring(Le cas échéant).
Continuer à affiner l'exemple de code comme suit: :
# Blogueur Wechat/QQ 2487872782
# Si vous avez des questions, contactez les blogueurs pour communiquer
class C(object):
def __init__(self):
self._x = 100
self._y = 200
def getx(self):
print('called getx and x={}'.format(self._x))
def setx(self, value):
self._x = value
print('called setx and x={}'.format(self._x))
def delx(self):
del self._x
print('called delx')
def gety(self):
print('called gety and y={}'.format(self._y))
def sety(self, value):
self._y = value
print('called sety and y={}'.format(self._y))
def dely(self):
del self._y
print('called dely')
x = property(getx, setx, delx, "I'm the 'x' property.")
y = property(gety, sety, dely, "I'm the 'y' property.")
c = C()
c.x
c.x = 12
del c.x
c.y
help(c)
Les résultats sont les suivants:
Dans le code ci - dessus, j'ai défini deux fonctions et property() Noms de propriétés connexes ,Respectivement:xEty,Et je suis toujours là pourxEty Trois fonctions sont définies ,ParxPar exemple, Ces trois fonctions passent respectivement par
c.x
c.x = 12
del c.x
Pour appeler.
Attention!:
Python3 range() La fonction renvoie un objet itérable, Au lieu d'un objet de liste ,Vous pouvez utiliser la fonctionlist()Convertir en liste.
Python2 range() La fonction renvoie une liste .
La syntaxe est la suivante:(Il y a deux formes):
range(stop)
range(start, stop[, step])
start—Compter à partir de start C'est parti..La valeur par défaut est de 0 C'est parti..Par exemplerange(5)Équivalent àrange(0, 5);
stop:—Compte à stop Fin,Mais à l'exclusion de stop.Par exemple:range(0, 5- Oui.[0, 1, 2, 3, 4], Note non incluse 5.
step—Étapes,Par défaut1.Par exemple:range(0, 5) Équivalent à range(0, 5, 1)
Voici un exemple de code::
rang1 = range(5)
list1 = list(rang1)
for i in range(1, 4, 1):
print(i)
Les résultats sont les suivants:
Voici un exemple de code::
dict1 = {
'name': 'suwenhao', 'likes': 'reading', 123: 456}
str1 = repr(dict1)
print(str1)
list1 = ['Google', 'CSDN', 1997, 1999]
str2 = repr(list1)
print(str2)
Les résultats sont les suivants:
Voici un exemple de code::
Fonctions intégréesstr() Comme cette fonction ,Fonctionsstr() Pour une introduction à 59Point.
Voici un exemple de code::
str1 = 'abcdefg'
str1_reverse = reversed(str1)
str1_reverse_list = list(str1_reverse)
list1 = [1, 2, 3, 4, 5]
list1_reverse = reversed(list1)
list1_reverse_list = list(list1_reverse)
tup1 = ('A', 'B', 'C', 'D')
tup1_reverse = reversed(tup1)
tup1_reverse_list = list(tup1_reverse)
Les résultats de l'opération sont présentés ci - dessous:
La syntaxe est la suivante::
round( x [, n] )
Signification du paramètre:
x — Nombre de points flottants à traiter .
n — Indique le nombre de décimales à conserver ,La valeur par défaut est0, C'est - à - dire que la partie décimale n'est pas conservée .
Attention!: Il fait une approximation arrondie ,Au lieu d'arrondir, Regardez l'exemple de code ci - dessous pour voir .
Voici un exemple de code::
print("round(70.3) : ", round(70.3))
print("round(70.4) : ", round(70.4))
print("round(70.5) : ", round(70.5))
print("round(70.6) : ", round(70.6))
print("round(70.7) : ", round(70.7))
print("round(80.23, 1) : ", round(80.23, 1))
print("round(80.24, 1) : ", round(80.24, 1))
print("round(80.25, 1) : ", round(80.25, 1))
print("round(80.26, 1) : ", round(80.26, 1))
print("round(80.27, 1) : ", round(80.27, 1))
Les résultats sont les suivants:
Fonctionsset()À Bowen https://blog.csdn.net/wenhao_ir/article/details/125424671 Déjà présenté dans,Il n'y aura plus d'introduction ici.
Fonctionssetattr()Fonction correspondantegetattr(),Pour définir la valeur de la propriété, Cette propriété n'existe pas nécessairement. .
La syntaxe est la suivante::
setattr(object, name, value)
La signification des paramètres est la suivante::
object – Objet.
name – String,Propriétés de l'objet.
value – Valeur de l'attribut
Voici un exemple de code::
class A(object):
bar = 1
a = A()
bar1 = getattr(a, 'bar') # Obtenir les propriétésbarValeur de
setattr(a, 'bar', 5) # Définir les objetsaPropriétés debarValeur de
bar2 = getattr(a, 'bar') # Récupérer les propriétés à nouveau barValeur de
Les résultats sont les suivants:
slice() Fonction implémenter l'objet slice,Passage de paramètres principalement utilisé dans les fonctions d'opération de tranche.
La syntaxe est la suivante::
Il y a deux formes:
slice(stop)
slice(start, stop[, step])
Signification du paramètre:
start – Valeur de l'indice de départ
stop – Valeur de l'index Final
step – Espacement des index
Voici un exemple de code::
list1 = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
slice1 = slice(5)
list_sub1 = list1[slice1]
slice2 = slice(1, 8, 2)
list_sub2 = list1[slice2]
Les résultats sont les suivants:
Analyse icilist_sub2Comment l'avez - vous eu??
L'intervalle d'index est [1, 8) Notez qu'il s'agit d'une section ouverte à gauche, fermée à droite..
L'étape de l'index est 2, La valeur d'index valide est 1、1+2=3、3+2=5、5+2=7
Valeur de l'index1、3、5、7 Les valeurs des éléments correspondants sont: :10、40、60、80
Alors...list_sub2Pour[20, 40, 60, 80]
Bien sûr., Nous n'utilisons généralement pas cet objet de tranche , Et écrivez l'expression de la tranche directement ,
C'est - à - dire que nous mettons habituellement les mots :
slice2 = slice(1, 8, 2)
list_sub2 = list1[slice2]
Écrit comme suit::
list_sub2 = list1[1:8:2]
Fonctionssorted() Utilisation et méthodes de la Liste sort() La méthode d'utilisation et la fonction sont essentiellement les mêmes .
La différence est que la fonction sorted() Vous pouvez trier tous les éléments d'objets itérables , Et il renvoie une nouvelle Liste . Et les méthodes de la Liste sort() Il ne peut être utilisé que pour les listes , Et fonctionne sur l'objet de liste original .
Donc ce n'est plus une fonction sorted() Introduction , Vous pouvez vous référer à mon autre billet de blog https://blog.csdn.net/wenhao_ir/article/details/125400072Moyenne16 Approche point à point sort()Introduction.
Fonctions intégréesrepr() Comme cette fonction ,Fonctionsrepr() Pour une introduction à 52Point.
Voici un exemple de code::
dict1 = {
'name': 'suwenhao', 'likes': 'reading', 123: 456}
str1 = str(dict1)
print(str1)
list1 = ['Google', 'CSDN', 1997, 1999]
str2 = str(list1)
print(str2)
Les résultats sont les suivants:
Fonctions intégréesrepr() Comme cette fonction ,Fonctionsrepr() Pour une introduction à 52Point.
La syntaxe est la suivante::
sum(iterable, start)
La signification des paramètres est la suivante::
iterable—Obligatoire. Objets itérables pour les exigences et (Séquence).
start—Facultatif. Valeur ajoutée à la valeur de retour .
Voici un exemple de code::
resutl1 = sum([0, 1, 2])
result2 = sum((2, 3, 4), 1) # L'objet Tuple calcule la somme avant d'ajouter 1
result3 = sum([0, 1, 2, 3, 4], 2) # Ajouter après le calcul de la somme dans la Liste2
Les résultats sont les suivants:
Description détaillée de cette fonction , Voir mon autre billet de blog :https://blog.csdn.net/wenhao_ir/article/details/125472478
Voici un exemple de code::
list1 = ['Google', 'Taobao', 'Runoob', 'Baidu']
tuple1 = tuple(list1)
Les résultats sont les suivants:
Fonction de corrélation:
37-Fonctionslist(): Utilisé pour convertir des tuples ou des chaînes en listes
Fonctionstype()Il y a deux syntaxe:
type(object)
type(name, bases, dict)
La première syntaxe renvoie le type d'objet , La deuxième syntaxe renvoie un nouvel objet de type .
La première syntaxe est couramment utilisée , La Seconde syntaxe est rarement utilisée , Donc l'exemple de code suivant ne donne qu'un exemple de code pour la première syntaxe :
type1 = type(1)
type2 = type([1, 2, 'swh'])
type3 = type({
0: 'zero'})
x = 1
bool1 = type(x) == int # Déterminer si le type estintType
Les résultats sont les suivants:
D'après les résultats de l'opération ci - dessus,Fonctionstype() Ce n'est pas une chaîne retournée ,Mais...typeObjet,typeObjet appartenant à“Special Variables”.
Syntonie, Vous pouvez également utiliser des opérateurs relationnels “==” Juger le type Oh .
Voici un exemple de code::
class Person:
name = "Bill"
age = 19
country = "USA"
x1 = dir(Person) # Renvoie toutes les propriétés de la classe
x2 = vars(Person) # Renvoie la classe__dic__Propriétés
Les résultats sont les suivants:
Les données disent que c'est l'objet retourné. __dic__ Propriétés, Mais je ne peux pas revenir. ,Comme suit:
class Person:
name = "Bill"
age = 19
country = "USA"
object1 = Person()
x1 = vars(object1)
Les résultats sont les suivants:
Peut - être que les objets de ces données considèrent aussi les classes comme des objets ~Dans ma tête, L'Instanciation d'une classe est considérée comme un objet .
zip() La fonction est utilisée pour prendre un objet itérable comme paramètre,Emballer les éléments correspondants de l'objet en tuples,Puis renvoie l'objet composé de ces tuples,L'avantage est d'économiser beaucoup de mémoire.
On peut utiliser list() Convertir en liste de sortie.
Si le nombre d'éléments dans chaque Itérateur est incohérent,La longueur de la liste de retour est la même que celle de l'objet le plus court,Utilisation * Opérateur No.,Vous pouvez décompresser un Tuple dans une liste.
Voici un exemple de code::
a = [1, 2, 3]
b = [4, 5, 6]
c = [11, 12, 13, 14, 15]
zip1 = zip(a, b)
list1 = list(zip1)
zip2 = zip(a, c)
list2 = list(zip2)
Les résultats sont les suivants:
Utilisation * Opérateur No.,Vous pouvez décompresser un Tuple dans une liste,Voici un exemple de code::
tup1 = ((1, 4), (2, 5), (3, 6))
a1, b1 = zip(*tup1)
Les résultats sont les suivants:
Bien que les mots clés importLa même fonction peut être réalisée, Mais en général, nous utilisons des mots clés au début du programme import Entrée dans l'opération d'importation , Si nous voulons être au milieu du programme ,Vous pouvez utiliser les fonctions intégrées__import__(), Ça rend le programme agréable. .
Sa syntaxe est la suivante:
__import__(name[, globals[, locals[, fromlist[, level]]]])
La signification des paramètres optionnels n'est pas explorée pour le moment .
Voici un exemple de code::
my_script.pyLes codes sont les suivants:
print('Successfully imported my_ script!')
print('my_script execution completed!')
001-32-Fonctions intégrées.pyLes codes sont les suivants:
list1 = [1, 2, 3]
__import__('my_script')
list2 = [7, 8, 9]
Les résultats sont les suivants:
Références:https://blog.csdn.net/wenhao_ir/article/details/125100220