回顾
1.注释
'''
'''
2.标识符
是由数字、字母、下划线组成,数字不能开头。
3.缩进
tab
4.关键字
Ture,false,if,else,elif,and,or,not
5.数据类型
int,float,bool,str,list,tuple,dict,set,function...
6.print(),input()
num = 10
print(num,12.9,10+20*2)
num2 = input('请输入数字:')
print(num2)
7.变量
变量名 = 值
a = 100
a = num
a = 10 * 2
a = num + 2
print(a)
a = b = c = d = 22
a1,b1,c2 = 1, 2, 3
8.运算符
+, -, *, /, //, %, **
运算符:
数学运算符、比较运算符、逻辑运算符、赋值运算符
2.比较运算符:>, <, ==, !=, >=, <=
所有比较运算符的结果都是布尔值
print(100 > 10) #True
print(100 > 1000) #False
print(100 < 10) #False
print(100 < 1000) #True
print(100 == 100) #True
print(100 == 1000) #False
print(100 != 1000) #True
print(100 != 100) #False
print(100 >= 100) #True
print(100 >= 1000) #False
print(10 <= 10) #True
#将结果赋值给变量
result1 = 10 >= 1
result2 = 10 + 100
print(result1, result2)
3.逻辑运算符:and, or, not
所有逻辑运算符的结果都是布尔值,操作对象也是布尔值
运算规则:
and :两个都为Ture,结果才是True;只要有一个是False,结果就是False。(相当于生活中的并且)
'''
Ture and Ture = Ture
Ture and False = False
False and True = False
False and False = False
'''
应用:要求多个条件同时满足的时候,使用and将多个条件满足在一起
score = 90
age = 25
#进入公司的条件:分数不低于90分并且年龄大于25岁
print(score >= 90 and age >= 25)
#判断num是否在0到100之间
num = 10
print(0<=num<=100) #写法1
print(num>=0 and num<=100) #写法2
or:连个都为False,结果才是False;只要有一个是True,结果就是True。(相当于生活中的或者)
'''
Ture or Ture = Ture
Ture or False = Ture
False or Ture = Ture
False or False = False
'''
应用:要求多个条件中至少有一个条件满足的时候,就使用or将多个条件连接在一起
score1 = 80 #学习成绩
score2 = 90 #操评分
#获取奖学金的条件: 学习成绩大于90分或者操评分大于95分
print('是否获得奖学金:',score1>90 or score2>95)
not:True变成False,False变成True
not True == False
not False == True
应用:对一个条件进行否定
#进入网吧的条件:年龄不小于18
age = 9
print('是否能进入网吧:',not age < 18)
print('是否能进入网吧:',age >= 18)
练习:获取奖学金的条件:学习成绩大于90分并且操评分不低于80分,或者操评分不低于95分并且学习成绩大于75分
num1 = 92 #input('请输入学习成绩:')
num2 = 82 #input('请输入操评分:')
print('是否获得奖学金:',(num1>90 and num2>=80) or (num1>75 and num2>=95))
4.赋值运算符:=,+=, -=, *=, /=, //=, %=, **=
所有的赋值运算符左边要求都必须是变量;复合赋值运算符左边要求除了是变量以外,这个变量还必须已经附过值
a. = :直接将=右边的值赋給左边的变量
num = 100
num = 12 * 2
b. +=, -=, *=, /=, //=, %=, **=
'变量 += 值' 相当于 '变量 = 变量 + 值'
赋值过程:将原变量中的数据取出来,和后边的指相加,然后奖最新的结果重新赋給变量
num2 = 10
num2 += 2 #num2 = num2 + 2
print(num2)
num2 = 10
num2 *= 2
print(num2)
num2 /= 4
print(num2)
5.运算符的优先级
数学运算符 > 比较运算符 > 逻辑云算符 > 赋值运算符
先算优先级高的,再算优先级低的。如果有括号,先算括号里面的
num = 10
num += 12 * 3 # num += 36
print(num)
不要让数字参与逻辑运算,没有任何意义
数字类型
python中和数字相关的类型有4种: int,float,bool,complex
1. int(整型)
整型包含了数字中所有的整数,包括正整数、负数和0; 例如:0,10,-10,+11
print(10, -10, +200, 0)
2. float(浮点型)
浮点型包含数字中所有的小数;例如:0.0 ,0.12,-3.14
支持科学计数法:2e3 = 2 * 10**3
print(0.0, 0.12, -3.14)
print(2e3)
print(2e-3)
补充:可以利用来**进行开次方运算
print(9**(1/2)) #9开平方
print(8**(1/3)) #8开次方
3.bool(布尔)
布尔只有Ture和False两个值;实质,当布尔参与数字运算的时候Ture就是1,False就是0
print(True == 1)
print(False == 0)
4.complex(复数)
复数是指包含实部和虚部的这种数:10 + 2j,19j,-10j
print((10 + 2j)*(5 + 2j)) #j**2 = -1
5.获取数据的类型:type()
type(数据) - 获取括号中执行的数据对应的类型
type1 = type(10 + 2j)
print(type1)
print(type(True))
num = 3e4
print(type(num))
6.判断是否是指定的类型:isinstance()
isinstance(数据,类型) - 判断指定的数据是否是指定的类型,结果是布尔值
result = isinstance(10,float) #判断10是否是浮点型
print(result)
result1 = isinstance(num,float)
print(result1)
7.类型转换:类型名()
类型名(数据) - 将指定的数据转换为指定的类型
num = 12.5
new_num = int(num)
print(new_num)
num = 12
new_num = float(num)
print(new_num)
new_num = bool(num)
print(new_num)
new_num = float(True)
print(new_num)
new_num = bool(0.0) #布尔转整型或者浮点型:True --> 1/1.0 False --> 0/0.0
print(new_num) #整型/浮点型转布尔:非0数字 --> True 0/0.0 --> False
分支结构:只有if语句(if条件语句)
age = 18
print()
1.if语句
a.语法
if 条件语句:
语句块
b.说明
if - 固定写法,是关键字
条件语句 - 可以是一个值,一个运算表达式。不能是赋值语句
: - 固定写法,(在python中有:的地方一般会产生缩进)
语句块 - 一行或者多行代码;(必须和if保持一个缩进)
c.执行过程:先判断条件语句的结果是否为True(如果不是布尔值就看转换为布尔后是否为True),如果为True就执行语句块对应的代码,否则就不执行语句块对应的代码
d.应用:某个操作或者某段代码是在满足某个条件下才会之,不满足条件就不执行的时候就使用if条件语句
if 100: #(if True)
print('if语句1')
print('if语句2')
if 0: #(if False)
print('if语句1')
print('if语句2')
if 100>10:
print('100大于10')
print('语句3')
#如果age的值大于等于18岁就打印'成年'
age = 20
if age >= 18:
print('成年')
2.if-else结构
a.语法
if 条件语句:
语句块1
else:
语句块2
b.执行过程:判断条件语句是否为True(如果不是布尔就转换为布尔再看是否为True),如果为True就执行语句块1对应的代码,否则就执行语句块2对应的代码
c.应用:满足条件执行某个操作,不满足条件执行另外的操作,就使用if—else结构
num = 10
if num % 2 == 0:
print('偶数')
else:
print('奇数')
if num % 2:
print('奇数')
else:
print('偶数')
#如果age的值大于等于18岁打印'已成年'否则打印'未成年'
age = 10
if age>=18:
print('已成年')
else:
print('未成年')
print('不能进网吧')
3.if-elif-else结构
a.语法:
if 条件语句1:
代码块1
elif 条件语句2:
代码块2
elif 条件语句3:
代码块3
else:
代码块4
b.说明:在if-elif-else结构中,elif可以根据情况有多个,else可以根据情况省略
c.执行过程:先判断条件语句1是否成立,成立执行代码块1,然后整个if语句结束;
条件语句1不成立的时候,就判断条件语句2是否成立,成立执行代码块2,然后整个if语句结束;
条件语句2不成立,就判断条件语句3是否成立,成立就执行代码块3,整个if语句结束;
如果前面所有的条件语句都不成立,就执行else后面的代码块
score = 90
'''
score > 90 --> 优秀
80<=score<=90 --> 良好
60<=score<=79 --> 及格
score<60 --> 不及格
'''
if score > 90:
print("优秀")
elif 80<=score<=90:
print('良好')
elif 60<=score<=79:
print('及格')
else:
print('不及格')
4.if嵌套
在if、elif、else对应的语句块中,可以情况写一个或多个其他的if语句结构
if score > 90:
print("优秀")
if score == 100:
print('满分')
elif 80<=score<=90:
print('良好')
elif 60<=score<=79:
print('及格')
else:
print('不及格')
#判断一个数是否是偶数,如果是打印'偶数'否则打印'奇数',如果这个数能够被4整除,打印'4的倍数'
num = 12
if num % 2 == 0:
print('偶数')
if num % 4 == 0:
print('4的倍数')
else:
print('奇数')
字符串补充
print(100 + 20)
#print(100 + '22') 错误
print(100 > 80)
#print(100 > '80') 错误
#
#input函数,不管输入的内容是什么,结果都是字符串类型
age = input('年龄:')
print(type(age))
age = int(input('年龄:'))#把input函数字符串转换为int(整型)
print(type(age))
if age >= 18:
print('成年')
'''
'''
作业
1.n = 6789,写代码获取变量n中的百位上的数
n = 6789
remainder = n % 1000
label = remainder // 100
print(label)
2.n = 12345,写代码获取变量n中每一位上的数
n = 12345
first = n // 10000
print(first)
second = 2345 // 1000
print(second)
hundred = 345 // 100
print(hundred)
ten = 45 // 10
print(ten)
units = 5 // 1
print(units)
3.写出判断一个数是否能同时被3和7整除的语句条件
n = 21
if (n % 3 == 0) and (n % 7 == 0):
print('能被3和7整除')
else:
print('不能被3和7整除')
4.写出判断一个数是否能够被3或者7整除,但是不能同时被3或者7整除
n = 45
if (n % 3 == 0) or (n % 7 ==0):
print('能够被3或者7整除')
if (n % 3 != 0 ) or (n % 7 !=0):
print('不能同时被3或者7整除')
elif(n % 3 == 0) and (n % 7 == 0):
print('能同时被3或者7整除')
else:
print('不能够被3或者7整除')
5. 输入年,写代码判断输入的年是否是闰年,如果是输出'闰年',否则输出'不是闰年' 。
n = int(input('请输入年份:'))
if n % 4 == 0:
print('闰年')
else:
print('不是闰年')
6. 今天上课讲了1500秒的课,编程计算今天上课时间是多少小时,多少分钟,多少秒
m = 1500
hour = m // 3600
minute = (m % 3600) // 60
second = ((m % 3600) % 60) // 1
print(hour,'时',minute,'分',second,'秒')
7. 定义两个变量保存一个人的身高和体重,编程实现判断这个人的身材是否正常!
公式: 体重(kg)/身高(m)的平方在18.5 ~ 24.9之间属于正常。
height = 1.7
weight = 50
n = weight / height**2
print(n)
if 18.5<= n <=24.9:
print('正常')
else:
print('不正常')