Pyf20230308(Python变量与运算符)

01变量

1.程序中使用数据的两种方式:

1.1 直接使用数据
print(18)
print('编程之家收集整理的这篇文章主要介绍了超级详细实用的pycharm常用快捷键,编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。')
1.2 先将数据保存到变量中,然后再通过使用变量来使用数据
score1 = 98
score2 = 66
print((score1 + score2) / 2)

2.定义变量 - 将数据保存到变量中

变量的作用:保存数据

2.1 语法:变量名 = 数据
2.2 说明:
变量名 - 程序员自己命名
要求:是标识符,不是关键字
规范:a.见名知义
b.不使用系统函数名、类名、模块名
c.所有的字母都小写,多个单词之间用下划线隔开
= - 固定写法
数据 - 需要保存到变量中的具体数据(可以是具体的某种类型的数据,也可以是运算表达式)

3.使用变量 - 使用变量中保存的数据,数据能做的事情保存数据的变量也可以做

注意:变量必须先定义再使用

a = -100
print(a)

4.同时定义多个变量

4.1 变量名1 = 变量名2 = 变量名3 = … = 数据
a1 = b1 = c1 = 100
print(a1, b1, c1)
4.2 变量名1, 变量名2, 变量名3, … = 数据1, 数据2, 数据3, …
x, y = 100, 200
print(x, y)
案例:交换两个变量的值
print('--------------------')
m = 200
n = 30
m, n = n, m
print(m, n)

5.变量重新赋值 - 定义完变量后可以给变量重新赋不同类型的值,变量中装最后赋值的值

print('--------------------')
score = 90
print(score)
score = '优秀'
print(score)

02变量的底层逻辑

1.Python变量存储数据和重新赋值的底层

python定义变量的时候先申请内存,内存申请多大看数据需要多大,申请完内存后将数据保存到内存中,然后再将变量和对应的内存进行关联;
重新给变量赋值的时候,会根据新的值重新申请新的内存,然后将新的数据保存到新的内存中,最后将变量和新的内存进行关联。

id函数 - 获取变量对应的内存地址
a = 10
print(id(a))
a = 100
print(id(a))

03数学运算符

所有的数学运算符:+(加)、-(减)、*(乘)、/(除)、%(取余、取模)、//(整除)、**(幂运算)

1.+ - * /

+、-、*、/和数学中的+、-、×、÷的功能一样

print(10 + 20)  # 30
print(10 - 20)  # -10
print(10 * 20)  # 200
print(10 / 20)  # 0.5

如果运算对象中有一个是浮点数,那么结果一定是浮点数

print(10.0 + 20)  # 30.0
print(10.0 - 20)  # -10.0
print(10.0 * 20)  # 200.0

除法(/)运算的运算结果一定是浮点数

print(20 / 10)  # 2.0

2.%(取余、取模) - 求余数

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

print(10 % 3)  # 求10除以3的余数
print(20 % 3)  # 求20除以3的余数
2.1 应用场景1:判断一个数是否能够被另外一个数整除(判断这两个数的余数是否为0)
print('--------------------')
num1 = 23
num2 = 11
print(num1 % num2)

print(30 % 6)
print(8 % 4)
2.2 应用场景2:取整数的低位数(对10的N次方取余,就可以获取这个数的后N位数)
print('--------------------')
num = 2379
print(num % 10)  # 9
print(num % 100)  # 79
print(num % 1000)  # 379

3.//(整除) - 求商,商向小取整

x // y - 求x除以y的商,商向小取整的结果

