ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python 中的str、list和dict的常用知识点

2019-09-19 10:43:01  阅读:264  来源: 互联网

标签:白骨精 知识点 stus Python 沙和尚 list str print


str、list和dict都是python中常用的几种数据类型

 

一、str

str = 'python'
# print(a:b:c) #从a开始,b结束,步长是c
print(str[0])  # p
print(str[2])  # t
print(str[0:0])  # 空
print(str[1:4])  # 返回序列s中从s[a]到s[b-1]的片段 yth
print(str[-1])  # n
print(str[::-1])  # nohtyp
print(str * 2)  # pythonpython
print(str+'a')#pythona

  str.find(...)  返回子串的位置

str = 'python'
print(str.find('tho'))  # 2
print(str.find('th'))  # 2

  find的用法和index的用法一样,index('str1',int),int可以不写,查到第几个str1。

当str1 不存在的时候,index()返回一个错误,find返回一个-1

  str.replace(a,b)

str = 'python'
print(str.replace('y','s'))#psthon

2、str转成list形式

str_0   = "abc"
list_1 = list(str_0)
print("字符串转列表:", list_1, type(list_1))
#字符串转列表: ['a', 'b', 'c'] <class 'list'>

 

二、list

 

       del   del语句后面加的是list[index],不是值也不是索引

  ls.append()  返回值是None

  ls.count(...)  计某一值出现的次数

  ls.extend(another_ls)  将两个列表合并

  ls.index(value)  获取某个值的索引

  ls.insert(index,value)  在某个地方插入值

  ls.pop()  不加参数默认pop掉最后一个元素并且返回其值

  ls.remove(..)  去除从左到右第一个匹配到的值,如果没找到报错

  ls.reverse()  返回None,对ls本身反序

  ls.sort()  返回None,对ls本身排序

stus_list = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精']
print(stus_list[0])  # 孙悟空
print(stus_list[0:0])  # []
print(stus_list[1:3])  # ['猪八戒', '沙和尚']
print(stus_list[::-1])  # ['白骨精', '唐僧', '沙和尚', '猪八戒', '孙悟空']
print(stus_list * 2)# ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精', '孙悟空', '猪八戒', '沙        和尚', '唐僧', '白骨精']


 

 

extend与append

 

stus_list.append('观音菩萨')  # 追加
# ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精', '观音菩萨']
print(stus_list)

stus_list.extend(['金角', '银角'])  # 拓展
# ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精', '金角', '银角']
print(stus_list)

stus_list = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精']
stus_list.extend('python')  # 将字符串添加到list
# ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精', 'p', 'y', 't', 'h', 'o', 'n']
print(stus_list)

stus_list.extend({"k1": "v1", "k2": "v2"}) # 添加字典
# ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精', 'k1', 'k2']
print(stus_list)

 

  注:扩展extend与追加append的区别:

               extend为将数据类型的元素分解添加至列表内.

               append为添加将元素作为一个整体添加.

#['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精', 'hello', 'world']
stus_list.extend(["hello","world"])
# ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精', ['hello', 'world']]
stus_list.append(["hello", "world"])

 

元素的插入insert

stus_list = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精']
stus_list.insert(1, 'python')#索引从0开始,即第二个
# ['孙悟空', 'python', '猪八戒', '沙和尚', '唐僧', '白骨精']
print(stus_list)
pop()--取出,可将取出的值作为字符串赋予另外一个变量,即有返回值
stus_list = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精']
p_list = stus_list.pop(1)
print(stus_list)  # ['孙悟空', '沙和尚', '唐僧', '白骨精']
print(p_list, type(p_list))  # 猪八戒 <class 'str'>

remove()-->移除、del -->删除

stus_list = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精']
del stus_list[1]  # ['孙悟空', '沙和尚', '唐僧', '白骨精']
stus_list.remove("孙悟空")  # ['猪八戒', '沙和尚', '唐僧', '白骨精']
print(stus_list)

sorted()-->排序,默认正序,加入reverse =True,则表示倒序,不做解释了

 

 

list转换成str

stus_list = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精']
str1 = "".join(stus_list)  # 孙悟空猪八戒沙和尚唐僧白骨精
print(str1)
str2 = str(stus_list)  # ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精'] <class 'str'>
print(str2, type(str2))

list转成dict

stus_list = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '白骨精']
stus_list2 = ['a', 'b', 'c', 'd', 'e']
d = dict(zip(stus_list, stus_list2))
# {'孙悟空': 'a', '猪八戒': 'b', '沙和尚': 'c', '唐僧': 'd', '白骨精': 'e'} <class 'dict'>
print(d, type(d))

还有就是用循环转换,这里不做解释了。

 

三、dict

字典的遍历

csdn_dict = {
    "name": "阳阳",
    "age": 22,
    "email": "1943374299@qq.com"
}
# 键的遍历
for k in csdn_dict:
    print(k)
# name
# # age
# # email
print(csdn_dict.keys())
# dict_keys(['name', 'age', 'email'])
print(csdn_dict.values())
# dict_values(['阳阳', 22, '1943374299@qq.com'])
print(csdn_dict.items())
# dict_items([('name', '阳阳'), ('age', 22), ('email', '1943374299@qq.com')])

 

dict转换成list

str3 = str(csdn_dict)
# {'name': '阳阳', 'age': 22, 'email': '1943374299@qq.com'} <class 'str'>
print(str3, type(str3))

dict转化成list

list_key = list(csdn_dict)  # keys转换成list
# ['name', 'age', 'email'] <class 'list'>
print(list_key, type(list_key))

list_value=list(csdn_dict.values())
#['阳阳', 22, '1943374299@qq.com'] <class 'list'>
print(list_value,type(list_value))

 

标签:白骨精,知识点,stus,Python,沙和尚,list,str,print
来源: https://blog.csdn.net/qq_42164596/article/details/101009851

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有