加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python 字符串方法及列表,元组,字典(一)

发布时间:2020-12-20 10:22:26 所属栏目:Python 来源:网络整理
导读:字符串 str 注: 若想要保持单引号和双引号为字符串的一部分 1)单双引号交替使用, 2) 使用转义字符 3)成对三个引号被存在变量里 二、字符串详细用法 字符串的单个取值例 p_1=”hello” 字符串元素定位置,通过索引 正序( →) ?反序(←)开始值从 0

字符串 str

注:

若想要保持单引号和双引号为字符串的一部分

1)单双引号交替使用,

2)使用转义字符

3)成对三个引号被存在变量里

二、字符串详细用法

字符串的单个取值例 p_1=”hello”

字符串元素定位置,通过索引 正序(→) ?反序(←)开始值从0开始,反序从-1开始

取值方式 ?字符串名[索引值]?print(p_1[-1]) ?o

①字符串切片:字符串名[m:n:k]m:索引起始位置,n:索引结束位置+1k:步长 默认值为1,取左不取右

1,print(p_1[2:4:10])ll

2,print(p_1[:])#k=1 m=0 n=到末尾+1 hello

3,print(p_1[0:]) hello

②字符串的进阶操作python内置函数的调用

  1. 切换大小写upper() ?lower()

例子

s=‘get‘

k=‘GET‘

s_1=s.upper()/k.lower() ?#/小写函数

print(s_1) ?结果GET/get

  2.字符串拼接

例子

a="GET"

a1=a[0]+a[1].lower()+a[2]

print(a1) ?结果GeT

  3.查找字符串 字符串变量名.find(字符串)

例子

a=‘easier said than done!‘

print(a.find(‘!‘)) ???结果21

#結果返回字符所在的索引,從左側到右側0開始包括空格,返回-1說明查找的字符不存在

  4.字符串的替换 字符串变量名.replace(目标,替换的值,替换次数) ?替换次数不写默认全部替换,只能先替换在进行其他操作

例子:

a=‘easier said than done!‘

a_1=a.replace(‘a‘,‘@‘,2)

print(a_1) ??结果[email?protected] [email?protected] than done!

  5.split() 根据传入指定的字符去进行切割

例子

a=‘easier said than done!‘

a_1=a.split("a")

print(a_1) ??结果[‘e‘,‘sier s‘,‘id th‘,‘n done!‘] ??#a为挡板进行切割,结果是列表类型的

指定切割次数

a_1=a.split("a",1)

print(a_1) ?结果[‘e‘,‘sier said than done!‘]

空格切割

a=‘easier said than done!‘

a_1=a.split(" ")

print(a_1)

结果[‘easier‘,‘said‘,‘than‘,‘done!‘]

特殊切割

a=‘easier said than done!!!!!‘

a_1=a.split("!",5)

print(a_1) 结果 [‘easier said than done‘,‘‘,‘‘]

  6.strip()去除指定元素的头和尾指定的字符,不傳字符時默認去除頭尾的空格

a=‘easier said than done‘

a_1=a.strip("e")

print(a_1) 结果asier said than don

尾部的内容相同一直去除

a=‘eeeeeasier said than doneeeeee‘

a_1=a.strip("e")

print(a_1) 结果asier said than don

字符串的拼接(+)只能是字符串,格式相同类型相同时用+

a=‘hello‘

a_1=‘world‘

a_2=a+" "+a_1

print(a_2) 结果hello world

附加知识

1、字符串转换

①整数利用str()可以转换为字符数,但是字符串不能变为数值型

print(a+str(8888)+a_1) 结果hello8888world

②字符串的为数字的可以利用int()转成字符串

print(type(int("6777"))) ?结果<class ‘int‘>

str(数据值或者是变量名)函数直接强制转换为字符串

2、格式化输出

%s输出一个字符串 占坑 %d 数字

按顺序赋值

name="jack"

age=18

print("2019%s參加體育比賽,那年他只有%d歲!"%(name,age))

结果 2019jack參加體育比賽,那年他只有18歲!

format{}来占坑,如果不指定顺序就按顺序赋值,少赋值的坑就会报错

name="张三"

date="101"

age=18

print("2019{1}{0}參加體育比賽,那年他只有{2}歲!".format(name,date,age))

结果2019101日张三參加體育比賽,那年他只有18歲!

三、列表 关键字 list 标志[]

