day2 变量与运算符
1. 输出函数与输入函数
1). 输出函数 print
输出函数又叫打印函数
print(100+300) #400
print('张三')
print('张三',21,21+5)
print函数显示结果时不会显示引号
2). 输入函数input
a. 基本用法:变量=input(输入提示信息)
b. input函数不管输入的数据是什么类型,得到的数据都是字符串
age = input('请输入你的年龄')
print(age)
类型转换: 类型名(数据)
age=int(age)
print(age<18)
weight = float(input('请输入你的体重(kg)'))
print(weight * 2, '斤')
2. 变量
1). 变量
变量使用便于保存数据简化使用以及修改
在程序中使用数据时,应先将数据保存到变量中,再通过使用变量来使用变量中的数据
word = '长路漫漫,唯剑相伴。' print(word)
2). 定义变量(创建变量)
a. 语法:变量名=数据
b. 说明:
变量名由程序员自由命名,但有两要求三规范
两要求: 是标识符;不是关键字
三规范:
见名知义(看到变量名,就知道此变量名保存的是什么数据)
不使用系统的函数名、类名、模块名
所有的字母都小写,多个单词之间用下划线 隔开 。
dog_name(PEP8命名规范) dogName(驼峰式命名)
= 为固定写法
数据可以是任何有结果的表达式,比如具体的某种类型数据、运算结果、函数调用表达式等
name = '张三'
age = '21'
get = '一等奖'
print(name,age,get)
3). 使用变量
使用变量要先定义再使用
a = 10
print(a+10)
4). 给变量重新赋值
num=100
print(num)
num='张三'
print(num)
#此时输出函数输出的是最新保存的数据
3. 运算符
1). 数学运算符
a. 数学运算符:+(加)、-(减)、*(乘)、/(除)、%(取余、取模)、//(整除)、**(幂运算)
加减乘除的功能和数学中相同
除法运算结果都是浮点型
b. % 取余 取模
取余即除法中取余数.
应用 : 判断两个整数之间是否存在整除关系。
获取整数的底位数
print(10 % 3) #1
# 判断两个整数之间是否存在整除关系。
num1=int(input('请输入一个四位数:'))
print(num1 % 3 == 0) # num1是否能整除3
print(num1 % 2 == 0) # 若为T,则num1是偶数 若为F,则num1是奇数
print(num1 % 2 != 0) # 若为T,则num1是奇数
#获取整数的底位数
print(num1 % 10) # 取到num1的最后一位数
print(num1 % 100) # 取到num1的后两位数
print(num1 % 1000) # 取到num1的后三位数
c. // 整除 求商(商向小取整)
print(5 // 2) # 5/2得2.5,2和3中取小,则取2
print(-5 // 2) # -5/2得-2.5.-2和-3中取小,则取-3
应用:
完整的个数
例如:num1 中有多少个完整4 num1 //4
获得整数的高位数,去掉低位数
print(num1 // 10) # 保留前面的数,去掉num1最后一位数 print(num1 // 100) # 保留前面的数,去掉num1后两位数 print(num1 // 1000)# 保留前面的数,去掉num1后三位数
# 思考:获取任意一位正整数的十位数 num=3451 #法一 num = (num // 10) % 10 #法二 num = (num % 100)// 10 print(num)
d. ** 幂运算
x**y 即x的y次方
print(4 ** 0.5) # 平方根 2
print(2 ** -2)
print(8 ** (1/3)) #立方根
2). 比较运算符
# >(大于) <(小于) ==(等于) !=(不等于) >=(大于等于) <=(小于等于)
# 一个=是赋值,比较运算符的运算结果是布尔值(True、False)
print(10 == 20)
print(10 > 10)
print(12 != 3)
num=29
print(num % 2 == 0)
# 支持连写表示范围
age = 56
print(18 <= age <= 28)
3). 逻辑运算符
逻辑运算符有and(逻辑与运算)、or(逻辑或运算)、not(逻辑非运算)
and
'''
连接需要同时成立的两个条件,相当于并且
运算规则:
需要两个条件都为True才成立,否则,有一个为False就不成立
'''
#案例 判断num能否同时被3和7整除
num=89
print('num能否同时被3和7整除',(num % 3 ==0)and(num % 7 == 0))
print(num % 21 == 0)
# 练习 判断num是否是一个大于10的奇数
num = 78
print('num是否是一个大于10的奇数',num > 10 and num % 2 != 0)
or
'''
要求两个或多个条件有一个成立就可以,相当于或者
运算规则:若条件都成立,则成立;只要有一个条件成立就成立;若所有条件都不成立,则不成立
'''
# 案例判断num能否被3或7整除
num=89
print('num能否被3或7整除',(num % 3 ==0)or(num % 7 == 0))
# 练习 判断year对应的年份是否是闰年
# 闰年分为世纪闰年(能被400整除)和 普通闰年(能被4整除但不能被100整除)两种
year=1998
print('year对应的年份是否是闰年',(year % 400 == 0) or (year % 4 == 0and year % 100 != 0))
not
"""
用于对某一个条件进行否定
运算规则:
not True --> False
not False -->True
"""
4). 赋值运算符
不管是什么样的赋值运算符,它们的目的都是将数据保存到变量中
a. 单一赋值运算符:=
b. 复合的赋值运算符:+=、-=、*=、/=、%=、//=、**=
变量 += 数据 :将变量中数据取出来和后面的数据加起来以后再将结果重新赋值给变量
a = 10 a += 100 # 即是 a=a+100
5). 运算符的优先级
数学运算符>比较运算符>逻辑运算符>赋值运算符(最低)
** > *、/、 //、% > +、-
and > or
有括号先算括号里面的