day3-Python变量和运算符

1.变量

  1. 变量的作用:变量是用来保存数据的。(将数据保存到变量中以后,就可以通过变量来使用数据)
    a.数据保存到变量中以后再使用数据可以使数据的意义更明确。
    b.数据保存到变量中以后再使用数据,数据可以不用重复写和重复修改。
    结论:使用数据的数据一般不要直接使用,而是先将数据保存到变量中,再通过变量来使用数据。

  2. 定义变量(创建变量保存数据)

    语法:
    变量名 = 数据
    说明:
    a. 变量名 - 由程序员自己命名,但是必须符号两个命名要求和三个规范
    要求:是标识符;不能是关键字
    规范:见名知意(看到变量名就知道这个变量中保存的是什么数据);
    不使用系统函数名(print、input、type)、类名(int、float、str、bool)或模块名(random);
    所有的字母都小写,多个单词之间用下划线隔开(目前Python变量名也可以使用驼峰式命名)

​ b. 等号(=) - 用来给变量赋值。
​ 等号(=)运算符左边是一个变量名,等号(=) 运算符右边是存储在变量中的值
​ 用变量保存运算表达式的运算结果

​ c. 数据 - 需要保存到变量中的对象;可以是任何有结果的表达式(例如:具体的数据、已经赋值过的变量、有结果的运算表达式等)

示例:

# 1)如果用print来作为变量名使用,会导致print函数的打印功能消失
# print = 100
print(200)

# 2) 如果用类型名来作为变量名使用,会导致对应的类型转换无法进行
# int = 10
print(int(34.56))

# 3) 驼峰式命名
dogName = '旺财'
pythonClassAddress = '14教室'

# 4)下划线分割单词
dog_name = '财财'
python_class_address = '14教室'

# 5) 用变量保存具体的数据
a = 100
b = 'abc'

# 6) 用变量保存已经赋值过的变量中的数据
c = name
print(c)

# 7) 用变量保存运算表达式的运算结果
d = 100 + 200
print(300)
  1. 使用变量

​ 使用变量就是使用变量中保存的数据。(数据能做的事情,保存这个数据的变量都可以做)
​ 什么时候需要变量中保存的数据,什么时候就使用变量

示例:

num = 100

# 通过打印变量来打印变量中保存的数据
print(num)      # 100
print('num')    # num

# 通过获取变量的类型来获取变量中保存的数据的类型
print(type(num))        # <class 'int'>
print(type('num'))      # <class 'str'>

# 将变量中保存的数据作为运算对象
print(num + 200)        # 300
# print('num' + 200)    # 报错
  1. 重新给变量赋值

示例:

# 第一次给变量x赋值为100
x = 100
print(x)	# 100

# 重新给变量x赋值为200(重新赋值后新的值会覆盖原来的值)
x = 200
print(x)	# 200

# 重新给变量x赋值为 'abc'
x = 'abc'
print(x)	# abc
  1. 同时定义多个变量

​ a.同时定义多个变量赋相同的值:变量1 = 变量2 = 变量3 = … = 数据

a1 = b1 = c1 = 20
print(a1, b1, c1)

​ b.同时定义多个变量赋不同的值:变量1, 变量2, 变量3,… = 数据1, 数据2, 数据3, …

x1, y1, z1 = 10, 20, 30
print(x1, y1, z1)
# 练习:已经变量m和n,写代码交换变量m和n的值
# 方法1:
m = 1000
n = 200

t = m
m = n
n = t
print(m, n)

# 方法2:
m = 200
n = 300
m, n = n, m         # m, n = 300, 200
print(m, n)

# python中交换两个变量的值:变量1, 变量2 = 变量2, 变量1

2.数学运算符

Python中数学运算符:+(加)、-(减)、*(乘)、/(除)、%(取余-求余数)、//(整除)、**(幂运算)

  1. +(加)、-(减)、(乘)、/(除)
    +、-、
    、/ 和数学中的+、-、×、÷的功能一样

示例:

