基本数据类型



今日内容概要
基本数据类型值整型
- 本质其实就是整数
主要应用年龄、人数、年份...
#关键字int
age = 18
year = 2022
直接输入整数即可
基本数据类型之浮点型
#关键字float
#应用体重、身高、薪资待遇
wegith = 65.5
height = 1.78
salary = 22.2
直接输入小数即可
- ps:tab缩进 shift+tab回退
基本数据类型之列表
#关键字list
能够存储多个数据 并且能够方便的获取整体或者局部
基本使用:
list = [123,321,222]
#用中括号将数据扩起来,内部存放数据值用逗号隔开,数据值可以是任何数据类型
#索引取值
List = [1,2,'boy','girl']
# list = [123,321,222]
# #用中括号将数据扩起来,括号内可以是任何数据
#
# #使用索引取值可以将列表中数据取出
# print(list[1][2])
练习题利用索引取出老六
L1 = [1,2,'boy','girl',['阿三', '老六']]
#方式一
l2 = L1[4]
l3 = l2[1]
print(l3)
#方式二
print(L1[4][1])
#通过索引将第一元素与第三元素取出
mylist = ['apple','guitar','shirt']
print(mylist[0],mylist[2])
#索引时括号内需将变量名加上
mylist = ['apple','guitar','shirt']
print(mylist[0],[2])“错误示范”
基本数据类型之字典
#关键字dict
- 本质
能够存储多个数据,并且方便获取全部或者局部数据,并对数据有明确解释 - 使用
- info_dict =
- 大括号括起来,内部可以存放多组数据,数据组织形式采用k:v键值对
- k是对v描述性性质的信息,一般是字符串
- v是真实的数据,可以是任何数据类型
- 按k取值
- info_dict =
字典取值:字典无法索引取指,(因为字典是无序的),可以使用按k取值
print(info_dict['age']) # 18
print(info_dict['name']) # MR_black
print(info_dict['add']) # shanghai
#如果数据不存在直接报错
- 取值练习题
'''单纯为了练习取值操作而已'''
data = {'name': 'jason','others': [111, 222,{ 'a1': '嘿嘿', 'a2': '哈哈', 'a3': [ 123,{'name': 'jason1', 'age': 18 }]}]}
#取出18
#方式一
l1 = data['others'] # [111, 222,{ 'a1': '嘿嘿', 'a2': '哈哈', 'a3': [ 123,{'name': 'jason1', 'age': 18 }]}]
l3 = l1[2] # { 'a1': '嘿嘿', 'a2': '哈哈', 'a3': [ 123,{'name': 'jason1', 'age': 18 }]}
l4 = l3['a3'] # [ 123,{'name': 'jason1', 'age': 18 }]
l5 = l4[1] # {'name': 'jason1', 'age': 18 }
print(l5['age']) # 18
#方式二可一步完成等同上述操作
print(data['others'][2]['a3'][1]['age'])
一步一步拆分
基本数据类型之布尔值
#关键字bool
1.本质用来表述事物是否可行、是否正确、是否合理。
一共就两个值
2.基本使用
print(bool(输入数据))
is_right = True # 真的、可行、正确 is_delete = Flase # 错、不可行、不正确
3.详细介绍
布尔值看似很简单,很少见,其实在程序中是最多的,使用频率也是最高的
#存布尔值的名字一般使用is开头(君子协定)
4.布尔值的类型转换
程序中所有的数据类型都可转成布尔值
布尔值为False的数据有0 None 空字符串 空列表 空字典 ...
print(bool(None)) # False
print(bool([])) # False
print(bool([])) # False
print(bool(0)) # False
除以上述之外其他数据都为True
print(bool("输入数据")) # True
基本数据类型之元组
#关键字(tuple)
1.本质
"""能够存储多个数据,并且能够方便取出局部或全部
与列表的区别元祖不能“直接修改”数据值而列表可以
故元祖又称为>>>: 不可变列表"""
2.作用
"""一般用来存储一些只能看不能改的数据"""
3.基本使用
l1=(1, 2, 3, 'boy', 'girl', ['列表'], {'字典'})
小括号括起来内部可以存放数据值,数据值与数据值间以逗号隔开,数据值可以是任意类型
与列表对比
l1=(1, 2, 3)
t1=[1, 2, 3]
t1=[1, 2, 3]
t1[0] = "name"
print(t1) # ['name', 2, 3]
l1=(1, 2, 3)
l1[2] = "kiven" # 将元组索引[2]修改直接报错
print(l1) # 报错'tuple' object does not support item assignment
基本数据类型之集合
#关键词(set)
1.集合只用于去重和关系运算
去重:自动去除重复的数据
关系运算:判断两个集合之间数据的
(共同好友、共同点赞)
2.基本使用
s = {1, 2, 3, 4, 5}
3.定义空集合
d1 = {}
d2 = {}
print(type(d1)) # dict默认定义词典
print(type(d2)) # dict
#使用关键词set
d1 = set({})
d2 = set({})
print(type(d1)) # set
print(type(d2)) # set
与用户交互
1.输入
向计算机传递信息
input()#获取用户输入
name = input('输入用户名>>>:')
password = input("请输入密码>>>:")
以下为扩展
while True:
name = input('输入用户名>>>:')
password = input("请输入密码>>>:")
if name == '唐忠明' and password == 'tzm1314520':
print('密码正确,登陆成功')
break
else:
print('密码错误,登陆失败,请重新输入')
#input获取到的用户输入都会转为字符串类型
2.输出
print() # 打印数据值
print(123) # 括号里可以直接放数据值
age = 18
print(age)
name = 'nubi'
print(name) # 也可放人名
name = ['jason', 'kiven', 'tony', 'sidiwen'] # 也可一次性打印多份
print(name[1],name[2],name[3],name[0])
ps:"""
换行符:\n \r \r\n
最早起的换行是 \r\n
后面简化成了 \n \r(不同的操作系统可能会有变化)
不用版本的解释器
python3.X print()
python2.X print
"""
格式化输出
- info="亲爱的xxx你好!你xxx月的话费是xxx,余额是xxx"
'''在python如果想要占位,需使用占位符'''
1.百分号s
"""%s支持所有数据替换(以后我们用的最多的就是%s)"""
info = '亲爱的%s你好!你%s月的话费是%s,余额是%s'
info = '亲爱的%s你好!你%s月的话费是%s,余额是%s'
print(info% ('kiven',6,100,999999))
print(info % ('jason', 5, 100, 999999999999))
# 使用打印括号info关键字加%括号将要替换的数据值放入,数据值中间用逗号隔开
2.百分号d
只支持给数字占位
info2 = "亲爱的%d你好!你%d月的话费是%d,余额是%d"
print(info2 % (123, 5, 100, 999999999999))
info2 = "亲爱的%d你好!你%d月的话费是%d,余额是%d"
print(info2% (123, 3, 4, 5))
'''产生固定位数的数据(总共9位 不够则使用0填充)'''
print('%09d' %234) # 000000234
基本运算符
1.算数运算符
加 +
减 -
乘 *
除 \
整除 \\
取模 %
幂指数 **(次方)
#变种情况
'''作为IT老油条:能少敲一个字母就绝不多敲!!!'''
x=10
x = x+10 x += 10
x = x-10 x -= 10
x = x*10 x *= 10
x = x\10 x \= 10
2.比较运算符
大于 >
小于 <
等于 ==
不等于 !=
多种赋值符号
"""都是为了偷懒!!!"""
x=10
y=10
z=10
#链式赋值
x=y=z=10
m=999
k=10
让m绑定n绑定的数据值 让n帮忙m绑定的数据值
利用中间变量
z=m
m=k
k=z
#交叉赋值
m,k=k,m
#解压赋值
name_list = ['jason', 'tony', 'kevin']
#方式一
name1 = name_list[0]
name2 = name_list[1]
name3 = name_list[2]
print(name3,name2,name1)
#方式二
name1, name2, name3 = name_list
print(name3,name2,name1)
上述操作需要保证左边的名字和右边的数据值 个数一致,且需要两个以上才能称之为解压赋值
#a, b = name_list
# a, b, c, d, e = name_list
l1 = [11, 22, 33, 44, 55, 66, 77, 88, 99]
a,*b,c =l1 # 使用*在解压赋值的时候会自动将多余的数据值组织成列表赋值给*号后面的变量名
a, b, c, *d = l1
print(a,b,c,d)
作业
1.获取用户信息并打印出下列格式
------------ info of XXX -----------
Name : XXX
Age : XXX
gender : XXX
Job : XXX
------------- end -----------------
2.自行研究输入输出在python2和python3中的区别
3.整理今日内容及博客(作业一并写在博客最后)
作业:
input("name>>>:")
input("Age >>>:")
input("gender>>>:")
input("Job>>>:")
#1.格式化输出提前准备好所需要替换的文本,将所需要替换的数据用占位符%s代替(文本可使用单引号双引号三引号括起)
info = """------------ info of %s -----------
Name : %s
Age : %s
gender : %s
Job : %s
------------- end -----------------"""
#2.获取用户输入,用变量名绑定用户输入的数据值,用户输入的所有数据值都会转换成字符串类型
name = input("plase input your username>>>:")
age = input("plase input your age>>>:")
gender = input("plase input your gender>>>:")
job = input("plase input your job>>>:")
#3.格式化输出用户所输入的数据,文本中用了几个展位符输出时就需要几个数据来代替否则直接报错。
print(info %(name, name, age, gender, job))
2.自行研究输入输出在python2和python3中的区别
1.输入
- python3中只有一个input() 并且都会转换为字符串
- python2中有两种获取用户输入的方法
input()
输入什么就是什么,输入的数据必须加入直接的数据特征
name = input('username>>>:')
username>>>:'231' # 字符串
type(name)
<type 'str'>
- raw_input()等同与python3中的input可将数据类型转为字符串
name = raw_input('plase input your name>>>:')
plase input your name>>>:josan
type(name)
<type 'str'>
2.输出
- python3中只有一种输出方式print()
- python2有两种输出方式:print、print()
![image]()


浙公网安备 33010602011771号