print(5 // 2)  # 2
print(3.8 // 2)  # 1
print(99 // 4)  # 24
print(-5 // 2)  # -3
3.1 应用场景1:求一个数中有多少个完整的另一个数

例:求num中有多少个的8

num = 79
print(num // 8)

练习:已知t的值是总的秒数,求t中有多少个完整的小数

t = 282929
print(t // 3600)  # 78
3.2 应用场景2:去掉整数的低位数,保留高位数
print('--------------------')
print(8293 // 10)  # 829
print(82 // 10)  # 8
print(82233 // 100)  # 822

练习:写程序提取任意一个整数的百位数
2833 -> 8 123 -> 1 82929 -> 9

print('--------------------')
num = 82929
方法11823 // 100 -> 18 % 10 -> 8

print(num // 100 % 10)

方法21823 % 1000 -> 823 // 100 -> 8

print(num % 1000 // 100)

4.**(幂运算)

X ** y - 求x的y次方

print('--------------------')
print(3 ** 4)  # 81
print(2 ** 5)  # 32
print(4 ** -2)  # 0.0625
print(8 ** (1/3))  # 2.0
print(100 ** 0.5)  # 10.0

04比较运算符

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

1.所有比较运算符的运算结果都是布尔值

print(100 > 200)  # False
print(100 == 100)  # True

2.python中的比较运算符支持连写表示范围

score = 82
# 判断分数是否大于等于70,小于90
print('是中等成绩:', 70 <= score < 90)

05逻辑运算符

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

1.and(逻辑与运算)

1)应用场景:用来连接要求同时成立的两个条件,相当于生活中的‘并且‘
2)运算规则:条件1 and 条件2–如果两个条件同时成立结果就是True,只要有一个条件不成立结果就是False
True and True - True
True and False - False
False and True - False
False and False - False

例:判断num是否能同时被3和8整除

num = 24
print('num是否能同时被3和8整除:', num % 3 == 0 and num % 8 == 0)

练习:判断num是否是能够被7整除的偶数

num = 42
print('num是否是能够被7整除的偶数:', num % 7 == 0 and num % 2 == 0)

2.or(逻辑或运算)

1)应用场景:如果要求两个或者多个条件有一个条件成立就行,用on连接,相当于生活中的’或者"
2)运算规则:条件1 or条件2-只要有一个条件成立,结果是True;两个条件都不成立结果是False
True or True - True
True or False - True
False or True - True
False or False - False

练习1:判断num是否能被3或7整除

print('--------------------')
num = 24
print('num是否能被3或7整除:', num % 3 == 0 or num % 7 == 0)

练习2:判断指定的年是否是闰年
闰年:闰年分为普通闰年(能被4整除但是不能被100整除的年)和世纪闰年(能被400整除的年)两种

year = int(input('请输入一个年份:'))
print('year是否为闰年:',year % 400 == 0 or (year % 4 == 0 and year % 100 != 0))
print('year是否为普通闰年:',year % 4 == 0 and year % 100 != 0)
print('year是否为世纪闰年:',year % 400 == 0)

3.not(逻辑非运算)

1)应用场景:对条件进行否定
2)运算规则: not条件 - 对指定条件进行否定
not True - False
not False - True

例1:判断age是否不大于18

age = 28
print(not age > 18)
print(age <= 18)

例2:判断num是否不能被5整除

num = 89
print(not num % 5 == 0)
print(num % 5 != 0)

例3:判断num是否不能同时被3和7整除

num = 90
print(not (num % 3 == 0 and num % 7 == 0))
print(num % 21 != 0)

06赋值运算符

赋值运算:=、+=、-=、*=、/=、%=、1/=、**=
注意:
a.所有赋值运算符最终的功能都是完成对变量的赋值操作(将数据保存到变量中)
b.所有的赋值运算都没有结果,无法提供数据

1. = - 普通赋值运算符

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

2. +=

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

num = 10
num += 2    # num = num + 2
print(num)  # 12

num -= 3    # num = num -3 =12 -3
print(num)  # 9

num *= 2
print(num)  # 18

num %= 3    # num = num % 3 = 18 % 3
print(num)  # 0

07 三目运算符

三目运算符-运算对象有三个运算符就是三目运算符

1.C语言的三目运算符 - ?:

条件语句?表达式1:表达式2 - 如果条件语句为真整个运算结果是表达式1的结果,否则是表达式2的结果

2. Python的三目运算符

表达式1 if 条件语句 else 表达式2 - 先判断条件语句是否成立,如果成立整个运算表达式的结果就是表达式1的值,否则是表达式2的值

age = 6
result = '成年' if age >= 18 else '未成年'
print(result)

08运算符优先级

1.运算符的优先级

1.1 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)
1.2 数学运算符中:** > * / // % > + -
1.3 逻辑运算符中:and > or
1.4 有小括号()先算小括号里的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值