Python基础语法(更新中...)
Python基础语法
C/C++/Java中的注释
- 单行注释。
//
- 多行注释。
/*...*/
Python中的注释
-
单行注释。
#
多行注释。使用三个单引号或者三个双引号引起来
示例代码:
print('Hello') # 这里是单行注释 ''' 多行注释 。。。 。。。 ''' """ 多行注释 .... ... ... """
2.2 运算符
2.2.1 算数运算符
示例:
a = 8
b = 3
print(a + b) # 11
print(a - b) # 5
print(a * b) # 24
print(a ** b) # 512 幂
print(a / b) # 2.6666666666666665 除 小数
print(a // b) # 2 除 求整
print(a % b) # 2 取余
2.2.2 比较运算符
包括:(大于)、>=(大于等于)、<(小于)、<=(小于等于)、==(等于)、!=(不等于)
2.2.3 赋值运算符
包括:=(赋值语句)、+=(加法赋值)、-=(减法赋值)、*=(乘法赋值)、**=(幂赋值)、/=(非整除赋值)、//=(整除赋值)、%=(取余赋值)、…………
2.2.4 位运算符
包括:&(位与)、|(位或)、^(异或)、~(取反)、>>(右移)、<<(左移)
位与的特点:0&0=0 0&1=0 1&0=0 1&1=1 x&0=0 x&1=x
位或的特点:0|0=0 0|1=1 1|0=1 1|1=1 x|0=x x|1=1
异或的特点:0^0=0 0^1=1 1^0=1 1^1=0 x^0=x x^1=~x
取反的特点:~0=1 ~1=0
左移的特点:左移一位相当于乘以2
右移的特点:右移一位相当于除以2(整数除)
a = 19 # 0001 0011
b = 25 # 0001 1001
print(a & b) # 0001 0001 17
a = 19 # 0001 0011
b = 25 # 0001 1001
print(a | b) # 0001 1011 27
a = 19 # 0001 0011
b = 25 # 0001 1001
print(a ^ b) # 0000 1010 10
a = 19 # 0001 0011
print(~a) # 1110 1100 -20
a = 19 # 0001 0011
print(a << 1)# 0010 0110 38
a = 19 # 0001 0011
print(a >> 1)# 0000 1001 9
2.2.5 逻辑运算符
and(逻辑与)、or(逻辑或)、not(逻辑非)
注意:位运算符是对整数进行操作,逻辑运算符是对布尔值进行操作。
True and True = True True and False = False False and True = False False and False = False
True or True = True True or False = True False or True = True False or False = False
not True = False not False = True
c = True
d = False
print(c and d) # False
print(c or d) # # True
print(not c) # False
print(not d) # True
2.2.6 成员运算符
in(在序列中)、not in(不在序列中)
序列主要指:列表、元祖、字符串
str1 = 'Hello'
print('e' in str1) # True 如果'e'存在这个序列中则返回True,否则反之
print('a' in str1) # False
print('e' not in str1) # True 如果'e'不在这个序列中则返回True,否则反之
print('a' not in str1) # False
2.2.7 身份运算符
is(两个标识符是否同一个对象)、is not(两标识符是否不同一个对象)
a = 'hello'
b = 'hello'
print(a is b) # True
print(a is not b) # False
c = 'helloworld'
print(a is c) # False
print(a is not c) # True
ps:为什么 a 和 b 是同一个对象 ??
从下图中可以看出 b 和 b 指向的是同一个内容
2.2.8 三元运算符
如: c = a > b ? a : b
PS:通常情况下不建议写三元运算符,如果在条件很复杂的情况下使用三元运算符很容易出现错误,坑了别人也坑了自己。使用if else 即可。
2.2.9 运算符优先级
待更新…
2.3 数据类型
- C 语言的数据类型
int、short、long、float、double、char、[ ]、*、struct、union、enum
-
Java的数据类型:
基本数据类型:byte、short、int、long、float、double、char、boolean
引用数据类型:[ ]、class、interface
-
Python3的数据类型共9个:
基本数据类型:int、float、bool、str、complex(复数)
复杂数据类型:list(列表)、tuple(元祖)、set(集合)、dict(字典)
通过type()查看数据类型
a = 2
print(a) # 2
print(type(a)) # <class 'int'>
b = 3.14
print(b)
print(type(b)) # <class 'float'>
c = True # False
print(c)
print(type(c)) # <class 'bool'>
d = 'hello' # "world"
print(d)
print(type(d)) # <class 'str'>
e = 3-2j
print(e)
print(type(e)) # <class 'complex'>
f = [1,2,3]
print(f)
print(type(f)) # <class 'list'>
g = (1,2,3)
print(g)
print(type(g)) # <class 'tuple'>
h = {1,2,3}
print(h)
print(type(h)) # <class 'set'>
i = {
'name':'zhangsan',
'age':23,
'height':172.3,
'married':True,
'pets': ['wangcai', 'xiaoqiang', 'ruhua']
}
print(i)
print(type(i)) # <class 'dict'>
注意如下程序的运行结果:
print(not False) # True
print(not True) # False
print(not 0) # True
print(not 1) # False
print(not 3) # False
print(not -1) # False
print(False == 0) # True
print(True == 3) # False
print(1 is True) # False
print(1 is 1) # True
print(1 + True) # 2
print(0 == 0.0) # True
print(1 == 1.0) # True
Python 与其它编程语言不同的是,Python中的变量数据类型是可以随意切换的。
a = 1
print(a)
print(type(a)) # <class 'int'>
a = False
print(a)
print(type(a)) # <class 'bool'>
在Python 中如果变量不需要了,可以使用del删除该变量。
a = 1
print(a)
del a # 删除a变量
print('after del a')
print(a)
当我们使用的 del 删除变量时该变量会从内存中被释放。
2.4 标识符和关键字
标识符的特点,大部分编程语言都大同小异
- 标识符或关键字由字母、数字、下划线组成,其中不能以数字开头
- 大小写敏感
- 标识符不能是关键字
Python 中目前共保留的关键字有33个,可通过``keyword.kwlist`查看。
import keyword
print(keyword.kwlist)
系统保留关键字如下:
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
可分为以下8个分类:
特殊值(首字母大写):True、False、None
运算符:and、or、not、is、in
条件判断:if、else、elif
循环:for、while、break、continue
异常:try、except、finally、raise
函数和类:def、global、nonlocal、lambda、return、yield、class
导包:import、as、from
其他:assert、pass、with、del
== 未完 ==