python的代码块是通过缩进区分的,没有花括号;
每一个python文件开头都要有模块注释,对模块说明
补充
- pass:空语句/站位语句
方法
- 接收输入:input(),在终端接收
注释
- 单行注释: #
# 这是注释
- 多行注释:
'''
这是注释
这是注释
这是注释
'''
流程控制、循环控制
-
if … else …:、if … elif … else…
mobile = '13277777777' password = '123456' print('请输入手机号') user_mobile = input() print('请输入密码') user_password = input() if user_mobile == mobile and user_password == password: print('welcome !') else: print('error') # python中的三元表达式: '满足条件的处理' if lists else '不满足条件的处理'
-
while … else …
while 条件: #代码块 else:#当while块结束后执行else #代码
-
for in
a = [1,2,3] for item in a: print(item) else: # 可以加个else,同while,不加也一样的,如果for里面break非正常结束是不会执行同级else的, print('over') #用for in 仿其他编程里面的for(i=0;i<10;i++){} # range(起始,长度,步长) for num in range(0,10): print(num) # 打印0至9 for num in range(0, 10, 2): print(num) # 打印0,2,4,6,8 a = [1, 2, 3, 4, 5, 6, 7, 8] for i in range(0, len(a), 2): print(a[i], end='|') # end:以行的形式打印出来,并且分隔是 | # 1 | 3 | 5 | 7 | b = a[0: len(a): 2] print(b) # [1,3,5,7]
组织架构
-
包-模块-类[含函数/变量] : 包即文件夹,模块即文件名
-
模块引入
import 模块
import 包.模块
import 包.模块 as 替代名
包.模块.变量 = 替代名.变量
from 包.模块 import 变量1,变量2...(若需换行,在上一行最后添加 `\`或者将所有变量用括号包起来)
from 包 import 模块
全导入模块中的变量:
from 包.模块 import *
此时导入模块中的所有变量,但如果模块中有一下代码
__all__ = ['a','b','c']
a=1
b=2
c=3
d=4
此时只会导入a、b、c变量
-
__init _.py文件:引入即执行,不需要手动触发,只要导入该包或包内的某一个文件,批量导入机制
-
包和模块是不会被重复导入的
-
不能循环导入:文件相互导入
函数
def
来定义函数
def add(a, b, c):
# raise NotImplementedError
return a+b+c # 没有return就会返回None
print(add(1, 2, 3))
# 6
def todo(a, b, c):
q = a+10
w = b + 12
e = c+50
return q, w, e
print(todo(1, 2, 3))
# (11, 14, 53)返回的是一个元祖tuple
get_q, get_w, get_e = todo(1, 2, 3) #序列解包,将函数返回的元祖解开
print(get_q, get_w, get_e)
-
必须参数
-
关键字参数
def todo(a, b): q = a+10 w = b + 12 return q, w print(todo(b=20, a=10)) # (20, 32)
-
默认参数,非默认参数不能跟在默认参数后面
def todo(a, b=1): q = a+10 w = b + 12 return q, w print(todo(a=10)) # (20, 13)