打卡day 01
变量:
记录某种可以改变的状态
变量名的命名规范:
变量名的命名应该对值有描述性的功能
变量名只能是字母、数字、下划线的任意组合,且不能以数字开头
不能用python关键字作为变量名
变量的三个特征:
1、id:变量值的唯一编号,内存地址不同则id不同
2、type:类型
3、value:值
is:身份运算
变量的id相等则值一定相等
x = 1 y = x print(id(x),id(y)) #输出x、y各自的id print(x is y) #比较x与y的id是否相等 print(x == y) #比较x与y的值是否相等
变量的值相等id不一定相等
x = 333 y = 333 print(x == y) #比较x与y值是否相等(结果为True) print(x is y) #比较x与y的id是否相等(结果为False) print(id(x)) #查看x的id print(id(y))
小整数池:(-5—256)
在小整数池范围内,数值相等则id相同
x = 10 y = 10
w = x + y
z = 20 print(w is z) #对比w与z的id(结果为True)
运行python程序的三个阶段
1、先启动Python解释器
2、Python解释器将Python文件由硬盘读入内存
3、Python解释器解释执行读入内存的代码,开始识别Python语法
数据类型
1、整型(int):整数
2、浮点型(float):小数
3、字符串类型(str):在引号(单引号,双引号,三引号)内包含的遗传字符
4、列表(list):记录多个值,在 [ ] 内用逗号分隔开多个任意值
a = [1,2,[a,d[3,4]]] print(a) print(a[0][2]) #读取列表中对应位置的值
5、字典(dict):记录多个key:value值,在{}内用逗号分隔开多个key.value的值,其中value可以是任意数据类型。
info = {'name':'xiaozhu', 'age':16, 'hobbies':['paobu','kanshu','dayouxi']} print(info['name']) print(info['age'],['hobbies']) #根据key读取相对应的值。
6、布尔型(bool):True/False,用来表示条件是否成立。
输入输出
input输入:在Python3中的input会将用户输入的任何内容都存储为str(数字串)类型
在Python3中只有一个input,
在Python2中有input和raw_input。
其中Python2中的raw_input与Python3中的input相同
而Python2中的input要求使用者必须输入明确的数据类型,输入什么类型就存储为什么类型。
name = input('请输入你的名字:') pwd = input('请输入你的密码:') if name == '好好学习' and pwd == '123': print('登录成功') else: print('账号或者密码输入有误 请重新输入')
print输出:
name = input('请输入你的名字:') age = input('请输入你的年龄:') print('my name is %s my age is %s' %(name, age)) #%s为占位符号,可以接受任意类型数据
基础运算符
算数运算:
print(3 + 1) #相加 print(3 - 1) #相减 print(3 * 3) #相乘 print(10 / 3) #有整数部分有小数部分 print(10 // 3) #去掉小数,向下取整 print(2 ** 3) #2的三次方
print(10 % 3) #取余数
比较运算:
比较运算只能同类型之间进行,其中int与float同属数字类型,可以相比较。
print(10 > 3.1)
赋值运算:
1. 增值赋值:
age = 18 age = age + 1 print(age)
age = 18 age += 1 #age = age + 1 print(age) a = 10 a %= 3 #a = a % 3 print(a)
2. 链式赋值:
x=10 y=x print(x is y) a=b=c=d=e=111 print(a is b is c is d is e)
3. 交叉赋值:
x=10 y=20 # temp=x # x=y # y=temp x,y=y,x print(x,y)
4. 解压赋值:
nums=[1,2,3,4,5] # a=nums[0] # b=nums[1] # c=nums[2] # d=nums[3] # e=nums[4] # a,b,c,d,e=nums # print(a,b,c,d,e) # a,b,c,_,_=nums #_=5 # print(a,b,c) # print(_) a,b,*_=nums #*_ 表示无穷个_ 变量 print(a,b)
逻辑运算:and, or, not
and:连接左右两个条件,两个条件必须都成立,结果才为True;反之则为False。
or:连接左右两个条件,两个条件但凡有一个成立,结果就为True;反之则为False。
no:取反。