Python基本数据类型,用户交互,格式化输出,运算符,多种赋值方式,多种运算符
一、Python基本数据类型
1.回顾之前学过的基本数据类型
1.整型(整数)
应用场景:年级,班级人数,年份
代码实现:
age = 18
表达关键字:int
2.浮点型(小数)
应用场景:薪资,身高,体重
代码实现:
height:1.83
表达关键字:float
3.字符串(文本)
应用场景:姓名,地址,爱好
代码实现:
name = 'jia'
表达关键字:str
4.列表(存储多个数据值)
应用场景:存储多个数据值,将来可能要取其中的一些出来
代码实现:
list = [1, 2, 3, 4]
表达关键字:list
5.字典(能够非常精确地存储和表达数据值的含义)
dict = {
'username' = 'jia',
'age' = 18,
'hobby' = 'read',
}
大括号括起来,内部可以存放数据,数据的组织形式是K:v键值对
表达关键字:dict
2.数据类型之布尔(bool)
1.布尔(用来判断事物的对错,是否可行,只用于流程控制中)
状态: True 对的 可行的 真的
False 错的 不可行的 假的
2.python中所有的数据都自带布尔值
布尔值为False的数据 : 0,none,'',[],{}
布尔值为True的数据 : 除上面五个,其他数据的布尔值都是True
3.存储布尔值的变量名一般推荐使用is开头
eg:
is_right = True
is_left = False
布尔值最简单,最常见,也是程序中最多,也是使用频率最高的
4.关键表达字:bool
3.数据类型之元组(tuple)
1.元组也称为“不可变的列表”,元组与列表相似,不同之处就是元组的元素不能被修改(元组内索引绑定的数据地址不能被改变)
2.元组的表达:
用小括号括起来,内部存放多个数据值,其中数据值可以是任何数据类型,内部多个数据值与数据值之间用逗号隔开
3.代码实现: t1 = (1, 2, 'jia')
4.元组与列表的区别:
(1). 元组的数据不能被改变
(2). 列表表达使用的是[],元组表达使用的是()
(3). 列表属于可变类型,元组属于不可变类型
5.列子
l1 = [22, 33, 34]
l2 = (11, 22, 33)
l1[0] = 99 # 将列表索引0重新绑定新的数据值
print(l1) # [99, 33, 34]
l2[0] = 999 # 将列表索引0重新绑定新的数据值,报错,元组内绑定的数据地址不能改 变
print(l2)
6.注意点:在使用可以存放多个数据值的数据类型时,如果元组内只有一个数据值时,建议在数据值后面加上逗号
7.表达关键字:tuple
4.数据类型之集合(set)
1.集合用于去重和关系运算
去重:去除重复的数据
关系运算:判断两个集合之间的数据值的关系
2.集合内的数据是不可变数据
3,用大括号括起来,可以存放多个数据值,数据值与数据值之间用逗号隔开,数据值的类型不是k:v键值对
4.代码实现:
s1 = {1, 2, 3, 4, 5}
5.定义空集合
a = {} # 大括号默认看成字典
b = {}
print(type(a)) # dict
print(type(b)) # dict
c = set() #必须使用关键字才能定义空集合
print(type(c)) # set
6.表达关键字:set
二、与用户交互
1.输入 (input) # 获取用户输入的信息
eg:
username = input("请输入您的个人信息")
print(username)
'''
1.先获取用户输入的信息
2.再将数值赋值给左边的username
3.之后通过username使用用户传入的数据
4.input获取 到的数据都会统一处理成字符串类型
'''
2.输出(print)
print() # 打印数据值
print(name) # 括号内可以放数据值也可以放变量名
print(s1, s2, s3) # 括号内可以放多个变量名或者数据值
'''
换行符:\r\n \n \r
最早的换行是\r\n
print可以切换结束符
print(数据,end='默认是\n')
'''
3.额外的知识点:
python2和python3输入与输出的区别
python2:
输入:需要用户提前指定数据类型,不接受字符串的输入
输出:print 数据值 或者 print(数据值)
Python3:
输入:接受到的数值不能直接进行大小比较
输出:只能这样print(数据值)
三、格式化输出
在程序中想要占位就要用占位符
info = 'xxx您好,您xxx月的话费是xxx,余额是xxxx'
方法1:%s
支持所有的数据类型
'''
# info1 = '%s您好,您%s月的话费是%s,余额是%s'
# print(info1 % ('王女士', 3, 500, 300))
'''
方法2:%d
只支持数字占位
'''
# info1 = '%d您好,您%d月的话费是%d,余额是%d' # %d只支持数字占位
# print(info1 % ('王女士', 3, 500, 300))
'''
可产生固定数位的数据:
# print('%4d' % 22) # 0022
四、基本运算符
1.数学运算符:
eg: x = 1
加 + += # x += 10 x = x + 10
减 - -= # x -= 10 x = x - 10
乘 * *= # x *= 10 x = x * 10
除 / /= # x /= 10 x = x / 10
取余 % %= # x % =10 x = x % 10
幂指数 ** **= # x ** = 10 x = x ** 10
2.比较运算符
< > >= <= == !=
五、常用赋值符
1.链式赋值
eg:
x = 1
y = x
z = y
x = y = z = 1
2.交叉赋值
eg: 将x与y的值互换
(1). x = 1
y = 2
temp = x
x = y
y = temp
print(m,n)
(2). x = 1
y = 2
m, n = n, m
print(m,n)
3.解压赋值
num = [1, 2, 3, 4]
num1, num2, num3, num4 = num
# 解压赋值在使用时,正常情况下需要保证左边变量名与右边数据值的个数一致
eg:
当解压的数据个数特别多的时候,我们只需要几个的时候,我们可以用*接收多余的数据
num = [1, 2, 3, 4, 5]
a, b, *_ = num
print(a) # 1
print(b) # 2
六、逻辑运算符
逻辑运算符主要搭配条件一起使用
1.and 与
and连接的多个条件必须全部成立,结果才能成立
如果需要你准确的说出具体的结果值 那么需要按照下列方式:
如果and左边的条件是成立的 那么就完全取决于右边的条件
右边如果直接是数据值 那么结果就是该数据值 如果是含有表达式 则为布尔值
2.or 或者
or连接的多个条件主要有一个成立,结果就成立
准确的说出具体的结果值方法同and
3.not 非
not 取反
三者混合使用的时候有优先级之分,我们可以通过括号来辨别他们的优先级
七、成员运算符
判断个体在不在群体里面
in 是否包含条件
not in 是否不包括条件
eg:
# name_list = ['tom', 'keni', 'jia']
# print('jia' in name_list) # True
# print('nom' not in name_list) #True
八、身份运算符
id() 返回一串数字,该数字可以查看内存地址
is 判断内存地址是否相同
== 判断数据值是否相同
eg:
l1 = [11, 22, 33, 44, 55]
l2 = [11, 22, 33, 44, 55]
print(l1 == l2) #True
print(l1 is l2) #False
补充:
值相等,内存地址可能不同
内存地址相同,值肯定不同
九、作业
1.获取用户输入并打印成下列格式
------------ info of Jason -----------
Name : Jason
Age : 18
Sex : male
Job : Teacher
---------------- end -----------------
方法1:
print('------------ info of Jason -----------')
Name = input('Name:')
Age = input('Age:')
Sex = input('Sex:')
Job = input('Job:')
print('------------ end -----------')
方法2:
Name = input('请输入您的姓名:')
Age = input('请输入您的年龄:')
Sex = input('请输入您的性别:')
Job = input('请输入您的职业:')
print('------------ info of Jason -----------')
print('Name:' + Name)
print('Age:' + Age)
print('Sex:' + Sex)
print('Job:' + Job)
print('------------ end -----------')


2.准备说出下列变量名v绑定的结果
v1 = 1 or 3
v2 = 1 and 3
v3 = 0 and 2 and 1
v4 = 0 and 2 or 1
v5 = 0 and 2 or 1 or 4
v6 = 0 or False and 1
结果:
v1 = 1 or 3 ==> 1
v2 = 1 and 3 ==> 3
v3 = 0 and 2 and 1 ==> 0
v4 = 0 and 2 or 1 ==> 1
v5 = 0 and 2 or 1 or 4 ==> 1
v6 = 0 or False and 1 ==> False