Day 04 数据类型/解压缩/与用户交互/三种格式化

花式赋值

一、链式赋值

a = 10
b = 10
c = 10
d = 10
print(f'a:{a}, b:{b}, c:{c}, d:{d}')

a = b = c = 10
print(f'a:{a}, b:{b}, c:{c}, d:{d}')

两种赋值效果相同

二、交叉赋值

x = 100
y = 200

temp = x
x = y
y = temp
print(f'x:{x}')
print(f'y:{y}')

x = 200

y = 100

x, y = y, x
print(f'x:{x}')
print(f'y:{y}')

x = 200

y = 100

数据类型

列表

作用

存放多个值

定义

在[]内用逗号分隔开任意类型的值。

hobby = 'read'
hobby_list = [hobby, 'run', 'girl']
print(id(hobby_list))
print(type(hobby_list))
print(hobby_list)

4558605960
<class 'list'>
['read', 'run', 'girl']

使用

存不是目的,取才是目的,我们介绍列表索引取值的方法,牢记索引序号从0开始。

hobby_list = ['read', 'run', 'girl']
# 索引序号      0       1      2
# 取出第二个爱好
print(hobby_list[1])

run

hobby_list = ['read', 'run', ['girl_name', 18, 'shanghai']]
# 取出girl的年龄
print(hobby_list[2][1])

18

字典

作用

用来存取多个值,按照key:value的方式存值,取的时候可以通过key而非索引去取值,key对value具有描述性的作用。存放数据的种类各种各样并且数据较多的时候可以使用字典

定义

在{}内用逗号分隔开多个元素,每一个元素都是key: value的格式,其中value是任意格式的数据类型,key由于具有描述性的作用,所以key通常是字符串类型

使用

字典取值方式不再依赖于索引,而是依赖于key,通过[key]即可获取key对应的value值

# 字典套列表
user_info = {'name': 'Tiny', 'gender': 'male', 'age': 19,
             'company_info': ['oldboy', 'shanghai', 50]}
print(user_info['name'])
print(user_info['company_info'][0])

Tiny

oldboy

布尔类型

作用

用于判断条件结果

定义

True、False一般不会直接引用,需要使用逻辑判断得到结果

使用

print(type(True))
print(True)

<class 'bool'>
True

print(bool(0))
print(bool('0'))
print(bool(1 > 2))
print(bool(1 == 1))

False
True
False
True

注意:Python中所有数据类型的值自带布尔值。如此多的数据类型中只需要记住只有0、None、空、False的布尔值为False,其余的为True。

print(bool(0))
print(bool(''))
print(bool(None))
print(bool([]))
print(bool({}))
print(bool(False))

False
False
False
False
False
False

解压缩

除了正常的取值方法外,还可以用解压缩的方法来取值

lis = [1, 2, 3]
x, y, z = lis
print(x, y, z)

效果:1 2 3

如果我们不需要列表中的某一个元素,可以用下划线(_)来代替

lis = [1, 2, 3, 4]
x, y, z, _ = lis
print(x, y, z)

效果:1 2 3

如果我们要去中间或头尾的一部分,可以用*号

lis = [1, 2, 3, 4]
x, *y, z = lis
print(x, y, z)

效果:1 [2, 3] 4

python与用户的交互

name = input('请输入你的姓名:')
pwd = input('请输入你的密码:')

print(type(name))
print(type(pwd))

请输入你的姓名:nick
请输入你的密码:123
<class 'str'>
<class 'str'>

注意:无论我们输入的值是数字类型、字符串类型、列表类型,input的接收值都是字符串类型。

python打印的三种格式

f-string格式

name = 'Tiny'
age = 24
print(f'name:{name}, age:{age}')

%占位符

name = 'Tiny'
age = 24
print('name:%s, age:%d' % (name, age))

format格式化

name = 'Tiny'
age = 24
print('name:{}, age:{}'.format(name, age)) # {}里可以加入变量名的索引值
原文地址:https://www.cnblogs.com/2222bai/p/11498377.html