S=[] #空列表

特点:

1、空列表[],关键字 list

2、列表里面可以放任何类型的数据 元素与元素直接用逗号隔开

3、列表里面的元素都有索引,从0开始和字符串的索引方式是一致的

4、列表取值方式:列表名[索引值]

5、切片;列表名[m,n,k]跟字符串一样

s=[20,"hello",2.0,[1,2,3]]

print(s[0:4:2]) 结果 [20,2.0]

进阶操作:列表 增删改

增加元素:

1、列表名.append(value)直接追加内容到列表的最后面

s=[20,3]]

s.append("ok")

print(s) 结果[20,‘hello‘,3],‘ok‘]

2、列表名.insert(指定索引值的位置,value)value插入到指定的位置

s=[20,3]]

s.insert(1,"ok")

print(s) ?结果[20,‘ok‘,3]]

3、extend 扩张列表

s=[20,3]]

s1=["合理",12,"world"]

s.extend(s1)

print(s) 结果[20,‘合理‘,‘world‘]

删除元素

1、删除最后一个元素,列表名.pop()

s=[20,3]]

s.pop()

print(s) 结果 [20,2.0]

2、指定删除元素 列表名.pop(指定的索引位置)

s=[20,3]]

s.pop(1)

print(s) 结果 [20,3]]

3、删除所有元素 列表名.clear()

s=[20,3]]

s.clear()

print(s) 结果[]

4、修改元素 修改列表里面元素的value

列表名[指定索引]=新值 修改指定的索引值

s=[20,3]]

s[1]=2019

print(s) 结果[20,2019,3]]

四、元组 关键字 tuple 标志()

t=() 空元组

特点

1、标志是()关键字tuple

2、元组里面可以放任何类型的数据,元素与元素之间用逗号隔开

3、元组里面的元素也都有索引从0开始跟字符串的索引方式是一致的

4、元组取值方式:元组名[索引值]正序 反序

5、切片:元组名[m:n:k]和字符串一样的操作

注:

①与列表的区别:

1、标志不同

2、元组的值不能进行任何的增删改操作,可以修改元组内部的数据但是不能改外部的数据

例如

第一种

s=(1,"hell0",(1,3))

s[3]=6666

print(s) 结果 报错TypeError: ‘tuple‘ object does not support item assignment

?

s=(1,3))

s[3][2]=6666

print(s) 结果(1,‘hell0‘,6666],3))

第二种

s=[1,3)]

s[4]=6666

print(s) 结果[1,6666]

?

s=[1,3)]

s[-1][1]=6666

print(s) 结果报错TypeError: ‘tuple‘ object does not support item assignment

②元组单个元素时加逗号称为元组

a=(1)

a=(1,)

a=(“hello”)

a=(“hello”,)

a=([2,4,6])

a=([2,6],)

五、字典 关键字 dict 标志{}

特点

1、关键字dict {}

2、值的特点是 键值对 key_value

3、a={}空字典

4、元组列表都是有序的的数据类型,字典是无序的数据类型

5、取值,按照key取值字典名[key],取所有值 字典名.values(),所有的key值 字典名.keys()

例子

a={"age":18,"name":"張三","address":"上海"}

print(a["age"])

print(a.values())

print(a.keys())

结果

18

dict_values([18,‘上海‘,‘張三‘])

dict_keys([‘age‘,‘address‘,‘name‘])

6、增删改

增加值:a[key]=value

修改值:a[已存在的key]=value

删除值:字典名.pop(key)

例如

a={"age":18,"address":"上海"}

a["sex"]=""

a["address"]="廣東"

a.pop("age")

print(a) ?结果 {‘sex‘: ‘‘,‘address‘: ‘廣東‘,‘name‘: ‘張三‘}

字典嵌套

例如

a={"age":18,"address":"上海","info":{"name":"李四","age":20,"add":"浙江","score":100}}

a_1=a[‘info‘][‘score‘]

print(a_1) 结果100

注:key的值时唯一的,value可以不唯一

例子

a={"age":18,"name":"王五"}

print(a) ?结果{‘name‘: ‘王五‘,‘age‘: 18,‘address‘: ‘上海‘} ?张三被覆盖

?

a={"age":18,"name2":"張三"}

print(a) 结果{‘name‘: ‘張三‘,‘name2‘: ‘張三‘,‘address‘: ‘上海‘,‘age‘: 18}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读