python第二课
运算符
-
算术运算符
+(加)、-(减)、*(乘)、/(除)、%(取模)、**(幂运算)# 定义基础数值 x = 15 y = 4 # 1. 加法 add = x + y print(f"加法:{x} + {y} = {add}") # 2. 减法 sub = x - y print(f"减法:{x} - {y} = {sub}") # 3. 乘法 mul = x * y print(f"乘法:{x} * {y} = {mul}") # 4. 除法(浮点数结果) div = x / y print(f"除法:{x} / {y} = {div}") # 5. 取模(余数) mod = x % y print(f"取模:{x} % {y} = {mod}") # 6. 幂运算 pow = x ** y print(f"幂运算:{x} ** {y} = {pow}") # 补充:整除(只保留整数商) floor_div = x // y print(f"整除:{x} // {y} = {floor_div}")加法:15 + 4 = 19 减法:15 - 4 = 11 乘法:15 * 4 = 60 除法:15 / 4 = 3.75 取模:15 % 4 = 3 幂运算:15 ** 4 = 50625 整除:15 // 4 = 3以上为算数运算符的一些使用以及结果
-
比较运算符
==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)
返回值只有布尔值 True 以及 Falsea = 10 print(a > 5) print(a < 5) print(a >= 5) print(a <= 5) print(a == 5) print(a != 5) print(a is int(5)) print(a is not int(5)) print(a is None) print(a is not None) print(a is True) print(a is False) #结果为 True False True False False True False True False True False False在字符串作比较之间先转为unicode码 然后在进行对比
# res = ord('a') # ord 为转为unicode码 # print(res) # print(ord('b')) # ord 为转为unicode码 # print(chr(110)) # chr 为转为字符 # # print(ord('王')) # ord 为转为unicode码 # print(chr(47789)) # chr 为转为字符 # res = ord('a') # print(res)补充: 布尔值:判断条件是否发生 ,操作是否成功, 逻辑相关功能 且布尔类型是int的子类型
print(int(True)) print(int(False)) print(bool(0)) print(bool(1)) print(1+True) print(True+True ) print(True+False)这些代码的运行结果为 1 , 0 , False ,True , 2 , 2 , 1 注意 : 空字符串为假 不是空字符串为真
-
逻辑运算符
-
and(与)、or(或)、not(非)
在 or 里面 一真则真 在and 里面 一假则假 非not 表示逻辑非 ,对一个值进行去取反,返回值一定为bool值# or 一真则真 # and 一假则假 # and和 or 都有逻辑短路功能 # print (False and 3/0) # print (True or 3/0) # print (3/0 or True) # 会报错 -
赋值运算符
=、+=、-=、*=、/=
示例:x += 3等价于x = x + 3。# a = 10 # a += 5 # print(a) # a -= 5 # print(a) # a *= 5 # print(a) # a /= 5 # print(a) # a %= 5 # print(a) # a //= 5 # print(a) # a **= 5 # print(a)
转义字符
-
常见转义字符
\n(换行)、\t(制表符)、\\(反斜杠)、\"(双引号)、\'(单引号)
示例:print("Hello\nWorld")输出两行。print('\n')#换行 print('\t')#制表符 print('\r')#替换 print('\b')#退格 print('\f')#换页符 print('\v')#垂直制表符 print('\a')# 响铃符以上为常用的一些转义字符,可以自己尝试
-
原始字符串
使用r前缀忽略转义,如r"C:\path"直接输出路径字符串。
数据类型转换
# 在函数中转换数据类型 1.整形都可以转
2.浮点都可以转
3.字符串带有汉字以及其他字符的不能转
# 任意类型都可以转为字符串
-
显式转换
int()、float()、str()、bool()等函数实现类型强制转换。
示例:int("123")将字符串转为整数123。# 1. 验证 int() 合法示例 print("=== int() 合法示例 ===") print(int(15.6)) # 输出:15 print(int('79')) # 输出:79 print(int(' 79 '))# 输出:79 print(int(48)) # 输出:48 # 2. 验证 float() 合法示例 print("\n=== float() 合法示例 ===") print(float(18)) # 输出:18.0 print(float('15.6')) # 输出:15.6 print(float(' 5.7 ')) # 输出:5.7 print(float(14.8)) # 输出:14.8 print(float('48')) # 输出:48.0 # 3. 验证 str() 示例 print("\n=== str() 示例 ===") print(str(18)) # 输出:'18' print(str(15.6)) # 输出:'15.6' print(str([1,2])) # 输出:'[1, 2]' print(str({'a':1})) # 输出:"{'a': 1}" # 4. 非法示例(取消注释可查看报错) # print(int(' 7 9 ')) # ValueError: invalid literal for int() with base 10: ' 7 9 ' # print(float('5.23.12')) # ValueError: could not convert string to float: '5.23.12' -
隐式转换
自动类型提升,如整数与浮点数运算时转为浮点型。
示例:3 + 4.5结果为7.5(浮点数)。 -
注意事项
转换需兼容,如int("abc")会抛出ValueError异常。
进制
计算机中常见的进制包括二进制(基数为2)、八进制(基数为8)、十进制(基数为10)和十六进制(基数为16)。不同进制之间可以相互转换。
- 二进制:由0和1组成,是计算机底层数据处理的基础。例如,
1010表示十进制的10。 - 八进制:由0到7组成,通常以
0开头表示。例如,012表示十进制的10。 - 十进制:日常使用的数字系统,由0到9组成。例如,
10就是十进制的10。 - 十六进制:由0到9和A到F(或a到f)组成,通常以
0x或0X开头表示。例如,0xA表示十进制的10。
进制转换可以通过编程语言的内置函数或手动计算实现。例如在Python中:
bin(10) # 十进制转二进制,输出 '0b1010'
oct(10) # 十进制转八进制,输出 '0o12'
hex(10) # 十进制转十六进制,输出 '0xa'
int('1010', 2) # 二进制转十进制,输出 10
输入语句
输入语句用于从用户或外部获取数据,不同编程语言有不同的实现方式。
-
Python:使用
input()函数获取用户输入,返回字符串类型。例如:name = input("请输入你的名字:") print("你好," + name)若需数值输入,需显式转换:
age = int(input("请输入你的年龄:"))
流程控制语句
流程控制语句用于控制程序的执行顺序,主要包括条件语句和循环语句。以及分为
顺序结构 |
代码 从上往下依次执行 |
分支结构 |
根据条件不同做不停的事情 |
循环结构 |
重复执行某一个代码块 |
注意:
1: 一个if只能匹配一个else
2: 可以拥有多个elif
3: 一旦某一个分支条件为True 其他语句将不在执行
-
条件语句:根据条件决定执行哪部分代码。
- if语句:单条件判断。
if age >= 18: print("成年人") - if-else语句:二选一执行。
if age >= 18: print("成年人") else: print("未成年人")age = int( input("请输入你的年龄:")) if age >= 0 and age <= 6: print('幼儿') elif age > 6 and age <= 12: print('少年') elif age > 12 and age <= 18: print('青少年') elif age > 18 and age <= 30: print('青年') elif age > 30 and age <= 50: print('中年') elif age > 50: print('老年')
- if语句:单条件判断。
-
循环语句:重复执行某段代码直到条件不满足。
- while循环:条件为真时重复执行。
while count < 5: print(count) count += 1 - for循环:遍历序列或指定次数。
for i in range(5): print(i)
- while循环:条件为真时重复执行。
嵌套分支
嵌套分支是指在条件语句内部再嵌套其他条件语句,用于处理更复杂的逻辑判断。
-
示例:根据分数划分等级并检查是否及格。
user_price = int(input('请输入所买东西的价格: ')) user_VIP_level = input('请输入普通会员/高级会员: ') if user_VIP_level == '普通会员': print(f"您的商品打95折,您需要支付的价格是{user_price*0.95}元 ") if user_price * 0.95 > 500: print('请走人工通道') if user_price * 0.95 <= 500: print("请自助结算") elif user_VIP_level == '高级会员': print(f"您的商品打88折,您需要支付的价格是{user_price*0.88}元" ) if user_price * 0.88 > 500: print('请走人工通道') if user_price * 0.88 <= 500: print("请自助结算") else : print(f'您的商品原价{user_price}') if user_price > 500: print('请走人工通道 亲若您感兴趣 可以购买本店会员普通会员95折 高级会员88折哦 ') if user_price <= 500: print("请自助结算 亲若您感兴趣 可以购买本店会员普通会员95折 高级会员88折哦 ") -
注意事项:
- 嵌套层级不宜过深,否则会降低代码可读性。
- 可通过逻辑运算符(如
and、or)简化部分嵌套。例如:
更多推荐



所有评论(0)