\n:换行符
\t:制表符
%%:在字符串格式化拼接时输出%
# 在print定义时自动在结尾加上了'\n'所以每次打印结束后,会自动换行
print(123)
print('hello world \n')
print(456)
# 如果不想让其自动换行, 在字符串输入结束后,使用end = '结束符' 可以修改print打印结束后插入的字符
print(123, end='$$$')
print(456)
# \t 制表符
print('3 4\t5')
# %% 输出%
# 在不适用字符串格式化拼接时,可以进行%的单独输出
print('我的业绩增长了100%')
score = 100
# 在使用字符串格式化的时候,字符串中的%不能单独输出,必须配合占位符,或者使用%%进行输出
print('我的成绩增加了%d%%' % score)
f-string是Python3.6之后出现的格式化语法
格式:f'要输出的字符串{要拼接的变量}'
f可以是大写,也可以是小写,
引号可以是单引号,也可以是双引号
精度控制
{浮点型变量:.nf} 保留n位小数,四舍五入
{整型变量:0nd} 保留n位,不足位用0补齐,如果超出则原样显示
%可以单独输出
数据类型转换是为了不同类型数据之间可以进行拼接或运算
格式:数据类型(要转化类型的变量或值)
int和float类型直接可以随意转换
float转换为int类型只保留整数部分
int转换为float类型在末尾添加。0
如果数值型转换为str类型,可以随意转换
如果str类型转换为数值型
float 必须保证str引号内部是浮点型数据或整型数据
int 必须保证str引号内部是整型数据
# 需求: 在超市中有两种水果,苹果和橘子
# 让售货员输入苹果的单价,苹果的重量,橘子的单价,橘子的重量,在控制台输出购买详情以及总价
# 水果单价
apple_price = 6.6
orange_price = 5
# 水果斤数
apple_weight = float(input('请输入苹果的斤数:'))
orange_weight = float(input('请输入橘子的斤数:'))
# 水果总价
sum = apple_price * apple_weight + orange_price * orange_weight
print(f'水果总价为:{sum:.2f}')
+ - * / // % **
//
取商
%
取余
**
幂次运算
# 求梯形面积
a = float(input('请输入梯形上底:'))
b = float(input('请输入梯形下底:'))
h = float(input('请输入梯形的高:'))
S = (a+b)*h/2
print('梯形的面积为: %.2f' % S)
# 提示用户输入圆的半径,根据公式S = πr2求圆的面积
π = 3.14
r = float(input('请输入圆的半径:'))
S = π*r**2
print('圆的面积: %.2f' % S)
# 输入两个数,并求和
first_int = int(input('请输入第一个整数:'))
second_int = int(input('请输入第二个整数:'))
print('两数的和: %d' % (first_int+second_int))
= :将等号右侧的值赋值给等号左侧的变量
可以给单个变量赋值: 变量= 值
可以给多个变量赋不同的值 : 变量1, 变量2. 变量3 = 值1, 值2, 值3
可以给多个变量赋相同的值:变量1 = 变量2 = 变量3 = 值
# 赋值运算 => 输入身高,体重,求BMI = 体重(kg)/身高(m)的平方
height = float(input('请输入身高:'))
weight = float(input('请输入体重:'))
BMI = weight/height**2
print('BMI= %.2f' % BMI)
+= -= *= /= //= %= **=
复合赋值运算符等号左侧一定是已经被定义的变量
复合赋值运算符右侧是已经被定义的变量或者值
# 复合赋值运算符不能连续使用
# a += 1 += 2
# 练习
a = 2
a *= 2
print(a)
b = 12
b //= 5
print(b)
`< > <= >= == !=
`
比较运算就是比较数据值的大小
比较运算可以连续使用
比较运算中比较相等使用== 而 不能使用 = (赋值运算符)
'''
比较运算 => 世界杯案例,世界杯小组赛的比赛规则是我们的球队与其他三支球队进行比赛,
然后根据总成绩(积分)确定出线资格。小组赛球队实力已知(提示用户输入各球队实力),
我们通过一个数字表示。如果我们赢1局得3分,平一局得1分,输一局得0分,最终求球队总成绩。(有难度)
'''
a = int(input('请输入我们球队的实力:'))
b = int(input('请输入1号球队的实力:'))
c = int(input('请输入2号球队的实力:'))
d = int(input('请输入3号球队的实力:'))
avsb = (a > b) * 3 + (a == b)
avsc = (a > c) * 3 + (a == c)
avsd = (a > d) * 3 + (a == d)
score = avsb + avsc + avsd
print('小组赛最终结果:%d分' % (score))
# 判断是否相等使用==
print(age == 13) # True
print(age == 11) # False
# TypeError: 'age' is an invalid keyword argument for print()
# =是赋值运算不能判断是否相等
# print(age = 12)
8、逻辑运算
and 同真即真
or 同假即假
not 真变假 假变真
# and 同真即真
print(True and False) # False
print(True and True) # True
print(False and True) # False
print(False and False) # False
# or 同假即假
print(True or False) # False
print(True or True) # True
print(False or True) # False
print(False or False) # False
# not 真变假, 假变真
print(not True) # False
print(not False) # True
# 逻辑运算 => 输入三角形的3边,如果两边的长度大于第三条边,则代表是一个合法三角形
a = float(input('输入a:'))
b = float(input('输入b:'))
c = float(input('输入c:'))
print('%s' % (a+b > c and b+c > a and a+c > b))
# 短路运算:
a = 1
b = 2
# 当逻辑运算的第一个表达式已经可以决定整个逻辑运算的值的时候,后边的表达式将不会被运行
print(a > b and a < b)
# 在数值型数据中,非0即真
# 在容器型数据中,非空即真
# None 代表False
print(False and 1) # False
print(0 and True) # 0
print(12 or False) # 12
print(None and True) # None
print(True and False) # False
print(True and 15) # 15
print(False or "") # ""
单一条件判断:
# 格式:
'''
if 条件:
条件成立时执行的代码
'''
age = int(input('请输入年龄:'))
if age >= 18:
print('您的年龄是: %d,已成年,可以上网!')
else:
print('')
print('系统关闭!')
对立条件判断
# if ... else ...
'''
if 条件:
条件成立时执行的代码
else:
条件不成立时执行的代码
'''
# 编写一段代码,需要输入要一个有效年份,判断该年份是否是闰年,如果是闰年,则打印“**xx年是闰年**”;否则打印“**xx年不是闰年**”
# 如输入"2019",将打印“2019年不是闰年”
# 提示:闰年年份是能被4整除,但不能被100整除的;或者能被400整除的年份,如1900年能被4整除,
# 但是也能被100整除,所以不是闰年,而2000虽然既能被4整除又能被100整除,但是2000能被400整除,所以是闰年。
year = int(input('请输入一个有效的年份:'))
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
print(f'{year}年是闰年')
else:
print(f'{year}年不是闰年')
多分支判断语句
# 格式;
'''
if 条件1:
条件1成立时执行的代码
elif 条件2:
条件2 成立时执行的代码
elif 条件3:
条件3成立时执行的代码
else:
所有条件均不成立时执行的代码
'''
score = float(input('请输入小明的成绩:'))
if score < 0 or score > 100:
print('小明评级不存在!')
elif 90 <= score <= 100:
print('小明评级为优秀!')
elif 80 <= score < 90:
print('小明评级为良好!')
elif 70 <= score < 80:
print('小明评级为中等!')
elif 60 <= score < 70:
print('小明评级为合格!')
else:
print('小明评级为不合格!')
# 嵌套:在if语句控制的代码块中存在其他的if语句
# 编写一段代码,要求依次输入语文、数学、英语三门课的成绩(输入范围0到100,包括0和100),
# 如果三门成绩的平均分小于60,打印"不及格",
# 如果平均分大于90, 打印优秀,
# 其他则打印"良"
chinese = float(input('请输入语文成绩:'))
math = float(input('请输入数学成绩:'))
english = float(input('请输入英语成绩:'))
if 0 <= chinese <= 100 and 0 <= math <= 100 and 0 <= english <= 100:
avg_score = (chinese + math + english) / 3
print('成绩评定为:', end='')
if avg_score < 60:
print('不及格')
elif avg_score > 90:
print('优秀')
else:
print('良')
else:
print('成绩输入不符合要求,无法进行评定')
ticket = int(input('请输入是否有票:(1 有票 0 无票)'))
seat = int(input('请输入是否有座位:(1 有座位 0无座位)'))
if ticket == 1:
print('有票,请上车!')
if seat == 1:
print('车上有座位,请坐下!')
else:
print('车上无座位,请站着!')
else:
print('无票,无法乘车!')
# 猜拳游戏
找规律: 结果为0 平局
结果为 -1 或 2 玩家获胜
结果为 -2 或 1 电脑获胜
'''
# 玩家键入拳型
player = int(input('请输入您要出的拳型:(0 石头 1 剪刀 2 布)'))
# 电脑随机出拳
# 在计算机中如果想要生成随机数据可以使用random模块进行生成
import random # 导入模块
# 生成随机数 random.randint(m,n) 生成[m, n]区间内的任意一个整数
computer = random.randint(0,2)
result = player - computer
# 比对拳型
# 玩家获胜情况: p: 0 c: 1 | p: 1 c: 2 | p : 2 c : 0
if result == -1 or result == 2:
# 输出结果
print('玩家获胜')
elif result == 0:
# 输出结果
print('平局')
else:
# 输出结果
print('电脑获胜')