一,用户与程序交互
二,基本数据类型
三,格式化输出
四,基本运算符
一,用户与程序交互:
在python3中,input会将用户输入的任何内容都存成字符串类型。
input(“请输入你的姓名:”) #name='egon' 其中的’egon‘存的就是字符串类型。
age=input("age>>:") age='18' #'18'就是字符串
age=input("age>>>:")
print(age,type(age))
结果是 age>>>:18
18 <class 'str'>
#用int()可以把字符串类型转换成数字类型。
age=int(age) #括号里的age就是字符串类型
print(age>11)
例如:
age=input("age>>>:")
age=int(age)
print(age>11)
结果是:age>>>:15
True
二,数据类型
1,什么是数据?
数据即变量的值,如age=18,18则是我们保存的数据
2.什么是数据类型?
变量值才是我们存储的数据,所以数据类型指的是变量值的不同类型。
3.数据类型分类:
二,数字类型
1.整型 int
作用:表示人的年龄,各种号码,等级。
定义:age=18 #age=int(18)
例如:
age=18
print(age,type(age),id(age))
结果是:18 <class 'int'> 1590354976
2.浮点型float
作用:表示身高,体重,薪资
定义:salary=3.1 #salary=float(3.1)
3.字符串类型str
#在python中,加了引号的字符就是字符串类型,python并没有字符类型。
1.作用:表示描述性质的状态,比如人的名字。
2.定义:在单引号或引号或三引号内包含的一串字符。
name='egon' #name=str('egon')
这几个引号的唯一区别是,三引号可以把数据放在多行。
例如: msg='''
alex
egon
wxx
'''
注意点:外面用单引号,里面就用双引号
外面用双引号,里面就用单引号
例如: msg="my name is 'egon'"
3.如何用?
字符串类型只能:+或者*
例如:msg='hello'
name='egon'
print(msg+name) #底仓的意思就是开辟了一个新的空间,把hello和egon放进去。
结果是 helloegon
例如:
name='egon'
print(name*10) #底层意思也是重新开辟新空间。
注意:字符串之间也是可以比大小的(比较的是字符串中首字母的顺序比大小)
例如:msg1='hello'
msg2=z
print(msg1<msg2)
结果是 True #因为z顺序大于h
4.列表list
作用:用来存取多个值
定义:在[]中用逗号分隔开多个任意类型的值。
1=[1,'a',3.1,[1,3]] #1=list([1,'a',3.1,[1,3]])
如何用:按照索引取值,索引从0开始。
例如:取第三个爱好。
hobbies=['read','run','basketball']
print(hobbies[2])
结果是:basketball
例如: 1=['alex','male',['oldboy',200]]
取出200的话,print(1[2][1])
5.字典dict
作用:用来存取多个值,按key:value 的方式存放的值,取得时候可以通过key而非索引去取值。key对value是具有描述性功能的。
定义方式:在{}内用逗号分隔开多哥元素,每一个元素都是key:value的格式,其中value可以是任意类型,key大多是字符串类型。
注意:字典可以套用列表,列表可套用字典(可以相互嵌套)
6.布尔bool
作用:用于判断
定义:True,False
注意:所有的数据类型的值本身就是一种布尔值。
只需要记住在如此多的数据类型中记住:0,None,空它们三类的布尔值为False
四:格式化输出:
程序中经常会有这样场景:要求用户输入信息,然后打印成固定的格式
比如要求用户输入用户名和年龄,然后打印如下格式:
My name is xxx,my age is xxx.
很明显,用逗号进行字符串拼接,只能把用户输入的名字和年龄放到末尾,无法放到指定的xxx位置,而且数字也必须经过str(数字)的转换才能与字符串进行拼接。
这就用到了占位符,如:%s、%d
#%s字符串占位符:可以接收字符串,也可接收数字 print('My name is %s,my age is %s' %('egon',18)) #%d数字占位符:只能接收数字 print('My name is %s,my age is %d' %('egon',18)) print('My name is %s,my age is %d' %('egon','18')) #报错 #接收用户输入,打印成指定格式 name=input('your name: ') age=input('your age: ') #用户输入18,会存成字符串18,无法传给%d print('My name is %s,my age is %s' %(name,age)) #注意: #print('My name is %s,my age is %d' %(name,age)) #age为字符串类型,无法传给%d,所以会报错
注意:%s可以接受任意类型的值
%d只能接受int类型的值。
五,基本运算符
print(10/3) # /是有零有整。
# //地板除,只取整数部分。
print(10//3)--》3
print(10//4)--》2
# %取余数
print(10%3)--》1
print(10**2)--》100 #代表10的2次方。
注意:列表之间比较大小,仅限于相同位置对应的值是同一类型。
赋值运算符:
age=18
age=age+1 #age+=1
print(age) 结果是19
链式赋值:
a=b=c=d=9
x=100
y=200
temp=x
y=temp
print(x,y)--->200 100
交叉赋值:
x=100
y=200
x,y=y,x
print(x,y)-->200 100
变量值的解压缩:
# l=['egon','asb','lsb']
x,y,z=l
print(x,y,z)---->egon,asb,wsb
注意:对于字典来说,解压出来的是key
逻辑运算: and or