Python基础语法学习笔记二

DAY3

一、变量 - 保存数据

1.程序中使用数据的两种方式
1)直接使用数据
print(18)
print((98+90)/2)
2)先将数据保存到变量中,然后再通过使用变量来使用数据
age=26
print(age)

score1 = 98
score2 = 76
print((score1+score2)/2)
2. 定义变量 /创建变量- 将数据保存到变量中
1)语法: 变量名 = 数据
2)说明:
a.变量名 - 程序员自己命名
要求:是标识符,不是关键字
      ######           规范:a1.见名知义(看到变量名就大概知道变量中保存的是什么数据)

                  ######                       b1.不使用系统函数名(例:print、input、type、...)、类名(int、str、float、...)和模块名
c1.所有字母都小写,多个单词之间用下划线隔开(PEP8)
b. = - 固定写法
c. 数据 - 需要保存到变量中的具体的数据
name ='小明'
price = 120

# print=100    (print命名不会报错,但导致print本身功能消失,影响后续使用)
# int=100     (int命名不会报错,但导致int本身功能消失,影响后续使用)

dog_name = '旺财'
dogName = '大黄'  #(驼峰式命名,中间首字母大写)

result = 100 + 200
print(result)
3.使用变量 - 使用变量中保存的数据,所有数据能做的事情,保存数据的变量都可以做
注意:变量必须先定义再使用
um = 100
print(100)
print(num)    #100
print('num')  #num

print(100+200)
print(num+200)

print(type(100))
print(type(num))

print(float(100))
print(float(num))

# x=100
x=num
print(x)

str1='姓名:'
# name = input('姓名:')
name =input(str1)
print(name)

str = '请输入地址:'
address =input(str)
print(address)
4.同时定义多个变量
1) 变量名1 = 变量名2 = 变量名3 = … = 数据 - 同时定义多个变量赋相同的值
a = b = c = 100
print(a,b,c)
2) 变量名1,变量名2,变量名3,… = 数据1,数据2,数据3,… - 同时定义多个变量赋不同的值(变量的数据必须和数据的数量保持一致)
x,y =100,200
print(x,y)
# 案例:交换两个变量的值(两个杯子交换液体)
m=200
n=30
# 方法1: m=n  n=m (错误)
t=m  #t=200
m=n  #m=30
n=t  #n=200
print(m,n)    #m,n=30,200(借助第三个杯子)
# 方法2:
m,n=n,m
print(m,n)    #m,n =30,200

5.变量重新赋值
score = 90
print(score)
# 1)定义完变量以后可以重新给变量赋值,重新赋值后再使用变量,使用的新的值
score = 87
print(score)
# 2)重新赋值的时候可以赋不同类型的值
score = '优秀'
print(score)
6.变量的底层逻辑
1.python 变量存储数据和重新赋值的底层(保存在内存里面)
2.id 函数 - 获取变量对应的内存地址
3.python定义变量的时候先申请内存,内存申请多大看数据需要多大,申请完内存后将数据保存到内存中,然后再见变了和对应的内存进行关联
4.重新给变量赋值的时候,会根据新的值重新申请新的内存,然后将新的数据保存到新的内存中,最后将变量和新的内存进行关联。
a=10
print(id(a))

a=100
print(id(a))

二、数学运算符

所有的数学运算符:+(加)、-(减)、*(乘),/(除)、%(取余、取模)、//(整除)、**(幂运算)
1.+、-、*、/
1)+、-、*、/和数学中的+、-、×、÷的功能一样
print(10+20)  #30
print(10-20)   #-10
print(10*20)   #200
print(10/20)   #0.5
2)如果运算对象中有一个是浮点数,那么结果一定是浮点数(应用于所有数学运算符)
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的余数
1)应用场景1:判断整除关系(判断一个数是否能够被另外一个数整除) - 判断这两个数的余数是否为0
num1=23
num2=11
print(num1 % num2)

