python基础之数据类型
python基础之数据类型
数字型(int)
整型
可以用数字来表示的。年龄,号码……
定义
age = 18 # age = int(18)
tel = 18855480890
使用
加减乘除,逻辑判断……
浮点型(float)
表示升高,体重,薪资……
定义
height = 1.88 # height = float(height)
weight = 110
salary = 18.5
使用
加减乘除,逻辑判断……
字符串
表示名字,性别……
定义
字符串就是一串被串起来的字符,在单引号、双引号或三引号内包裹的一串字符。需要注意的是:三引号内的字符可以换行,而单双引号内的字符不行。
name = 'wzh' # name = str(wzh)
gender = "male"
id1 = '''adc
def'''
id2 = """xyz
opq"""
使用
字符串只能+、*和逻辑比较
字符串的拼接,即重新申请一个小空间把两个字符串都拷贝一份后再拼接。而不是你YY的把一个小空间内的变量值复制到另一个变量的小空间内,然后拼接。
s = "nick's hand"
x = ' laji'
print(s+x) # nick's hand laji
print('nick '*3) # nick nick nick
print('nick' == 'shabi') # False
print('n' in 'nick') # True
print('ck' not in 'nick') # False
字符串索引
每个字符串都有索引,从左到右依次从零递增,或从右到左依次从-1递减
s = 'nick shabi'
0123456789
-10-9...-2-1
有了索引,就可以按照索引对字符串进行取值
s = 'nick shabi'
s[0] # n
s[-2] # b
s[:] # nick shabi
s[:4] # nick 顾头不顾尾,末位k取到索引4
s[-5:] # shabi
s[:8:2] # nc h 步长位2,按步长间隔取值
s[::-1] # ibahs kcin 倒序取值
列表
如果现在给我们一个需求,需要我们取出这个人的某个爱好,貌似以我们现在的知识无从下手。这个时候就得改变我们的策略,我们可以换种方法存储一个人的爱好——列表。
作用
存放多个值,如多个女朋友、多个爱好。
定义
在[]内用逗号分隔开任意类型的值。
hobby = 'read'
hobby_list = [hobby, 'run', 'girl'] # 可存取任意类型的数据
print(hobby_list) # ['read', 'run', 'girl']
使用
与字符串同样,列表也有索引值,可利用索引来取值
hobby_list = ['read', 'run', ['girl_name', 18, 'shanghai']]
hobby_list[0] # read
hobby_list[2][1] # 18
字典
作用
用来存取多个值,按照key:value的方式存值,取的时候可以通过key而非索引去取值,key对value具有描述性的作用。存放数据的种类各种各样并且数据较多的时候可以使用字典。
定义
在{}内用逗号分隔开多个元素,每一个元素都是key: value的格式,其中value是任意格式的数据类型,key由于具有描述性的作用,所以key通常是字符串类型。
user_info = {'name': 'nick', 'gender': 'male', 'age': 19,
'company_info': ['oldboy', 'shanghai', 50]}
使用
字典的取值是通过取key值来获取value值
user_info = {'name': 'nick', 'gender': 'male', 'age': 19,
'company_info': ['oldboy', 'shanghai', 50]}
user_info['name'] # nick
user_info['company_info'] # ['oldboy', 'shanghai', 50]
user_info['company_info'][1] # shanghai
在字典中添加键值对
user_info = {'name': 'nick', 'gender': 'male', 'age': 19,
'company_info': ['oldboy', 'shanghai', 50]}
user_info['weight'] = 110
user_info['height'] = 188
for i in user_info.items():
print(i)
# ('name', 'nick')
# ('gender', 'male')
# ('age', 19)
# ('company_info', ['oldboy', 'shanghai', 50])
# ('weight', 110)
# ('height', 188)
布尔值(bool)
作用
用于判断条件结果
定义
True、False通常情况不会直接引用,需要使用逻辑运算得到结果。
使用
print(bool(0)) # False
print(bool('nick')) # True
print(bool(1 > 2)) # False
print(bool(1 == 1)) # True
注意:Python中所有数据类型的值自带布尔值。如此多的数据类型中只需要记住只有0、None、空、False的布尔值为False,其余的为True。
解压缩
解压缩其实就是解包把多个值一次性拿出来
name_list = ['nick', 'egon', 'jason', ]
x, y, z = name_list
print(x, y, z) # nick egon jason
有时候我们解压缩的值可能是我们不想要的,那么可以使用下划线
name_list = ['nick', 'egon', 'jason', 'tank']
x, y, z, a = name_list
print(x,y,z,a) # nick egon jason tank
x, _, z, _ = name_list
print(x,z) # nick jason
x,*_,y = name_list
print(x,y) # nick tank
字典也是可以的,但是字典解压缩的是key。
dic = {'name':'sss','age':123,'height':12312344}
for k,v in lis.items():
print(k,v)
# name sss
# age 123
# height 12312344
与用户交互
用input接受用户输入的值,就是与用户交互
id = 'wzh'
psw = '123'
id_info = input("请输入id:") # 与用户交互,引导用户输入id,psw
psw_info = input("请输入password:")
if id_info == id and psw_info == psw:
print("欢迎登陆!")