Codebeispiele für Variablen und Operatoren in Python

不言
Freigeben: 2018-10-27 14:26:14
nach vorne
1903 Leute haben es durchsucht

Dieser Artikel enthält Codebeispiele zu Variablen und Operatoren in Python. Ich hoffe, dass er für Freunde hilfreich ist.

Was ist eine Variable?

Angenommen, zwei Listen führen mathematische Operationen aus.

>>> [1,2,3,4,5,6] [1,2,3]
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    [1,2,3,4,5,6] [1,2,3]
TypeError: list indices must be integers or slices, not tuple

//A B,先把A乘以3,然后加上B,最后再加上列表A
>>> [1,2,3,4,5,6]*3+[1,2,3]+[1,2,3,4,5,6]
[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 1, 2, 3, 4, 5, 6]

>>> A = [1,2,3,4,5,6]
>>> print(A)
[1, 2, 3, 4, 5, 6]
>>> B = [1,2,3]
>>> A*3 + B + A
[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 1, 2, 3, 4, 5, 6]
Nach dem Login kopieren

Benennungsregeln für Variablennamen

Variablennamen können nur Buchstaben, Zahlen und Unterstriche verwenden

>>> 1a = 2   //变量名的首字母不能是数字
SyntaxError: invalid syntax
>>> A2 = '1'
>>> _2 = '1'
>>> A*B='1'
SyntaxError: can't assign to operator
Nach dem Login kopieren

Systemschlüsselwörter, die nicht in Variablennamen verwendet werden können. Reservierte Schlüsselwörter

>>> and = 1
SyntaxError: invalid syntax
>>> if = 2
SyntaxError: invalid syntax
>>> import = 3
SyntaxError: invalid syntax
>>> type = 3   //type不是系统保留关键字,但是不建议作为变量名,否则极易出错
>>> print(type)
3
>>> type = 1
>>> type(1)
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    type(1)
TypeError: 'int' object is not callable
>>> 1(1)
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    1(1)
TypeError: 'int' object is not callable
Nach dem Login kopieren

Funktionen der dynamischen Python-Sprache, bei der Deklaration nicht erforderlich Geben Sie den Variablentyp

>>> a = '1'
>>> a = 1
>>> a = (1,2,3)
>>> a = {1,2,3}
Nach dem Login kopieren

Werttyp und Referenztyp

int, str, tuple sind Werttypen (unveränderlich), list, set, dict sind Referenztypen (can Ändern)

1.int

>>> a = 1
>>> b = a
>>> a = 3
>>> print(b)
1
Nach dem Login kopieren

2.list

>>> a = [1,2,3,4,5]
>>> b = a
>>> a[0] = '1'
>>> print(a)
['1', 2, 3, 4, 5]
>>> print(b)
['1', 2, 3, 4, 5]
>>> a = [1,2,3]
>>> id(a)
4405825224
>>> hex(id(a))
'0x1069b8ec8'
>>> a[0]='1'
>>> id(a)
4405825224
>>>
Nach dem Login kopieren

3.str

>>> a = 'hello'
>>> a = a + 'python'  //a加上一个新的字符串,不再是原来的字符串了
>>> print(a)
hellopython
>>> b = 'hello'
>>> id(b)
4405534032
>>> b = b + 'python'  //加上新的字符串后,id改变
>>> id(b)
4355329456
>>> 'python'[0]
'p'
>>> 'python'[0]='o'
Traceback (most recent call last):
  File "<pyshell#8>", line 1, in <module>
    'python'[0]='o'
TypeError: 'str' object does not support item assignment
Nach dem Login kopieren

4.tuple

>>> a = (1,2,3)
>>> a[0] = '1'
Traceback (most recent call last):
  File "<pyshell#21>", line 1, in <module>
    a[0] = '1'
TypeError: 'tuple' object does not support item assignment
>>> b = [1,2,3]
>>> b.append(4)
>>> print(b)
[1, 2, 3, 4]
>>> c = (1,2,3)
>>> c.append(4)
Traceback (most recent call last):
  File "<pyshell#26>", line 1, in <module>
    c.append(4)
AttributeError: 'tuple' object has no attribute 'append'

>>> a = (1,2,3,[1,2,4])
>>> a[2]
3
>>> a[3]
[1, 2, 4]
>>> a[3][2]
4
>>> a = (1,2,3,[1,2,['a','b','c']])
>>> a[3][2][1]
'b'
>>> a = (1,2,3,[1,2,4])
>>> a[2] = '3'
Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
    a[2] = '3'
TypeError: 'tuple' object does not support item assignment
>>> a[3][2] = '4'
>>> print(a)    //元组内的列表可变
(1, 2, 3, [1, 2, '4'])
Nach dem Login kopieren

Operatoren

1. Arithmetische Operatoren: +, -, *, /, //, %, **

>>> 'hello'+'world'
'helloworld'
>>> [1,2,3]*3
[1, 2, 3, 1, 2, 3, 1, 2, 3]
>>> 3-1
2
>>> 3/2
1.5
>>> 3//2   //整除
1
>>> 5%2   //求余
1
>>> 2**2   //求N次方
4
>>> 2**5
32
Nach dem Login kopieren

2 , *=, /=, %=, **=, //=

>>> c = 1
>>> c = c+1
>>> print(c)
2
>>> c+=1
>>> print(c)
3
>>> c-=1
>>> print(c)
2
>>> c++   //python中没有自增和自减运算符
SyntaxError: invalid syntax
>>> c--
SyntaxError: invalid syntax
>>> b=2
>>> a=3
>>> b+=a
>>> print(b)
5
>>> b-=a
>>> print(b)
2
>>> b*=a
>>> print(b)
6
Nach dem Login kopieren

