一、执行Python程序的两种方式
1.1 交互式
在终端内输入python3,然后输入python代码
1.2 命令行式
在终端内输入python3 文本文件路径
二、执行Python程序的两种IDE
2.1 Pycharm
2.2 Jupyter
三、变量
3.1 什么是变量?
变量一般用来用来描述世间万物变化的状态
3.2 变量的组成?
变量名 = 变量值
变量名是用来接收变量值的
3.3 变量名的定义规范
- 变量名具有某种意义
- 由数字/字母/下划线组成,且不能由数字开头,(也不能由下划线开头)
- 不能用Python关键字
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
3.4 定义变量的两种方式
- 驼峰体:
NameOfNick
- 下划线:
name_of_nick
(推荐)
3.5 常量
常量是约定俗成的一种规范,常量名的定义方式为全大写.实际上可以被修改.
四、注释
4.1 单行注释
#注释的语句
,#后面的字符不执行语法,即只为普通字符,一般用来解释某一段代码
4.2 多行注释
三单引号/三双引号
4.3 引用计数
变量值的引用次数
x = 257 # 257的引用计数为1
y = x # 257的引用计数为2
del x # 257的引用计数为1
4.4 垃圾回收机制
当变量值的引用计数为0的时候,该变量值会被Python自动回收它的内存占用
4.5 小整数池
[-5,256]之间的整数会在Python解释器启动的时候,自动开辟一块内存存入这些整数.也就是说这些整数不会因为引用计数为0而被删除
五、花式赋值
5.1 链式赋值
x = y = z = 10
5.2 交叉赋值
# 交叉赋值
x = 10
y = 20
x, y = y, x
print(x, y)
# 使用临时变量
x = 10
y = 20
temp = x
x = y
y = temp
print(x, y)
六、与用户交互
七、input
input输入的都是字符串形式
八、格式化输出
8.1 占位符
%s接收任意数据类型的数据
%d接收数字类型的数据
name = 'nick'
'nick name is %s'%name
8.2 format格式化
{}接收任意数据类型的数据
name = 'nick'
'nick name is {}'.format(name)
8.3 f-string格式化
在字符串前面加上f或F,然后使用{}接收任意数据类型的数据
name = 'nick'
f'nick name is {name}'
九、基本运算符
9.1 算术运算符
+ - * / % // **
9.2 逻辑运算符
and or not
9.3 比较运算符
> >= < <= == !=
9.4 赋值运算符
= += -= *= /= //= **= %=
9.5 身份运算符
is is not
- id相同的值一定相同,值相同的id不一定相同
9.6 运算符优先级(略)
如果需要某个运算符优先运算,则加个括号,使用a and b is c == d
的是傻逼
9.7 解压缩
hobby_list = ['read','run','sleep','fishing','piao']
# 如果取第2-3个爱好
_,hobby2,hobby3,*_ = hobby_list
print(hobby2, hobby3)
一十、流程控制
10.1 流程控制之if判断
10.1.1 if
if 条件:
代码块
10.1.2 if...else
if 条件:
代码块
else:
代码块
10.1.3 if...elif....elif...else
if 条件:
代码块
elif 条件:
代码块
elif 条件:
代码块
...(可以写任意个elif)
else:
代码块
10.2 流程控制之while循环
10.2.1 while
while 条件:
代码块
10.2.2 while + break
while 条件:
代码块
break # 结束本层循环,跳出循环
10.2.3 while + continue
while 条件:
代码块
if 条件:
代码块
cotinue # 不执行下面代码,然后继续循环,即跳出本次循环
代码块
10.2.4 while + else
while 条件:
代码块
else:
print('如果我没有被break,我就会被打印出来')
10.3 流程控制之for循环
10.3.1 for
for i in range/str/list/tuple/dict/set(可迭代对象):
print(i)
10.3.2 for + break
for i in range/str/list/tuple/dict/set(可迭代对象):
print(i)
break # 结束本层循环
10.3.3 for + continue
for i in range/str/list/tuple/dict/set(可迭代对象):
print(i)
if 条件:
continue # 结束本次循环,即不执行下面代码,继续循环
代码块
10.3.4 for + else
for i in range/str/list/tuple/dict/set(可迭代对象):
print(i)
else:
print('如果我没有被break,我就会被打印出来')