print(30%6)
2)应用场景2:取整数的低位数 - 对10的N次方取余,就可得该数的后N位数
num = 8293
print(num % 10)   #求该数的个位数
print(num % 100)  #求该数的后两位数
3.//整除 - 求商,商向小取整
x//y - 求x除以y的商,商向小取整的结果
print(5//2)   #2
print(3.8//2)   #1.0
print(99//4)  #24
print(-5//2)   #-3
1)应用场景1:求一个数中有多少个完整的另一个数
例如:求num中有多少个完整的10
num=234
print(num//10)  #23
例: 已知t的值是总的秒数,求t中有多少个完整的小时
t=282929
print(t//3600)    #78
2)应用场景2:去掉整数的低位数,保留高位数 - 整除10或10的N次方
print(8293//10)   #829
print(82//10)  #8
练习:提取任意一个整数的百位数
num=2833
print((num//100)% 10)

# 方法1: 1823//100  -> 18% 10  ->8
print(num//100%10)
# 方法2: 1823 % 1000  ->823//100   ->8
print(num% 1000//100)
4.**(幂运算)
x**y - 求x的y次方
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

三、比较运算符

比较运算符:>(大于)、<(小于)、==(等于)、!=(不等于)、>=(大于等于)、<=(小于等于)
1.所有的比较运算符的运算结果都是布尔值
print(100>200)    #False
print(100==100)   #True
num=89
print('num是否为偶数:',num%2==0)   #num是否为偶数
2.python中的比较运算符支持连写表示范围
score = 89
# 判断分数是否大于等于70,小于90
print('是否中等成绩',70<=score<90)

四、逻辑运算符

逻辑运算符: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 =78
# 是否能被3整除:num % 3==0
# 是否能被8整除:num % 8==0
print('num是否能同时被3和8整除:',num % 3==0 and num % 8==0)
# 练习:判断num能否被7整除的偶数
num =92
print('num是否能被7整除的偶数:',num % 7==0 and num %2==0)
2.or (逻辑或运算)
1)应用场景:如果要求两个或者多个条件有一个条件成立就行,用or连接,相当于生活中的’或者‘
2)运算规则:条件1 or 条件2 - 只要有一个条件成立,结果是True;两个条件都不成立结果是False
True and True - True
True and False - True
False and True - True
False and False - False
#练习1:判断num是否能够被3或者7整除
num=89
print('num是否能被3或者7整除:',num%3==0 or num%7==0)
# 练习2:判断指定的年是否为闰年(闰年:普通闰年-能被4整除但不能被100整除的年,世纪闰年-能被400整除的年
year=2673
print('year是否为普通闰年',year%4==0 and year%100!=0 )
print('year是否为世纪闰年',year%400==0)

print('year是否为闰年',(year%4==0 and year%100!=0)or (year%400==0))   #合并起来
3.not(逻辑非运算)
1)应用场景:对条件进行否定
2)运算规则: not 条件 - 对指定条件进行否定
not True - False
not False - True
#案例:判断age是否不大于18
age = 28
print(not age>18)
print(age<=18)
# 案例:判断num是否不能被5整除
num =89
print(not num%5==0)
print(num % 5!=0)
# 案例:判断num是否不能同时被3和7整除(用not简单情况)
num=98
print(not(num%3==0 and num%7==0))
print(num % 21!=0)

五、赋值运算符

赋值运算:=、+=、-=、*=、/=、%=、//=、**=
1.= - 普通的赋值运算符
注意
a.所有赋值运算符最终的功能都是完成对变量的赋值操作(将数据保存到变量中)
b.所有的赋值运算都没有结果,无法提供数据
# print(b=20)  #报错
b=20
print(b)
# 变量名 = 数据  -  将数据直接保存到变量中
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
3.运算符的优先级
1.数学运算符>比较运算符>逻辑运算符>赋值运算符(最低)
2.**>*、/、%、//>±
3.and>or
4.有括号先算括号里面
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值