1.注释 & 缩进 & 编码规范 & 基本输入输出
1.1 注释
1、单行注释:代码块后,以 “#” 开头的代码说明,如:
bin2 = bin.zfill(8) # 将变量 bin 补足8位
2、多行注释:在一对 “ ‘’’ ” 内的内容,如:
'''
閑人壹
練習作品
自娛自樂
'''
3、中文编码声明:用来标识文件内所使用的中文编码格式
#coding=utf8 # 中文编码声明中 “#” 后没有空格
1.2 代码缩进
Python 执行严格代码缩进,同一级代码块缩进量必须相等,否则抛出:SyntaxError,语法错误:
实例代码:
b1 = 1
if b1 == 0:
b11 = 0 #缩进量相等
else:
b11 = 128 #缩进量相等
print(b11)
1.3 代码编写规范
1.4 命名规范
1.5 基本输入输出
-
基本输入 函数: input() ,说明:接收键盘输入,示例: python
语法:
input([prompt])
实例代码:
a = input("两个字别多录:")
print(a)
输出结果:
两个字别多录:输三个,又咋滴!
输三个,又咋滴!2
-
基本输出 函数:print() ,说明:用于打印输出,结果可输出到屏幕,也可写入文件,示例: 语法:
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
参数:
objects -- 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
sep -- 用来间隔多个对象,默认值是一个空格。
end -- 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。
file -- 要写入的文件对象。
flush -- 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。
代码1:
a = "输出测试"
print(a)
输出结果1:
输出测试
代码2:
print("print()函数 输出内容到外部文件测试") # 直接输出内容
test1 = input("录入人ID:") # 第一个变量赋值
test2 = input("请输入测试内容:") # 第二变量赋值
import datetime #调用时间模块
fp = open(r'test.log','a+') # 打开或创建 test.log
print("录入人:",test1," " +datetime.datetime.now().strftime('%y-%m-%d %H:%M:%S'),file=fp) # 写入变量1及日期时间
print(test2,file=fp) # 写入变量2
fp.close() #关闭文件
print("内容已录入文件") # 结束
输出结果2:
print() 函数 输出内容到外部文件测试
录入人ID:0001
请输入测试内容:test
内容已录入文件
test.log 文件内容:
录入人: 0001 21-07-09 15:25:07
test
2. 变量 & 数据类型 & 运算符
2.1 保留字
保留字是 Python 中已经被赋予特殊意义的单词,不能作为函数、变量、类、模块或其他对象的命名,如下:
保留字 | 说明 |
---|
and | 用于表达式运算,逻辑与操作 | as | 用于类型转换 | assert | 断言,用于判断变量或条件表达式的值是否为真 | break | 中断循环语句的执行 | class | 用于定义类 | continue | 继续执行下一次循环 | def | 用于定义函数或方法 | del | 删除变量或者序列的值 | elif | 条件语句,与if else 结合使用 | else | 条件语句,条件语句,与if,elif结合使用。也可以用于异常和循环使用 | exceptexcept | 包括捕获异常后的操作代码,与try,finally结合使用 | exec | 用于执行python语句 | for | 循环语句 | finally | 用于异常语句,出现异常后,始终要执行finally包含的代码块。与try,except结合使用 | from | 用于导入模块,与import结合使用 | global | 定义全局变量 | if | 条件语句,与else,elif结合使用 | import | 用于导入模块,与from 结合使用 | in | 判断变量是否存在序列中 | is | 判断变量是否为某个类的实例 | lambda | 定义匿名函数 | not | 用于表达式运算,逻辑非操作 | or | 用于表达式运算,逻辑或操作 | pass | 空的类,函数,方法的占位符 | print | 打印语句 | raise | 异常抛出操作 | return | 用于从函数返回计算结果 | try | 包含可能会出现异常的语句,与except,finally结合使用 | while | 循环语句 | with | 简化Python的语句 | yield | 用于从函数依次返回值 |
2.2 标识符 & 变量
-
标识符 标识符: 是用来表示变量、函数、类、模块很其他对象的名称。
标识符命名规则:
1)由字母、下划线、数字组成,且第一个字符不能是数字;
2)避免使用下划线开头;
3)不能包含空格、@、%、$ 等特殊符号,可使用汉字;
4)不能使用保留字。
-
变量 变量: 当一个名字被赋予一个值,这个名字就是变量,赋值通过 “ = ” 实现。
变量命名规则:
1)变量名必须是有效的标识符;
2)慎用先写字母 “ i " 和 大写字母 ” O “;
3)应选择有意义的单词做变量名;
4)不能使用保留字。
2.3 基本数据类型 & 数据类型转换
-
整数: 即数学意义上的整数:正整数、负整数、0,包括 十六进制、十进制、八进制、二进制。 -
浮点数 用于处理包括小数点的数,如:3.1415926 -
复数? z=a+bi(a、b均为实数)的数称为复数。其中,a 称为实部,b 称为虚部,i 称为虚数单位。 -
字符串 连续的字符序列,Python中字符串属于不可变序列,不能参与算数算,通常用 ‘单引号’ 、“双引号”、’’‘三引号’’’ 括起来。 -
布尔型 用来表示 真 或 假 的值。标识符:True 和 False,被解释位 True (真) 为1,False (假) 为 0 。 -
数据类型转换
函数 | 作用 |
---|
int() | 将数字转换为 整数型 | float() | 将数字转换为 浮点数 | str() | 将数字转换为 字符串 | bin() | 将数字转换为 2进制 | oct() | 将数字转换为 8进制 | hex() | 将数字转换为 16进制 | chr(i) | 返回 整数i 对应的 ASCII码 | ord(x) | 返回 x 对应的 ASCII码 |
2.4 运算符
运算符 是用于数学计算、比较大小 和 逻辑运算等的特殊符号。将不同类型的数据按一定规则连接起来的式子就是 表达式,不同类型的运算符构成不同的表达式。
-
爱算数 の 算术运算符
运算符 | 说明 | 实例 |
---|
+ | 加 | 1 + 1 = 2 | - | 减 | 2 - 1 = 1 | * | 乘 | 2 * 3 = 6 | / | 除 | 7 / 2 = 3.5 | % | 求余 | 7 % 2 = 1 | // | 取整除 | 7 // 2 = 3 | ** | 幂 | 2 ** 4 = 16,即:24 |
-
送礼物 の 赋值运算符
运算符 | 说明 | 实例 | 展开形式 |
---|
= | 等于 | x = y | x = y | += | 加等于 | x += y | x = x + y | -= | 减等于 | x -= y | x = x - y | *= | 乘等于 | x *= y | x = x * y | /= | 除等于 | x /= y | x = x / y | %= | 求余等于 | x %= y | x = x % y | **= | 幂等于 | x **= y | x = x ** y | //= | 取整除等于 | x //= y | x = x // y |
-
会攀比 の 比较运算符 即关系运算,用于对变量或表达式的结果进行大小、真假等比较,比较为真则返回 True ,假则返回 False。
运算符 | 说明 | 实例 | 值 |
---|
> | 大于 | ‘a’ > ‘b’ | False | < | 小于 | 156 < 500 | True | == | 等于 | ‘c’ == ‘c’ | True | != | 不等于 | ‘x’ != ‘y’ | True | >= | 大于等于 | 111 >= 110 | True | <= | 小于等于 | 62.45 <= 45.5 | False |
-
超硬核 の 逻辑运算符 逻辑运算符对真和假两种布尔值进行运算,运输后的结果仍认识布尔值。
运算符 | 说明 | 用途 | 结果 |
---|
and | 逻辑与 | op1 and op2 | 一假则假 | or | 逻辑或 | op1 ro op2 | 一真则真 | not | 逻辑非 | not op | 真假互变 |
-
好变脸 の 位运算符 位运算符用于二进制数进行计算,因此,需要先将要执行的数值转换为二进制数,多用于数字加密。 5.1 “ 位与 ” 运算,运算符:& ,运算规则:有 0 即为 0 ,示例: ? 1 0 1 0 1 1 0 1 ? & 0 1 1 1 0 0 0 0 ? 0 0 1 0 0 0 0 0 5.2 “ 位或 ” 运算,运算符: | ,运算规则:有 1 即为 1 ,示例: ? 1 0 1 0 1 1 0 1 ? | 0 1 1 1 0 0 0 0 ? 1 1 1 1 1 1 0 1 5.3 “ 位异或 ” 运算,运算符:^ ,运算规则:全 0 全 1 即为 0,示例: ? 1 0 1 0 0 1 0 1 ? ^ 0 1 1 1 0 0 0 0 ? 1 1 0 1 0 1 0 1 5.4 "位取反 " 运算,运算符:~ ,运算规则:0 变 1 ,1 变 0 ,示例: ? ~ 0 1 1 1 0 0 0 0 ? 1 0 0 0 1 1 1 1 5.5 “ 左移位 ” 运算,运算符:<< ,运算规则:将一个二进制操作数向左移动指定的位数,丢弃高位端(左 侧)溢出数据,低位端(右侧)空位由 0 补充,示例: (10001111 << 4)= 11110000
-
6 “ 右移位 ” 运算,运算符:>> ,运算规则:将一个二进制操作数向右移动指定的位数,丢弃低位端(右侧)溢出数据,在填充高位端(左侧)空位时,如最高位为 0 (整数),则空位由 0 补充;如最高位为 1(负数),则空位由 1 补充,示例: 示例1: (10001111 >> 4)= 11111000 示例2: (00011111 >> 4)= 00000001 5.7 运算符的优先级
序列 | 运算符 | 说明 |
---|
1 | ** | 幂 | 2 | ~ 、 + 、- | 取反 、 正号 、 负号 | 3 | * 、 / 、% 、// | 算数运算符 | 4 | + 、- | 算数运算符 (加、减) | 5 | << 、>> | 位运算(左右位移) | 6 | & | 位运算(位与) | 7 | ^ | 位运算(位异或) | 8 | | | 位运算(位或) | 9 | < 、<= 、> 、 >= 、!= 、== | 比较运算符 |
3. 流程控制 & 选择 & 嵌套 & 循环 & 跳转
3.1 流程控制
-
程序运行流程主要分为:顺序结构、选择结构、循环结构
3.2 选择语句:if、if…else、if…elif…else……
-
if : 如果就,示例: 如果 n 大于 9 为 多位数:
n = int(input("输入一个整数:"))
if n > 9:
print(n,"为多位数")
-
if…else…… :如果…就… ,示例: 如果 n 小于等于 9 为 多位数,否则 为单位数:
n = int(input("输入一个整数:"))
if n <= 9:
print(n,"为单位数")
else:
print(n,"为多位数")
-
条件表达式,即:简化的 if…else… 语句,可以有条件的对变量进行赋值,计算过程:先计算中间的条件,如果为真,返回 if 左边的值,否则返回 else 右侧的值。 if 语句表述如下: a = 10
b = 9
if a > b:
r = a
else:
r = b
条件表达式如下: a = 10
b = 9
r = a if a > b else r = b
-
if…elif…else…… :如果…就…否则… ,示例: n = int(input("输入一个整数:"))
if n <= 9:
print(n,"为单位数")
elif n > 9 and n < 100:
print(n,"为2位数")
elif n > 99 and n <1000:
print(n,"为3位数")
elif n > 999 and n <10000:
print(n,"为4位数")
else:
print(n,"数字太大,数不清啊!!!")
3.3 if 语句嵌套
-
if 嵌套 if…else… if 表达式 1:
if 表达式 2:
语句块 1
else:
语句块 2:
-
if…else… 嵌套 if…else… if 表达式 1:
if 表达式 2:
语句块 1
else:
语句块 2:
else:
if 表达式 3:
语句块 1
else:
语句块 4:
3.4 循环语句
1、while 一直重复,直到条件不满足时停止。
2、for 重复一定次数,通常用于 迭代、枚举、遍历
-
while 循环 while 循环语法: while 条件表达式:
循环体
示例: tiaojian = True # 循环控制变量
jishu = 0 # 计次变量从 0 开始
while tiaojian: # 循环控制
jishu += 1 # 每循环一次加1
if jishu > 10 and jishu < 20: # 循环次数条件
print(jishu)
tiaojian = False
返回结果:
11
-
for 循环 for 循环语法: for 迭代变量 in 对象:
循环体
示例: for jishu in range(21):
if jishu >= 19 and jishu <= 20:
print(jishu)
返回结果:
19
20
range() 函数 range() 函数可创建一个整数列表,一般用在 for 循环中。
函数语法
range(start, stop[, step])
起始值,终止值,步长
起始值默认为 0,步长默认为 1
参数说明:
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
示例 2,99乘法表: for h in range(1,10):
for l in range(1,h+1):
print(str(l) + "×" + str(h) + "=" + str(l*h) + "\t" , end = '')
print("")
'''
输出格式控制参数说明:
\t 使连列之间间隔一个tab键
end = '' 使每组数据成行显示
最后的 print("") 使每组数据输出完成后换行,
如果在第3行末尾使用 \n 会是每一个数据输出后换行一次
'''
返回结果:
1×1=1
1×2=2 2×2=4
1×3=3 2×3=6 3×3=9
1×4=4 2×4=8 3×4=12 4×4=16
1×5=5 2×5=10 3×5=15 4×5=20 5×5=25
1×6=6 2×6=12 3×6=18 4×6=24 5×6=30 6×6=36
1×7=7 2×7=14 3×7=21 4×7=28 5×7=35 6×7=42 7×7=49
1×8=8 2×8=16 3×8=24 4×8=32 5×8=40 6×8=48 7×8=56 8×8=64
1×9=9 2×9=18 3×9=27 4×9=36 5×9=45 6×9=54 7×9=63 8×9=72 9×9=81
-
循环嵌套语法 1、while 嵌套 while 条件表达式1:
while 条件表达式2:
循环体2
循环体1
2、for 嵌套 for 迭代变量1 in 对象1:
for 迭代变量2 in 对象2:
循环体2
循环体1
3、while 嵌入 for while 条件表达式1:
for 迭代变量1 in 对象1:
(for)循环体
(while)循环体
4、for 嵌入 whil for 迭代变量1 in 对象1:
while 条件表达式1:
(while)循环体
(for)循环体
3.5 跳转语句
-
break 语句 完全中止循环(2话不说,掐死完事) -
continue 语句 中止本次循环,提前进入下一次循环中,使用方法: while 循环下:
while 条件表达式 1:
执行代码
if 条件表达式 2:
continue
for 循环下:
for 迭代变量 in 对象:
if 条件表达式 1:
continue
-
pass 空语句 空语句 Pass 不做任何处理,一般起到占位符的作用。
|