day03_基本数据类型基本运算

时间:2021-03-31 17:25:38
1、什么是数据类型
变量值才是我们存储的数据,所以数据类指的就是变量值的不同种类

2、为何数据要分类型?
变量值是用来保存现实世界中的状态的,那么针对不同的状态就应该用不同类型的数据去表示


3、如何用,即数据类型的分类?
一、基本数据类型分为:数字类型、字符串类型、列表、字典、布尔类型.
数字类型又分为:整型、浮点型
(1)、整型:
作用:表示人的年龄、各种号码、等级
定义:age=10 #age=int(10)
2、浮点型:
作用:
工资,身高,体重,
定义:salary=3.1 #salary=float(3.1)
(2)、字符串:
1、作用:表示描述性质的状态,比如人的名字,家庭住址

2、定义:在单引号、双引号、三引号内包含的一串字符
name='egon' #name=str('egon' )

msg='''
alex
egon
wxx
'''
print(type(name))
print(type(msg))

注意点:
msg="my name is 'egon'"
print(msg)

3、如何用
字符串类型只能:+或者*
msg='hello'
name='egon'

print(msg + name)

name='egon'
print(name * 10)

print(1)
print(2)
print(3)
print('-'*100)
print(1)
print(2)
print(3)


msg1='zaello '
msg2='za'


print(msg2 > msg1)

print('a' > 'Z')
(3)、列表:
1、作用:用来存取放多个值

2、如何定义:在[]内用逗号分隔开多个任意类型的值
l=[1,'a',3.1,[1,3]] #l=list([1,'a',3.1,[1,3]])
print(id(l))
print(type(l))
print(l)
x=111
l=[1,2,x,'a']
print(l)

hobbies=['read','run','basketball']
0 1 2
3、如何用:按照索引取值,索引是从0开始的
print(hobbies[2]) #
print(hobbies)
(4)、字典:
1、作用:用来存取放多个值,按照key:value的方式存放的值,取的时候可以通过key而非索引去取值,key对value是有描述性功能的


2、定义方式:在{}内用逗号分隔开多个元素,每一个元素都是key:value的格式,其中value可以是任意类型,key大多数情况都是字符串类型
'name' 'sex' 'age' 'company_info'
user_info=['egon','male',18,['oldboy','Shanghai',20]]

print(user_info[1])
print(user_info[0])
print(user_info[3][1])
 
(5)、布尔类型:
 
1、作用:用于判断的条件

2、如何定义:True,False
print(10 > 2 and 3 > 14)
print(type(True))

所有的数据类型的值本身就是一种布尔值,即所有的数据类型都可以当作条件去用
在如此多的数据类型中只需要记住:0,None,空,它们三类的布尔值为False
(二)基本运算
print(1 + 2)
x=10
y=20
res=x + y
print(res)

/是有零有整
print(10 / 3)
// 地板除,只取整数部分

print(10 // 3)
print(10 // 4)


% :取余数
print(10 % 3)

print(10 ** 2)


pwd='123'
print(pwd != '123')


列表之间比较大小,仅限于相同位置对应的值是同一类型
l1=[1,'a',3]
l2=[1,3]

print(l2 > l1)

print(10 > 1.1)



age=18

# age+=1 #age=age + 1
# age*=10 #age=age*10
age//=3 #age=age//3
print(age)


重点:
链式赋值
d=10
c=d
b=d
a=d

a=b=c=d=10


交叉赋值
x=100
y=200

temp=x
x=y
y=temp
print(x,y)

x,y=y,x
print(x,y)


变量值的解压缩
l=['egon','asb','wsb']
# x=l[0]
# y=l[1]
# z=l[2]
x,y,z=l

print(x,y,z)

l=['egon','asb','wsb','lsb']
x,y,z,a=l
print(x,y,z,a)
_='lsb'
x,_,z,_=l

print(_)

yj=[11,22,33,44,55,66,77,88,99,100,200,300]
# mon1,mon2,mon3,mon4,mon5,mon6,*_=yj
# print(mon1)
# print(mon2)
# print(mon3)
# print(mon4)
# print(mon5)
# print(mon6)

mon1,mon2,*_,mon11,mon12=yj

print(mon1)
print(mon2)
print(mon11)
print(mon12)


对于字典来收,解压出来的是key
info={'name':'egon','age':18,'sex':'male'}

x,y,z=info
print(x,y,z)




逻辑运算
print(not 10 > 3)

print(10 > 3 and 3 > 2)

print(3 >= 3 and 3 > 2 and 'xxx' != 'egon' and 3 > 2)


print(False or True)
print(3 > 3 or 3 > 2 or 'xxx' != 'egon' or 3 > 2)

print(not 3 > 3 or (not 3 > 2 and 'xxx' == 'egon' or 3 > 2))