天天看点

数据类型和字符编码1.数据类型

首先,我们需要了解到什么是数据?

数据就是我们需要的信息取出来,那不存怎么取呢?所以我们先要学习的是怎么存数据

,既然要存数据,我们不能把所有的数据存成一样的格式,我们做文件的时候,还得有word,excel,ppt…

1.数据类型

数字(整形,长整型,浮点型,复数)

字符串

列表

元组

集合

字典

1.1 数字(整型和浮点型)

整形int

作用:年龄 身份证号 等和整数相关的

定义:

age=18

浮点型float

作用:薪资, 身高,体重参数等浮点数相关的

salary=3000.3

1.2 字符串

作用:名字,性别,地址等

定义:在单引号、双引号(三引号)内,由一串字符串组成

name=“jack”

内置函数(掌握):

按索引取值

字符串的切片

计算长度(len)

成员运算(in not in)

移除空白(strip)

切分(split)

循环

str= 'hello world youyong and youyongit          '
 #  python默认带索引的,索引值都是从0开始
print(str[0])
#  字符串可以直接切片取值[起始索引位置:结束索引位置:步长]
print(str[1:15:2])
# len(str) 直接可以看到这个字符串到底有多长
print(len(str))
# 判断字符串是否在后面的字符串里面存在
print(’hello‘ in str)
print(‘hello‘ not in str)
# 把字符串左右两边的空格删除(一般在输入的时候使用)
print(str.strip())
# 把字符串切开,按照空格切(不包含空格)
print(str.split(' '))
# 可以循环依次取出字符串的字母
for i in str:
    print(i)
           

注意:字符串有很多中内置函数,这里只罗列了一点常用的,下面的联系题不仅可以参考以上方式,还可以百度一下其他的方式哦!

练习题:

# 写代码,有如下变量,请按照要求实现每个功能 (共6分,每小题各0.5分)
name = " Jack    "
# 1)    移除 name 变量对应的值两边的空格,并输出处理结果
# 2)    判断 name 变量对应的值是否以 "Ja" 开头,并输出结果
# 3)    判断 name 变量对应的值是否以 "k" 结尾,并输出结果

# 4)    将 name 变量对应的值中的 “k” 替换为 “p”,并输出结果
# 5)    将 name 变量对应的值根据 “a” 分割,并输出结果。
# 6)    将 name 变量对应的值变大写,并输出结果

# 7)    将 name 变量对应的值变小写,并输出结果
# 8)    请输出 name 变量对应的值的第 2 个字符?
# 9)    请输出 name 变量对应的值的前 3 个字符?

# 10)    请输出 name 变量对应的值的后 2 个字符?
# 11)    请输出 name 变量对应的值中 “c” 所在索引位置?
# 12)    获取子序列,去掉最后一个字符。如: name 则获取 nam。
           

1.3 列表

作用:多个类似的东西放在一起,比如:对个乒乓球,多个学生,多个帽子,多个女朋友等

定义:[]内可以有多个任意类型的值,逗号分隔

my_girl_friend = [‘lily’,‘Alice’,‘Sunny’]

内置函数(掌握):

按索引存取值

切片

长度

成员运算

追加写

删除

循环

l = [1,2,3,4,5,6]
# 正向步长(顾头不顾尾)
print(l[0:3:1])
# 反向步长
print(l[2::-1])
# 列表翻转
print(l[::-1])
print(len(l))
# 成员运算in和not in 与字符串的用法一致
l.append(7)
print(l)
# 列表的删除
l.pop()
print(l)
# 列表的循环,结果是每一个元素,不是元素李曼的值
for i in l:
    print(i)
           

1.4 元组

元组和列表类似,唯一不同的是,列表可变,元组不可变

可以把列表的用法放在元组这里(不过只能查看,不能增删改操作)

1.5 字典

作用:存在多个值键值对存放,key-value存取,取值速度快

定义:key必须是不可变类型,value可以是任意类型

info = {“name”:“jack”,“age”:18,“sex”:“male”}

内置函数(可掌握):

按key存取值:可存可取

长度len

成员运算in和not in

删除值

循环 keys() values() 键值对items()

info = {"name":"jack","age":18,"sex":"male"}
# 字典的取值(存在的值)
print(info["name"])
# 字典取不存在的值然后直接赋值,就相当于给字典增加值
info['heigh']=175
# 判断字典的键值对的长度
print(len(info))
# 判断值是否在字典中(key值)
print('name' in info)
# 删除字典里面的值
del info['name']
# 循环取出字典里面的value
for i in info.values():
    print(i)
# 循环取出字典里面的key值
for i in info.keys():
    print(i)
# 循环取出字典里面的键值对
for i in info.items():
    print(i)
           

1.6 集合

作用:去重 关系运算

定义:用{}包裹,可以包含多个元素,用逗号分割

集合的元素遵循三个原则:

1,每个元素必须是不可变类型

2,没有重复的元素

3,无序(数字有序,其他无序)

需要掌握的几个内置方法:

|合集

&交集

-差集

^对称差集

父集:>,>= 
    子集:<,<=   
           
有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合
  pythons={'jack','lily','xiaoming','xiaozhang','gangdan'}
  linuxs={'xiaowu','xiaonan','gangdan'}
  1. 求出即报名python又报名linux课程的学员名字集合
  2. 求出所有报名的学生名字集合
  3. 求出只报名python课程的学员名字
  4. 求出没有同时这两门课程的学员名字集合

# 有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合
pythons={'jack','lily','xiaoming','xiaozhang','gangdan'}
linuxs={'xiaowu','xiaonan','gangdan'}
# 求出即报名python又报名linux课程的学员名字集合
print(pythons & linuxs)
# 求出所有报名的学生名字集合
print(pythons | linuxs)
# 求出只报名python课程的学员名字
print(pythons - linuxs)
# 求出没有同时这两门课程的学员名字集合
print(pythons ^ linuxs)
           
数据类型和字符编码1.数据类型
数据类型和字符编码1.数据类型