print(9 + 9)    # 18
print(9 - 9)    # 0
print(9 * 9)    # 81
print(9 / 9)    # 1.0

# 注意:除法运算的结果一定是浮点数(不管除不除得尽);其他运算符的运算结果看运算对象(运算对象中有浮点数结果是浮点数,否则是整数)
  1. % - 取余、取模(求余数)

    x % y - 求x除以y的余数

示例:

print(10 % 3)       # 1
print(15 % 4)       # 3
print(15 % 2)       # 1

# 应用1:判断整除关系(判断一个数是否能够被另外一个数整除:判断这两个数的余数是否为0)
print(10 % 5)	# 0
print(8 % 2)	# 0

# 判断数字的奇偶性:所有能被2整除的数就是偶数
num = 57
print(num % 2)	# 1 

# 应用2:取整数的低位数(砍掉高位保留低位)  -  让整数对10或者10的n次方进行取余操作,可以获得整数的最1位或者后n位数
num = 345
print(num % 10)     # 5
print(num % 100)    # 45

print(72823 % 10)       # 3
print(72823 % 100)      # 23
print(72823 % 1000)     # 823
  1. // - 整除

​ x // y - x除以y的商,商向小取整(找和尚相邻的两个整数中较小的那个)

示例:

# 应用:去掉整数的低位数,保留高位数 - 对10的n次方进行取整
print(10 // 3)   # 3
print(20 // 3)   # 6
print(-20 // 3)  # -7

# 练习1:获取num中的十位数
num = 78294

# 方法1:将原数据的十位数变成个数(把原来的个位数砍掉)
# 78294  -> 78294 // 10 ->  7829  ->  7829 % 10  ->  9
print(num // 10 % 10)

# 方法2:
# 78294 -> 78294 % 100 -> 94 -> 94 // 10 -> 9
print(num % 100 // 10)

# 练习2:获取num中的百位数
num = 82339
# 82339 -> 339 // 100 -> 3
print(num % 1000 // 100)

# 82339 -> 823 % 10 -> 3
print(num // 100 % 10)
  1. ** - 幂运算

​ x ** y - 求x的y次方

示例:

print(2 ** 3)
print(5 ** 4)
print(21 ** 2)
print(2 ** -2)      # 0.25
print(16 ** 0.5)    # 4.0
print(8 ** (1/3))   # 2.0

3.比较运算符

Python中的比较运算符:>(大于)、<(小于)、>=(大于等于)、<=(小于等于)、==(等于)、!=(不等于)

  1. 所有的比较运算符的运算结果都是布尔值
print(10 > 9)	# True
print(10 < 9)	# False
print(10 >= 10)	# True
print(10 <= 20)	# True
print(10 == 20)	# False
print(10 != 20)	# True
  1. Python中的比较运算支持连写表示范围
age = 23
# 判断age值是否在18到28之间
print(18 <= age <= 28)  # True
# 练习:写出判断score是否在[70, 90)范围内
score = float(input('请输入分数:'))
print(70 <= score < 90)

4.逻辑运算符

Python中的逻辑运算符:and(逻辑与)、or(逻辑或)、not(逻辑非)

复合条件 - 将多个条件连接成一个条件的连接方法:a.要求多个条件同时成立 b.要求多个条件中只要有一个条件成立就行

  1. and(逻辑与)
    a.应用场景:要求多个条件同时成立的时候,这多个条件就用and来连接;相当于生活中的或者
    b.运算规则:条件1 and 条件2 - 两个条件都成立结果就是True,只要有一个不成立结果就是False
    True and True -> True
    True and False -> False
    False and True -> False
    False and False -> False

示例:

# 案例1:写出判断num是否能够同时被3和5整除的条件
num = 30

# 条件:num是否能够同时被3和5整除  -> 既能够被3整除,又能够被5整除  -> 能被3整除的条件和能被5整除的条件同时成立
# 能被3整除的条件: num % 3 == 0
# 能被5整除的条件: num % 5 == 0
print('num是否能够同时被3和5整除:', num % 3 == 0 and num % 5 == 0)
print('num是否能够同时被3和5整除:', num % 15 == 0)

# 案例2:写出判断num是否是大于10的偶数的条件
num = 121

# 条件:num是否是大于10的偶数  -> 大于10,是偶数
# num是否大于10的条件: num > 10
# num是否是偶数:num % 2 == 0
print('num是否是大于10的偶数:', num > 10 and num % 2 == 0)

# 练习:写出判断num是否是能被5整除的奇数
num = 15
print('num是否是能被5整除的奇数:', num % 5 == 0 and num % 2 != 0)
  1. or(逻辑或)

​ a.应用场景:要求多个条件中只要有一个条件成立就行,这多个条件就用or来连接;相当于生活中的或者
​ b.运算规则:条件1 or 条件2 - 两个条件中只要有一个条件成立结果就是True,两个条件都不成立结果才是False
​ True or True -> True
​ True or False -> True
​ False or True -> True
​ False or False -> False

示例:

# 案例:判断num是否能够被3或者7整除
num = 15
print('num是否能够被3或者7整除:', num % 3 == 0 or num % 7 == 0)

# 练习:判断year对应的年份是否是闰年
# 闰年分为普通闰年(能被4整除但是不能被100整除)和世纪闰年(能被400整除)两种
year = 2008

# 普通闰年:year % 4 == 0 and year % 100 != 0
# 世纪闰年:year % 400 == 0
print('否是闰年:', (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0))
  1. not(逻辑非)

​ a.应用场景:对条件进行否定(相当于生活中的否定语句)
​ b.运算规则:not 条件 - 对指定条件进行否定
​ not True -> False
not False -> True

示例:

# 案例1:写出age不大于18的条件
age = 72
print(not age > 18)
print(age <= 18)

# 案例2:num不等于10的条件
num = 23
print(not num == 10)
print(num != 10)

# 练习:写出判断num是否不能同时被3和7整除的条件
num = 34
print(num % 21 != 0)
print(not(num % 3 == 0 and num % 7 == 0))

# 能被3整除的时候不能被7整除、能被7整除的时候不能被3整除、既不能被7整除也不能被3整除
print((num % 3 == 0 and num % 7 != 0) or (num % 7 == 0 and num % 3 != 0) or (num % 3 != 0 and num % 7 != 0))

5.赋值运算符

Python中的赋值运算符:=、+=、-=、*=、/=、%=、//=、**=

  1. 不管是简单的赋值运算符还是复合赋值运算符,其功能都是给变量赋值(将一个数据保存到一个变量中)#

    注意:所有赋值运算符的左边必须是变量,右边必须是能够提供数据的表达式

    a. =

    变量 = 数据 - 将数据直接保存到变量

    示例:

    a = 10
    b = 20 * 2
    

​ b. 复合赋值运算符:+=、-=、*=、/=、%=、//=、**/

​ 变量 += 数据 - 先将变量中的数据取出来和后面的数据进行加法运算,然后让加法运算的结果保存到前面的变量中
​ 注意:复合赋值运算符前面的变量必须是已经赋值过的变量

运算符描述实例
=简单的赋值运算符c = a + b 将 a + b 的运算结果赋值为 c
+=加法赋值运算符c += a 等效于 c = c + a
-=减法赋值运算符c -= a 等效于 c = c - a
*=乘法赋值运算符c *= a 等效于 c = c * a
/=除法赋值运算符c /= a 等效于 c = c / a
%=取模赋值运算符c %= a 等效于 c = c % a
//=取整除赋值运算c **= a 等效于 c = c ** a
**=幂赋值运算符c //= a 等效于 c = c // a

示例:

c = 100
c += 10     # c = c + 10
print(c)    # 110

c -= 20
print(c)    # 90

c *= 2
print(c)    # 180

c %= 3      # c = c % 3 = 180 % 3 = 0
print(c)    # 0
  1. 运算符优先级:

​ 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符

​ ** > *、/、%、// > +、-

​ and > or

​ 有括号先算括号里的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值