3. Vergleichsoperatoren (relationale Operatoren): ==, ! =, >, <, >=, <=

>>> 1==1
True
>>> 1>1
False
>>> 1>=1
True
>>> a>=b
Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    a>=b
NameError: name 'a' is not defined
>>> a=1
>>> b=2
>>> a!=b
True
>>> b=1
>>> b+=b>=1    //b=b+True
>>> print(b)
2
>>> print(b>=1)     
True

>>> 1>1
False
>>> 2>3
False
>>> 'a'>'b'
False
>>> ord('a')
97
>>> ord('b')
98
>>> 'abc'<&#39;abd&#39;   //实际上是a和a比,b和b比,c和d比
True
>>> ord('abc')
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    ord('abc')
TypeError: ord() expected a character, but string of length 3 found
>>> ord('c')
99
>>> ord('d')
100
>>> [1,2,3]<[2,3,4]
True
>>> (1,2,3)<(1,3,2)
True
Nach dem Login kopieren

4. Logische Operatoren: und, oder, nicht

>>> True and True
True
>>> True and False
False
>>> True or False
True
>>> False or False
False
>>> not False
True
>>> not True
False
>>> not not True
True</p>
<p>0 gilt als falsch, ungleich 0 bedeutet wahr </p>
<pre class="brush:php;toolbar:false">>>> 1 and 1
1
>>> 'a' and 'b'
'b'
>>> 'a' or 'b'
'a'
>>> not 'a'
False
>>> a = True
>>> b = False
>>> a or b
True
>>> b and a
False
Nach dem Login kopieren

Leere Zeichenfolge Falsch

>>> not 0.1
False
>>> not ''
True
>>> not '0'
False
Nach dem Login kopieren

Leere Liste Falsch

>>> not []
True
>>> not [1,2]
False
>>> [1] or []
[1]
>>> [] or [1]
[1]
>>> 'a' and 'b'
'b'
>>> '' and 'b'
''
>>> 1 and 0
0
>>> 0 and 1
0
>>> 1 and 2
2
>>> 2 and 1
1
>>> 0 or 1
1
>>> 1 or 0
1
>>> 1 or 2
1
Nach dem Login kopieren

5. Mitgliedschaftsoperator: in, nicht in

>>> a = 1
>>> a in [1,2,3,4,5]
True
>>> b = 6
>>> b in [1,2,3,4,5]
False
>>> b not in [1,2,3,4,5]
True
>>> b = 'h'
>>> b in 'hello'
True
>>> b not in (1,2,3,4,5)
True
>>> b not in {1,2,3,4,5}
True
>>> b = 'a'
>>> b in {'c':1}
False
>>> b = 1
>>> b in {'c':1}
False
>>> b = 'c'
>>> b in {'c':1}   //字典里面根据key返回
True
Nach dem Login kopieren

6. Identitätsoperationssymbole: ist, ist nicht

Drei Merkmale des Objekts: ID, Wert, Typ, verwenden Sie „is“, um die ID zu beurteilen, verwenden Sie „==“, um den Wert zu beurteilen, und verwenden Sie „isinstance“, um den Typ zu beurteilen

>>> a = 1
>>> b = 1
>>> a is b
True
>>> a='hello'
>>> b='world'
>>> a is b
False
>>> c='hello'
>>> a is c
True
>>> a=1
>>> b=2
>>> a==b
False
>>> a=1
>>> b=1
>>> a is b
True
>>> a==b
True
>>> a=1
>>> b=1.0
>>> a==b
True
>>> a is b   //is不是比较值相等,比较的是两个变量的身份(内存地址)是否相等
False
>>> id(a)
4374928384
>>> id(b)
4376239272


>>> a={1,2,3}
>>> b={2,1,3}
>>> a==b    //集合是无序的
True
>>> a is b
False
>>> id(a)
4433997384
>>> id(b)
4433996488

>>> c=(1,2,3)
>>> d=(2,1,3)
>>> c==d    //元组是序列,是有序的
False
>>> c is d
False

>>> a=1
>>> b=2
>>> a==b
False
>>> a is b
False

>>> a = 'hello'
>>> type(a) == int
False
>>> type(a) == str
True
>>> isinstance(a,str)   //isinstance是判断变量类型的函数
True
>>> isinstance(a,int)
False
>>> isinstance(a,(int,str,float))
True
>>> isinstance(a,(int,float))
False
Nach dem Login kopieren

7. Bitoperatoren: (== Zahlen als Binärzahlen verarbeiten==)

  • &bitweises UND

  • |Bitweises ODER

  • ^Bitweises XOR

  • ~Bitweise Negation

  • <

  • >>Nach rechts bewegen

Bitweise UND-Verknüpfung, vergleiche jede Binärziffer, zwei Wenn beide 1 sind, erhalten Sie 1. Solange eine ist 0, Sie erhalten 0

>>> a = 2
>>> b = 3
>>> a & b
2
Nach dem Login kopieren
变量

转换为十进制
a 1 0 2
b 1 1 3
按位与 1 0 2

Bitweise ODER-Verknüpfung, vergleichen Sie jede Binärziffer, solange eine 1 ist, erhalten Sie 1, beide Wenn alle 0 sind, erhalten wir 0

>>> a = 2
>>> b = 3
>>> a | b
3
Nach dem Login kopieren
变量

转换为十进制
a 1 0 2
b 1 1 3
按位或 1 1 3

Das obige ist der detaillierte Inhalt vonCodebeispiele für Variablen und Operatoren in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage