Python a un support intégré pour les entiers (nombres sans fractions tels que 5 et 10000000), les nombres décimaux immobiles (3.12121, 14.99, 1.32e3, etc.) et les nombres imaginaires.
Opération à quatre règles.
>>> 5
5
>>> 0
0
#Ne mettez pas de zéro devant le nombre.
>>> 09
File "<stdin>", line 1
09
^
SyntaxError: invalid token
>>> 123
123
>>> +123
123
>>> -123
-123
>>> 5+9
14
>>> 100-7
93
>>> 4-10
-6
>>> 5+9+3
17
>>> 4+3-2-1+6
10
>>> 6*7
42
>>> 7*7
49
>>> 6*7*2*3
252
#Calcul progressif du nombre à virgule flottante (décimal)
>>> 9/5
1.8
#Effectuer un calcul progressif d'entiers (tronqués)
>>> 9//5
1
>>> 9/0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: division by zero
>>> 9//0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: integer division or modulo by zero
C'est la même règle que le langage C, donc j'aimerais l'omettre. .. ..
>>> a=85
>>> a
85
>>> a-5
80
>>> a
85
>>> a=a-3
>>> a
82
>>> a
82
>>> a=95
>>> a-=3
>>> a
92
>>> a +=8
>>> a
100
>>> a *=3
>>> a
300
>>> a/=3
>>> a
100.0
>>> a=12
>>> a=13
>>> a//=4
>>> a
3
>>> 9%5
4
#Vous pouvez obtenir le quotient (tronqué) et le surplus ensemble
>>> divmod(9,5)
(1, 4)
Comme avec d'autres langues, la multiplication et la division ont une priorité plus élevée que l'addition et la soustraction.
>>> 2+3*4
14
>>> 2+(3*4)
14
Les nombres entiers sont considérés comme décimaux (base 10) sauf indication contraire dans le préfixe.
La base indique le nombre de nombres qui peuvent être utilisés jusqu'à ce que «porter». Par exemple, les nombres binaires ne sont que 0 et 1. 0 a la même signification que le décimal 0, et 1 a la même signification que le décimal 1 mais l'addition de 1 à 1 donne 10 (1 nombre décimal 2 et 0 1).
#Pour binaire, cela signifie 1 décimal 2 et 0 1
>>> 0b10
2
#Pour octal, cela signifie 1 décimal 8 et 0 1
>>> 0o10
8
#Pour hexadécimal, cela signifie 1 nombre décimal 16 et 0 1
>>> 0x10
16
Utilisé lors de la conversion de types de données non entiers dans Python en entiers. Ne laissez que la partie entière et tronquez la partie fractionnaire.
>>> int(True)
1
>>> int(False)
0
>>> int(98.6)
98
>>> int(1.0e4)
10000
>>> int('99')
99
>>> int(''-213)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for -: 'str' and 'int'
>>> int('-123')
-123
>>> int(12345)
12345
#Une erreur se produit lorsque vous essayez de convertir quelque chose qui ne ressemble pas à un nombre
>>> int('9aaaaaa')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '9aaaaaa'
>>> int('')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: ''
>>> int('98.6')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '98.6'
#Ne traite pas les chaînes contenant des exposants ou des nombres à virgule flottante.
>>> int('1.9e2')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '1.9e2'
>>> 4+7.4
11.4
#Vrai est 1 ou 1.Traité comme 0
>>> True +2
3
#False est 0 ou 0.Traité comme 0
>>> False+3.5
3.5
Il peut représenter des nombres supérieurs à 64 bits. (N'importe quelle taille est OK)
Un entier est un nombre qui n'a pas de valeur sous-décimale, mais un nombre à virgule flottante a une valeur de subdivision.
>>> float(True)
1.0
>>> float(False)
0.0
>>> float(45)
45.0
>>> float('45')
45.0
>>> float('98.6')
98.6
>>> float('-1.2')
-1.2
>>> float('2.0e5')
200000.0
Les chaînes Python sont immuables et ne peuvent pas être réécrites à la volée. Cependant, il est possible de copier une partie d'une chaîne de caractères dans une autre chaîne de caractères.
L'interpréteur interactif ajoute un guillemet simple lors de l'écho d'une chaîne, mais Python le traite exactement de la même manière quelle que soit la citation que vous utilisez.
>>> 'Snap'
'Snap'
>>> 'Crackle'
'Crackle'
>>> "Crackle"
'Crackle'
>>> "'Ue'mura"
"'Ue'mura"
>>> '"Ue"mura'
'"Ue"mura'
>>> ''
''
>>> """"""
'' #Chaîne vide
Vous pouvez utiliser la fonction str () pour convertir d'autres types de données Python en chaînes. Python appelle en interne la fonction str () lorsqu'un appel print () est effectué avec un objet non-string comme argument ou lorsqu'une chaîne est développée.
>>> str(98.6)
'98.6'
>>> str(1.9e4)
'19000.0'
>>> str(True)
'True'
Python échappe certains caractères de la chaîne pour obtenir des effets difficiles à exprimer d'une autre manière.
#\n signifie saut de ligne
>>> palindorome = "A man,\nA plan,\nA canal:\nPanama"
>>> print(palindorome)
A man,
A plan,
A canal:
Panama
#\t sert à aligner le texte
>>> print('\tabc')
abc
>>> print('a\tbc')
a bc
>>> print('abc\t')
abc
#Si vous souhaitez utiliser des guillemets dans la chaîne, avant eux\Entrer.
>>> testimony = "\"I did nothing! \""
>>> print(testimony)
"I did nothing! "
>>> testimony = "I did nothing! \\"
>>> print(testimony)
I did nothing! \
Vous pouvez concaténer des chaînes littérales et des variables de chaîne à l'aide de l'opérateur + comme indiqué ci-dessous.
>>> 'a' + "a"
'aa'
#Dans le cas de chaînes littérales, vous pouvez les concaténer simplement en les arrangeant dans l'ordre.
>>> 'a' "a"
'aa'
>>> a="Duck."
>>> b=a
>>> c="Great Duck."
#Pas d'espace
>>> a+b+c
'Duck.Duck.Great Duck.'
#L'espace est automatiquement entré
>>> print(a,b,c)
Duck. Duck. Great Duck.
Vous pouvez répéter la chaîne à l'aide de l'opérateur *.
>>> start ="Na" * 4 + "\n"
>>> start
'NaNaNaNa\n'
>>> middle="Hey" * 3 + "\n"
>>> middle
'HeyHeyHey\n'
>>> end = "goobye."
>>> print(start + start + middle + end)
NaNaNaNa
NaNaNaNa
HeyHeyHey
goobye.
Lorsque vous souhaitez extraire un caractère dans une chaîne de caractères, suivez le décalage du caractère entre crochets ([]) après le nom de la chaîne de caractères. Comment compter le décalage Le premier décalage (le plus à gauche) est 0, et le droit est 1 .... Le décalage (le plus à droite) du dernier caractère est -1, à gauche est -2 ....
>>> letters = 'abcdefghijklmnopqrstuvwxyz'
>>> letters[0]
'a'
>>> letters[-1]
'z'
>>> letters[-2]
'y'
>>> letters[25]
'z'
>>> letters[4555]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: string index out of range # Une erreur se produit si un décalage plus long que la longueur de la chaîne est spécifié. (N'oubliez pas que le décalage va de ["0" à "length-1".)
#Comme la chaîne de caractères est immuable, il n'est pas possible d'insérer des caractères directement dans la chaîne de caractères ou de réécrire le caractère à la position d'index spécifiée.
>>> name="Henny"
>>> name[0]=P
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'P' is not defined
>>> name[0]='P'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
#Remplacer la fonction de chaîne()Et des combinaisons de tranches doivent être utilisées.
>>> name.replace('H','P')
'Penny'
>>> 'P'+name[1:]
'Penny'
La plupart de ce chapitre a également été appris en langage C. Faisons de notre mieux demain.
"Introduction à Python3 par Bill Lubanovic (publié par O'Reilly Japon)"