栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python入门到精通(三):数据结构第二部分

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python入门到精通(三):数据结构第二部分

一、元组与集合 1.1 元组介绍

特点:

元组也是有序的数据结构(有先后顺序)

可以通过偏移来获取元素

元组是不可变对象(不可直接进行修改)

元组不能进行排序和修改操作(元组中的元素不可修改

定义元组

元组名 = (元素,元素,元素,)

特殊元组

空元组

tuple = (,)           #定义一个空元组

有一个元素的元组

tuple = (1,)        #定义只有一个元素1的元组,必须加逗号否则会定义为一个字符串
1.2元组操作

操作1:从元组中获取数据

tuple = ("tom","jerr","bob","jack") 
#定义一个元组        
name = tuple[0]
#定义变量name中的值为元组tuple索引值为零的元素
print(name)
#输出变量name

操作2:类型转换

有时候我们想要修改元组中的元素需要通过类型转换才能完成

方法:tuple(列表)

tuple1 = ("tom","jerr","bob","jack")
# 定义一个元组
list1 = list(tuple1)
# 将元组转换为列表
list1[0] = "tuoni"
# 将列表索引值为0的元素替换成tuoni
tuple1 = tuple(list1)
# 将列表转换为元组
print(tuple1)
# 输出元组 输出结果为 ('tuoni', 'jerr', 'bob', 'jack')
1.3 集合简介

集合的类别:

不可变集合

可变集合

 

集合的操作

创建集合

添加集合

删除集合

成员关系

交集、差集、并集

去重

1.4 集合的操作

操作1 :创建集合

set()创建的是不可变集合

set_1 = set("tom")
#创建一个不可变集合set_1

frozenset()创建的是可变集合

set_2 = frozenset("jack")
# 创建一个不可变集合set_2

操作2 : 在集合中添加元素

add:将目标作为整体添加到集合中

set_1 = set("tom")
# 创建一个合集
set_1.add("bob")
# 将bob放入合集set_1中
print(set_1)
# 输出结果为{'o', 'm', 't', 'bob'}

update:将目标拆分为一个一个元素添加到集合中

set_1 = set("tom")
# 创建一个合集
set_1.update("jack")
# 将jack放入合集中
print(set_1)
# 输出结果是 {'m', 'o', 'c', 'j', 'k', 'a', 't'}

操作3 :删除合集中的元素

合集名.remove(元素)

set_1 = set("tom")
# 创建合集
set_1.remove("t")
# 删除合集set_1中的"t"
print(set_1)
# 输出内容为{'m', 'o'}

操作4 : 成员关系

innot int

set_1 = set("tom")
# 创建一个集合
if "o" in set_1:
# 判断集合set_1是否有o
   print("集合中有o")
# 有"o"输出集合中有o
else:
   print("集合中没o")
# 没有"o"输出集合中没o

操作5 :交集并集差集

交集

set_1 = set("123456")
set_2 = frozenset("456789")
res = set_1 & set_2
# 获取集合 set_1 和 set_2都有的数字
print(res)
# 输出结果为 {'6', '4', '5'}

并集

set_1 = set("123456")
set_2 = frozenset("456789")
res = set_1 | set_2
# 获取集合set_1 和 set_2 集合中的全部内容,合集会自动去除重复元素
print(res)
# 输出结果是 {'1', '7', '3', '2', '5', '9', '4', '8', '6'}

差集

set_1 = set("123456")
set_2 = frozenset("456789")
res = set_1 - set_2
# 获取集合set_1中有但是set_2中没有的数字
print(res)
# 输出结果是 {'2', '1', '3'}

操作6 :去重

list_1 = [1,2,1,2,3,4,6,8,7,]
# 创建一个列表
s = set(list_1)
# 将列表转换为元组
list_1 = list(s)
# 将元组转换为列表
print(list_1)
# 输出内容是 [1, 2, 3, 4, 6, 7, 8]

元组带有自动去除重复元素的特性

二、字符串 2.1基础特性

字符串支持序列类型的所有基础操作:切片、索引、加法、乘法、

自定义字符串

str = "abc"  #定义字符串

查看数据类型

type(变量名)

str = "abc"
type(str)
# 输出结果为str,表示为字符串类型

l = ["abc"]
print(type(l))
# 输出结果为list,表示为列表类型

t = ("abc",)          
print(type(t))
# 输出结果为tuple,表示为元组类型 


d = {"name":"tom","age":18}
print(type(d))  
# 输出结果为dict,表示为字典类型 


2.2 字符串操作

1.字符串替换

方法:

str.replace("目标","替换结果",[替换几个])

str = "abcabcabc"
str.replace("a","d",2)
# 将str中的"a"替换为"d"替换两个
print(str)
# 输出内容是abcabcabc

2.字符串拼接

方法一:使用+法进行拼接

str = "abc"
str_1 = "abc"
str =str_1 +str

方法2:在输出时使用占位符拼接

str = "hallo "
str_1 = "word"
print("%s%s"%(str,str_1))

方法三:格式化

str = "hallo "
str_1 = "word"
print("{}{}".format(str,str_1))

方法四:结合列表和join方法拼接

str = "hallo "
str_1 = "word"
str_2 =" ".join([str,str_1])
print(str_2)
2.3字符串方法

方法1:find

返回指定的字符在字符串中的索引值

如果字符串中没有这个字符,会返回-1

默认情况下,会从最左侧开始查找,找到第一个字符后,会停止

也可以指定从哪个字符开始查找

格式:str.find("目标",[start])

str = "hallo "
number = str.find("h")
# 在字符串中索引"h"返回值是他的索引值或-1
print(number)

方法2: index

返回指定的字符在字符串中的索引值

如果字符串中没有这个字符,会抛出异常

默认情况下,会从最左侧开始查找,找到第一个字符后,会停止

也可以指定从哪个字符开始查找

格式:str.index("目标",[start]) 

str = "hallo "
number = str.index("h")
# 在字符串中索引"h"返回值是他的索引值或抛出异常
print(number)

 

方法3:join方法

用于将列表中的元素拼接字符串

列表中的元素必须全部都是字符串类型,否则报错

格式:"+".join(列表)

list_1 = ["h","a","l","l","o"]
str = "".join(list_1)
# 拼接列表元素
print(str)
# 输出内容为 hallo

 

方法4:大小写转换

lower:将内容全部转换为小写

userinput = input("").lower()
# 将用户输入转换为小写

upper:将内容全部转换为大写

userinput = input("").upper
# 将用户输入全部转换为大写

title:将开头第一个字母转换为大写,其他全部都自动转换为小写

userinput = input("").title()
# 将用户输入的第一个字符转换为大写其余转换为小写

 

方法5:split方法

作用:将字符串转换为列表

split方法可以指定用哪个字符对字符串进行切割

str = "i love linux and pyhon"
str = str.split(" ")
# 指定用空格字符对字符串进行切割
print(str)
# 输出内容为 ['i', 'love', 'linux', 'and', 'pyhon']

方法6:strip

去除字符串两侧的空格

userinput =input("").strip
# 删除用户输入内容两侧的空格

 方法7:判断

 isinstance(变量名,变量类型)

# 如果变量和类型一致,则返回真;否则返回假

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/767757.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号