目标
掌握流程控制
掌握函数的使用
操作符
算数操作符
赋值操作符
比较操作符
逻辑操作符
# 第二章 流程控制
# 代码的执行顺序。默认的顺序结构(自上而下,从左向右),分支结构(根据条件执行对应的代码),循环结构(循环执行相应的代码)
a = 10
print(a)
# 条件从哪里来
# 操作符
# 算数操作符,赋值操作符,逻辑操作符,关系操作符,身份操作符
# 算数操作符 + - * / %(模) ** //(整除)
print('-' * 50) # 重复打印
print('算数操作符……')
b = 2
print(a + b)
print(a - b)
print(a * b)
print(a % b)
print(a / b)
print(2 ** 3)
print(9 // b) # 地板除只保留整数部分
# 字符串相加
a = 'abc'
b = "def"
print(a + b) # 字符串相加
c = 10
print(a + str(c)) # 说明字符串和字符不可以相加
c = 10
print(a + str(c))
# 工厂函数 int(数字型的字符串) str() list() tuple() dict()
# 赋值操作符
# = += -= %= /=
a = 10
a += 2 # 相当于a=a+2,其他类似
print(a)
a -= 2
print(a)
a **= 2
print(a)
# 比较运算符 == != > < >= <=,返回TRUE FALSE
b = 20
print(a == b)
print('-' * 50)
print('比较运算符')
print(a != b)
# 逻辑操作符
# and 与运算同真则为真 or 或运算有真则为真 not非,取反操作 in判断某元素是否在集合或字符串内
print('-' * 50)
print('逻辑操作符……')
print('true' and 'false') # 需要注意大小写,如果第一个字母没有大写,就相当于是字符
print(True or False)
print(not True)
a = 'abce'
print('a' in a)
# 分支语句
print('-' * 50)
print('分支语句')
# if语句
# 单分支 双分支 多分支
# 单分支,#只有一个选择
# 结构: if (表达式--TRUE 或者False都叫表达式)
# 执行代码
# 如果满足条件就执行代码
print('单分支')
if 10 > 2:
print('10>2')
print('双分支')
# 如果怎么样就怎么样,否则。双分支两个选择
# 结构 if (表达式1):
# 执行的代码1
# else:
# 执行代码2
##如果满足条件就执行代码,否则执行else后的代码
score = int(input('请输入分数:'))
# 获取键盘输入,input(提示信息)
# print(type(score))
if score > 60:
print('及格')
else:
print('皮带炒肉')
print('多分支')
#多分支
#结构:if(表达式1):
# 执行的代码1
# elif (表达式2)
# 执行的代码2
# else:
# 执行代码2
#如果满足哪个条件就执行哪个代码,当从上往下判断没有一个满足的就else代码
if(score>90):
print('A')
elif (score>80):
print('B')
elif(score>70):
print('C')
else:
print('皮带炒肉+男女混合双打')
#推导式
#如果a<b,则赋值给a,否则赋值给b
print('推导式')
a,b=10,20 #变量可以一起赋值
small=a if a<b else b
print(small)
#python数学库
import math
print(math.sqrt(4))
a=int(input('请输入第一条边'))
b=int(input('请输入第二条边'))
c=int(input('请输入第三条边'))
if a+b>c and a+c>b and b+c>a:
print('三角形的周长是:'+str(a+b+c)) #这种表达方式说明这是一个整形
p=(a+b+c)/2
g=math.sqrt(p*(p-a)*(p-b)*(p-c))
print('三角形的面积是:'+str(g))
else:
print('无法构成三角形')
总结
数学库首先导入
import math
print(math.函数)
int(input('请输入第一条边'))用法
input()函数返回值是str型
我们只需要这样转换:
a=int(input("请输入一个整数"))(强制类型转换,其他同理)或者用a=eval(input("请输入一个整数"))(自动类型转换)
条件语句的的使用
注意:条件语句的错误基本上都是由于缩进不正确导致的,在我们学习生产的过程中,一定要注意语句的缩进搭配,否则,看似正确的代码往往会误导我们。
1、if条件语句的基本用法
if 判断条件:
执行语句……
else:
执行语句…
2、if条件语句的嵌套方式一
if 判断条件1:
执行语句1……
elif 判断条件2:
执行语句2……
elif 判断条件3:
执行语句3……
else:
执行语句4……
举例
holiday_name = '植树节'
if holiday_name == '情人节':
print('买礼物,买花,买包,买化妆品')
elif holiday_name == '愚人节':
print('吃饭')
else:
print('不过节')
3、if条件语句的嵌套方式二
if 条件1:
条件1满足执行的动作
if 满足条件1的基础上的条件2:
...
else:
条件2不满足的情况下
else:
条件1不满足时,执行的动作
举例
have_ticket = False
knife_length = 21
if have_ticket:
print('已有车票,请安检...')
if knife_length > 20:
print('长度为 %d:超出限定长度,禁止入内' %knife_length)
else:
print('长度为 %d:没有超过限定长度,允许入内' %knife_length)
else:
print('请先买票')
4、if条件语句综合练习
1)判断闰年:
用户输入年份year, 判断是否为闰年?
我们知道:能被4整除但不能被100整除的 或者 能被400整除 那么就是闰年
year=int(input('输入年份'))
if year%4==0 and year%100!=0:
print('%d是闰年'%year)
elif year%400==0:
print('%d是闰年'%year)
else:
print('%d不是闰年' %year)
但是这种应该怎么输入呢?
holiday_name =int(input('请输入节日'))
if holiday_name == '情人节':
print('买礼物,买花,买包,买化妆品')
elif holiday_name == '愚人节':
print('吃饭')
else:
print('不过节')
直接把int去掉就好,或者把节日在前边定义
作业
1:判断奇偶数
从键盘输入一个正整数,判断奇偶数后输出结果 要求:用input函数从键盘输入。
zhengshu=int(input('输入一个整数'))
if zhengshu%2==0:
print("偶数")
elif zhengshu%2!=0:
print('%d是奇数'%zhengshu)
输出为:偶数 19为奇数
2:北京地铁新票价规定:6公里(含)内3元;6-12公里(含)4元;12-22公里(含)5元;
22-32公里(含)6元;32公里以上部分,每增加1元可乘坐20公里。
提示:math.ceil()向上取整函数。 例如:math.ceil(4.1)=5 要求:输入公里数,输出票价金额。
import math
a=int(input('公里数'))
b=math.ceil((a-32)/20)
money=6+b
print('请输入公里数')
if a<=6:
print('金额:3元')
elif a>6 and a<=12:
print('金额:4元')
elif a>12 and a<=22:
print('金额:5元')
elif a>22 and a<=32:
print('金额:6元')
else:
print('%d元'%money)