python list转string_基础|Python常用知识点汇总(中)

e144528e5408f4d846885395ceb6c480.gif

字符串 字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。 1.创建字符串

str1 = 'Hello World!'
str2 = "Hello World!"

2.访问字符串

str = "菜J学Python"
print(str)
print(str[0])
print(str[0:3])
print(str[1:7:2]) #[起始位置:结束位置:步进值]
print(str[:5])
print(str[5:])

3.连接字符串

print(str + ",你好") #字符串连接,使用+
print(str * 5) #连续打印5次

4.字符串转义符

当需要在字符中使用特殊字符时,Python用反斜杠 \ 转义字符。

常用转义字符描述
\(在行尾时)续行符
\'单引号
\"‍‍‍‍双引号
\n‍‍换行
\t横向制表符

5.字符串运算符

常用运算符描述
+字符串连接
*重复输出字符串
[]通过索引获取字符串中字符
[ : ]截取字符串中的一部分
in成员运算符 - 如果字符串中包含给定的字符返回 True
not in成员运算符 - 如果字符串中不包含给定的字符返回 True

5.格式化字符串

常用符号描述
%s格式化字符串
%d格式化整数
%c格式化字符及其ASCII码

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。

6.字符串内建函数

常用方法描述
string.count(str, beg=0, end=len(string))返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数
string.endswith(obj, beg=0, end=len(string))检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.
string.decode(encoding='UTF-8', errors='strict')以 encoding 指定的编码格式解码 string,如果出错默认报一个 ValueError 的 异 常 , 除非 errors 指 定 的 是 'ignore' 或 者'replace'‍‍‍
string.encode(encoding='UTF-8', errors='strict')以 encoding 指定的编码格式编码 string,如果出错默认报一个ValueError 的异常,除非 errors 指定的是'ignore'或者'replace'
string.find(str, beg=0, end=len(string))检测 str 是否包含在 string 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1
string.format()格式化字符串
string.index(str, beg=0, end=len(string))跟find()方法一样,只不过如果str不在 string中会报一个异常.
string.join(seq)‍‍以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串‍‍
string.replace(str1, str2,  num=string.count(str1))把 string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次.‍‍‍
string.split(str="", num=string.count(str))以 str 为分隔符切片 string,如果 num 有指定值,则仅分隔 num+ 个子字符串
string.strip([obj])删除字符串前后空格

‍‍‍‍‍‍‍‍‍‍

列表 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型。 1.列表:创建

list = [] #定义空列表
list1 = ["小张","小王","小李"]
list2 = [1,"菜J学Python"] #列表中可以存储混合类型

2.列表:访问

list1 = ["小张","小王","小李"]  #for循环遍历获取列表数据for list in list1:
    print(list)'''
list1 = ["小张","小王","小李"]  #while循环遍历获取列表数据
length = len(list1)
i = 0
while i    print(list1[i])
    i += 1
'''

3.列表:增

#列表:增append,extend,insert'''
list1 = ["小张","小王","小李"]
print("---增加前列表数据----")
for list in list1:
    print(list)
addname = input("请输入添加的学生姓名:")
list1.append(addname)     #append为在末尾追加一个元素
print("---增加后列表数据----")
for list in list1:
    print(list)
''''''
a = [1,2]
b = [3,4]
a.append(b) #将列表当做一个元素加入到列表中
print(a)
a.extend(b) #将列表中的每个元素逐一追加到列表中
print(a)
''''''
a = [0,1,2]
a.insert(1,3) #指定下标位置1插入元素3
print(a)
'''

4.列表:删

#列表:删del,pop,remove'''
list1 = ["小张","小王","小李"]
print("---删除前列表数据----")
for list in list1:
    print(list)
#del list1[2]    #del为在指定位置删除一个元素
#list1.pop()     #pop为弹出末尾最后一个元素
#list1.remove("小张") #remove直接删除指定内容的元素(如有重复只删除第一个)
print("---删除后列表数据----")
for list in list1:
    print(list)
'''

5.列表:改

#列表:改'''
list1 = ["小张","小王","小李"]
print("---删除前列表数据----")
for list in list1:
    print(list)
list1[2] = "小潘" #指定下标修改
print("---删除后列表数据----")
for list in list1:
    print(list)
'''

6.列表:查

#列表:查in\not in'''
list1 = ["小张","小王","小李"]
findname = input("请输入你要查找的姓名")
if findname in list1:
    print("在名单中找到了你查找的姓名")
else:
    print("没有找到")
