变量的命名规则
1、只能由A-Z,a-z,_,0-9组成,第一个字符不能是数字
2、不能与python语言本身使用的名称相同(保留字一共有33个,如图所示)
语法
变量=input()
案例
有两个杯子,将杯子1的饮料倒入到杯子2中
glass1 = input('请输入杯子1中的饮料')
glass2 = input('请输入杯子2中的饮料')
temp = '' # 临时杯
print('交换前杯子1和杯子2中的饮料')
print(glass1)
print(glass2)
temp = glass1
glass1 = glass2
glass2 = temp
print('交换后杯子1和杯子2中的饮料')
print(glass1)
print(glass2)
数据类型
布尔类型
True 1
Flase 0
验证代码
v1 = True
v2 = True
v3 = False
print(v1)
print(v3)
print(int(v1))
print(int(v3))
print(v1+v3)
输出结果
True
False
1
0
1
关系运算符
> < >= <= != ==
案例
世界杯,已知我方球队和另外三个球队的实力,我方胜一局得3分,我方输一局不得分,平局我方得1分,最后算出我方一共得几分
#配合提示信息,输入我们球队和三个对手球队的实力保存在a,b,c,d中
a = int(input('输入我们球队的实力:'))
b = int(input('输入对手1队的实力:'))
c = int(input('输入对手2队的实力:'))
d = int(input('输入对手3队的实力:'))
# 比赛规则是赢一局的3分,平一局得1分,输一局不得分
avsb = (a > b)*3 + (a == b)# 计算我们球队与对手1比赛的分数
avsc = (a > c)*3 + (a == c)# 计算我们球队与对手2比赛的分数
avsd = (a > d)*3 + (a == d)# 计算我们球队与对手3比赛的分数
sore = avsb + avsc + avsd
print('小组赛队可以得%d分。'%(sore))
概念
用于完成指定次数的循环
例如:从0打印到9
for i in range(0,10):
print('i = %d' %i)
for循环的语法
for 变量 in 集合:
代码1
代码2
…
代码n
案例
农场里有3只兔子,每隔一年兔子的数量会翻涨到原来的2备,请问N年后兔子的数量是多少?
rabbit = 3#初始时兔子的数量是3
print('请输入N的值:')
N = int(input())
for i in range(0,N):
rabbit = rabbit*2
print('%d年后,兔子的数量为%d.'%(N,rabbit))
映射
元素之间的“相互对应”关系
字典
表示映射关系的结构
dict = {key1:value1,key2:value2,key3:value3,…}
案例
已知今日水果价格,计算顾客购买后的总金额
price = {'苹果': 5, '桃子': 6, '香蕉': 3, '梨子': 4}
print('今日水果价格')
for fruit in price:
print(fruit, price[fruit])
print('')
n = int(input('请输入水果的种类数量'))
sum_price = 0
for i in range(0, n):
fruit = input('请输入水果的%d的名称' % (i + 1))
num = int(input('请输入购买水果的数量%d' % (i + 1)))
if fruit in price:
sum_price += price[fruit] * num
print('总价格为%d' % sum_price)
概念
集合是python中的内置数据结构,是一个无序的集,用来保存不重复的元素
集合存储的是基础数据类型
整型、浮点型、字符串、元组
交集:&/intersection
并集:I/union
差集:-/difference
案例
有两个班的学生,输出重名学生的名字
具体代码
#输入班级1的学生数量,存储至num1
num1 = int(input('请输入班级1的学生数量:'))
class1 = set()#初始化集合class1
#通过循环,输入班级1学生的姓名
for i in range(0, num1):
name = input('输入学生%d姓名:'%(i+1))
class1.add(name)
# 输入班级2的学生数量,存储至num2
num2 = int(input('请输入班级2的学生数量:'))
class2 = set()#初始化集合class2
# 通过循环,输入班级2学生的姓名
for i in range(0,num2):
name = input('输入学生%d姓名:'%(i+1))
class2.add(name)
same = class1&class2
print('重名的学生:')
for name in same:
print(name)