一.Python基础语法
1.标识符(专门用来命名的 - 变量\函数\类)
- 是由字母数字下划线注册的(只能少不能多)
- 数字不能开头的
- 大小写敏感(大写和小写不一样,abc和Abc\ABC不一样)
- python3以后,标识中可以包含非ACSII码(可以包含中文),但是在实际开发中不建议使用
- 不能是关键字
2.关键字(保留字)
python中保留用来作为特殊语法和拥有特殊功能的一些单词
'''python
import keyword print(keyword.kwlist) #打印出python里的关键字: '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'
'''
保留字: | ||||
---|---|---|---|---|
False | None | True | break | and |
as | assert | 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 |
4.行与缩进
a.缩进的要求:
- 同一级的代码必须保持同一缩进(统一使用Tab来产生缩进)
- python用过缩进来产生代码块(类似于其他语言中的{})
b.行的规范:
- 申明函数的前后必须有两个换行
- 申明类的前后必须有两个换行
- 多个功能模块间用换行隔开
5.多行显示(一句代码多行显示)
- 在需要换行的地方加 \ ,然后再后面换行.换行后缩进不受限制
- 列表\字典\元祖和集合的字面量换行不用加\
6.字面量(具体的值)
- 数字字面量: 10, 20.1, -30, +40.0, 2e2, 1Oj
- 布尔值:True ---真 \ False --- 假 (首字母大写)
- 字符串: '' \ "" 内的内容为字符串
- 列表:[10,'python',True]里面可以有多个类型的数据
- 字典:{'a':10, 'name':'python'}
7.ptyhon中的基本数据类型
- 数字相关的: int(整型), float(浮点型), complex(复数)
- bool(布尔): 只有True和False两个值
- .str(字符串)
- list(列表)
- dict(字典)
- tuple(元祖)
- set(集合)
- function(函数)
- bytes(字节)
二.变量
声明变量就只是在内存中开辟空间存储数据的.(变量就是用来存储数据的)
python是动态语言(不用定义声明变量的数据类型)
怎么声明变量
格式: 变量名 = 值
说明:
python声明变量的是不需要确定类型
变量名: 标识符;见名知意,PEP8命名规范(所有的字母都小写,多个单词用_隔开)
=: 赋值符号,将右边的值赋给左边的变量
值:表达式(有结果的, 列如: 字面量,运算表达式)
声明了一个变量 name , 赋值为 '路飞'.使用name的时候,就相当于在使用'路飞'
name = '路飞' #声明一个变量class_name,保存'python1806' class_name = 'python1806' # 声明一个变量,可以存储不同类型的数据 number = 100 number = '娜美' #覆盖了上面的赋值 # 1.python中每条语句可以不用分号,但是一行中有多条语句就必须加分号 number = 1 ;number2 = 2 # 2.同时声明两个变量,并且赋一样值 str1 = str2 = str3 = 'adc' #同时用print打印多个值 print(str1,str2,str3) # 3.id函数(查看变量在内存里的值) # python开辟空间后存储数据,再将变量名作为数据对应的内存的标签 a = 10 print(id(a)) a = 100 print(id(a)) b = 100 print(id(b)) #多个变量名有相同的值,则在同一个内存空间里
三.数字和布尔
1.int数字
所有的整数都是整型(正整型和负整型),python3中的整型只有int,python2中有int和long
num1 = 10 num2 = -10
内置函数:type() -- 获取括号中数据的类型
print(type(num1),type(num2)) # < class 'int' >
2.float(浮点型)
所有带小数点的数,都是浮点型,python中的浮点数只有float
num3 = 0.12 num4 = 100.0 num5 = 2e2 #2*10`2 num6 = -3.14 print(type(num3),type(num4),type(num5),type(num6))
3.bool(布尔)###### 布尔就True和False
#True - 1 , False - 0 bool1 = True bool2 = False print(type(bool1),type(bool2))
四.运算符
1.数学运算符:
- +(加) -(减) *(乘) /(除) %(取余) //(整除) **(幂运算)
取出一个4位整数的百位上的数
print(1234 // 100 % 10)
2.比较运算:
- >(大于) <(小于) ==(等于) !=(不等于) >=(大于等于) <=(小于等于)
- 所有的比较运算的结果都是布尔值
3.逻辑运算符:
- 逻辑运算符操作的数据是布尔值返回的结果也是布尔值
a. and(与) -- 和\并且
两个值都是True结果才是True,只要有一个False结果就是False
print(True and True) #True print(True and False) #False print(False and True) #False print(False and False) #False
什么时候用:要求两个或多个条件同时满足
b. or(或) -- 或者
- 只要有一个是True,结果就是True
- 什么时候用:要求两个或者多个条件只要满足一个就行
c. not(非) -- 取反
Ture变成False,False就变成True
age = 20 print(not age < 18 )
4.赋值运算符
=(赋值) += -= *= /= %= // **=
赋值符号的左边必须是变量
-
运算顺序: 先算赋值符号的右边的值,然后再将右边的结果赋给左边
a. 变量 = 值
a = 10 b = 10 + 20 c = a + b # 40 d = a > 10 print(d)
b. 变量 += 值
变量必须是已经声明的变量
a += 2 #a = a + 2 = 12
补充:变量必须先声明再使用
5.运算符的优先级
- 正负 > 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
- 数学运算符:** > ( * / % // ) >(+,-)
- 优先级高的先计算,如果优先级相同就从左向右以此运算,可以用括号改变运算顺序