''''''
list = ["a","b","c","a","b"]
print(list.index("a",1,4))  #可以查找指定下标范围的元素,并返回找到对应数据的下标
print(list.index("a",1,3))  #因为范围区间左闭右开【1,3),找不到会报错
''''''
list = ["a","b","c","a","b"]
print(list.count("a")) #统计元素出现的次数
'''

6.列表:其他

#列表:排序与反转sort\reverse'''
a = [1,4,2,3]
print(a)
a.reverse() #将列表所有元素反转
print(a)
a.sort() #升序
print(a)
a.sort(reverse=True) #降序
print(a)
'''#列表:嵌套 list=[[],[],[]]'''
schoolname = [["北京大学","清华大学"],["南开大学","天津大学","天津财经大学"],["山东大学","中国海洋大学"]]
print(schoolname[0])
print(schoolname[0][0])
'''#列表:使用枚举函数enumerate,同时拿到列表中的下标和元素内容'''
mylist = ["a","b","c","d"]
for i,x in enumerate(mylist):
    print(i+1,x)
'''#列表:将8人中的任意三个人随机分配到3个办公室'''
import random
offices = [[],[],[]]
names = ["A","B","C","D","E","F","G","H"]
for name in names:
    index = random.randint(0,2)  #注意这是左闭右闭
    offices[index].append(name)
i = 1
for office in offices:
    print("办公室%d的人数为:%d"%(i,len(office)))
    i +=1
    for name in office:
        print("%s"%name,end="\t")
        print("\n")
        print("-"*28)
'''

元组

Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号。

1.元组:创建

#元组:创建
tup1 = () #创建空元组
tup2 = (50)
tup3 = (50,)
tup4 = (50,60,70)

2.元组:访问

#元组:访问
tup1 = ("abc","def",2000,3000,333,444,555)
print(tup1[0])
print(tup1[-1]) #访问最后一个元素
print(tup1[1:5]) #左闭右开,进行切片

3.元组:增

#元组:增(连接)
tup1 = (12,34,56)
tup2 = ("abc","xyz")
tup = tup1 + tup2
print(tup)

4.元组:删

#元组:删
tup1 = (12,34,56)
print(tup1)del tup1 #删除了整个元组变量
print("删除后:")
print(tup1)

5.元组:改(不允许)

字典 字典是另一种可变容器模型,且可存储任意类型对象。 字典的每个键值  key=>value  对用冒号  :  分割,每个键值对之间用逗号  ,  分割,整个字典包括在花括号  {}  中。 1.字典:创建
info = {"name":"菜J学Python","age":18}

2.字典:访问

print(info["name"])
print(info["age"])
print(info["gender"]) #直接访问不存在的键,会报错
print(info.get("gender")) #使用get方法,没有找到对应的键,默认返回:None
print(info.get("gender","m")) #使用get方法,没有找到对应的键,返回:m

3. 字典:增

#字典:增
info = {"name":"吴彦祖","age":18}
newID = input("请输入新的学号:")
info["id"] = newID
print(info["id"])
print(info)

4.字典:删

#字典:删del\clear清空)'''
info = {"name":"吴彦祖","age":18}
print("删除前:%s"%info["name"])
del info["name"] #删除了键值对
print("删除后:%s"%info["name"]) #删除了指定键值对后,再次访问会报错
''''''
info = {"name":"吴彦祖","age":18}
print("删除前:%s"%info)
del info #删除了字典
print("删除后:%s"%info) #删除了指定键值对后,再次访问会报错
''''''
info = {"name":"吴彦祖","age":18}
print("删除前:%s"%info)
info.clear()
print("删除后:%s"%info)
'''

5.字典:改

#字典:改
info = {"name":"吴彦祖","age":18}
info["age"] = 20
print(info["age"])

6.字典:查

#字典:查
info = {"id":1,"name":"吴彦祖","age":18}
print(info.keys())    #得到所有的键(列表)
print(info.values())  #得到所有的值(列表)
print(info.items())   #得到所有的项(列表),每个键值对是一个元组

7.字典:其他

#字典:遍历键'''
info = {"id":1,"name":"吴彦祖","age":18}
for key in info.keys():
    print(key)
'''#字典:遍历值'''
info = {"id":1,"name":"吴彦祖","age":18}
for value in info.values():
    print(value)  
'''#字典:遍历所有的键值对'''
info = {"id":1,"name":"吴彦祖","age":18}
for key,value in info.items():
    print("key=%s,value=%s"%(key,value))
'''

集合

#集合
x = set([1,2,3])   #set类似dict,但仅是key的集合,不存储value
print(x)
y = set([1,1,2,2,3,3])   #set中重复元素会被过滤
print(y)

结语

欢迎关注菜J学Python,敬请期待下篇。

往期回顾

  1. 实战|Python轻松实现动态网页爬虫(附详细源码)
  2. 实战|Python轻松实现地图可视化(附详细源码)
  3. 实战|Python轻松实现PDF格式转换(附详细源码)
  4. 实战|Python轻松实现批量图片文字识别(附详细源码)
  5. 实战|手把手教你用Python爬虫(附详细源码)
  6. 实战|Python轻松实现绘制词云图(附详细源码)
  7. 实战|Python爬虫并用Flask框架搭建可视化网站

  8. 实战|Python六行代码实现多个Excel合并

  9. 基础/Python常用知识点汇总(上)

59e4f7f170a03466bdc222d26957ef52.gif

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值