python第四话:字符串、列表及字典详解

本文详细介绍了Python中字符串、列表和字典的基础用法,包括定义、特性以及常用操作。重点讲解了字符串的格式化、列表的增删查改、字典的创建和增删改查,还涵盖了切片、步长和排序等概念。无论你是初学者还是需要巩固基础知识,这篇文章都是很好的参考资料。
摘要由CSDN通过智能技术生成

用时两天,终于整理出了这篇文章。主要是字符串、列表和字典的基本用法,包括定义、特性、增删改查等常用函数及基本语法。

目录

🌴字符串

🌻1.字符串定义&特性

🌻2.字符串常用操作

🍓格式化字符串

🍓指定最小输出宽度

🍓指定对齐方式

🍓指定小数精度

🌻 3.字符串常用函数

center()函数

count()函数

endwith()函数

isdigit()函数

join ()函数

replace()函数

split ()函数

🌴列表

🌻1.列表的定义&特性

🌻2.列表的增删查、排序

🍓增:

append ()函数

extend()函数

insert()函数

🍓删:

pop()函数

remove()函数

del()函数

clear()函数

🍓查:

index()函数

count()函数

in

 🌻列表的排序&反转

sort ()函数

sorted()函数

reverse()函数

🌻切片与步长

🍓切片:

🍓步长

🌴字典

🌻定义&特性

🌻字典的创建

🌻字典的增删改查

🍓增:

🍓删:

🌻字典的嵌套(附链接)


🌴字符串

🌻1.字符串定义&特性

1.字符串是一个有序的字符的集合

2.按照从左到右的顺序定义字符集合,下标从0开始访问

3.可进行切片操作

  • 下标从0开始
  • 空格也算一个字符
  • [ a:b]中间使用冒号,区间前闭后开

4.字符串不可修改

🌻2.字符串常用操作

🍓格式化字符串

转换说明符就是占位符,具体内容会被后边表达式的值代替。

表1:python转换说明符
转换说明符解释
%d 、%i转换为带符号的十进制整数
%o转换为带符号的八进制整数
%x 、%X转换为带符号的十六进制整数
%e 、%E转换为科学计数法表示的浮点数
%f  、%F转换为十进制浮点数
%g智能选择%f或%e格式
%G智能选择%F或%E格式
%c格式化字符及其ASCII码
%r

使用repr()函数将将表达式转换为字符串

%s使用str()函数将表达式转换为字符串

🍓指定最小输出宽度

也可以指定最小输出宽度,比如:

%2d表示输出的整数宽度至少为2;

%10s表示输出的字符串宽度至少为10。

当数据的实际宽度小于指定宽度时,会在左侧以空格补齐,当数据的实际宽度大于指定宽度时,指定宽度就失去了本来的作用。

🍓指定对齐方式

python输出数据默认右对齐。也可以在最小宽度之前加一个标志改变对齐方式。

表2:python支持的标志
标志说明
-表示左对齐
+表示输出的数字带符号(正数+、负数-)
0宽度不足时补0,而不是补空格

几点说明:

  • 对于整数,指定左对齐时,在右边补 0 是没有效果的,因为这样会改变整数的值。
  • 对于小数,以上三个标志可以同时存在。
  • 对于字符串,只能使用-标志,因为符号对于字符串没有意义,而补 0 会改变字符串的值。

🍓指定小数精度

python允许指定小数点后面的数字位数。

精度值需要放在最小宽度之后,中间用点号.隔开;也可以不写最小宽度,只写精度。具体格式如下:

%m.nf
%.nf

m 表示最小宽度,n 表示输出精度,.是必须存在的

如下:

f = 3.141592653
# 最小宽度为8,小数点后保留3位
print("%8.3f" % f)
# 最小宽度为8,小数点后保留3位,左边补0
print("%08.3f" % f)
# 最小宽度为8,小数点后保留3位,左边补0,带符号
print("%+08.3f" % f)

运行结果:

🌻 3.字符串常用函数

center()函数

返回一个长度为width、两边用fillchar(单字符)填充的字符串

语法:str.center(width,"fillchar")

注意:引号不能省略


count()函数

查找一个字符串中,某个字符出现的次数

语法:str.count(sub,start,end)

        sub:搜索的子字符串

        start:开始搜索的下标索引值。默认为第一个字符,第一个字符索引值为0。

        end:结束搜索的下标索引值。


endwith()函数

判断字符串是否以指定字符或字符串结尾

语法:str.endswith("suffix", start, end) str[start,end].endswith("suffix")    

返回值为布尔类型(True,False)


startwith()函数

判断字符串是否以指定字符或字符串开头

语法:str.startwith("suffix", start, end)


find ()函数

查找字符,存在返回下标,不存在返回-1

语法:str.find(str,start,end)


isdigit()函数

判断字符串是否只由数字构成

语法:str.isdigit( )


join ()函数

拼接字符串

语法:str.join(item)

注意:item表示一个成员,括号里必须只能有一个成员,比如','.join('a','b')这种写法是行不通的。


replace()函数

替换原字符串的某个值

语法:str.replace(旧的值,新的值,替换次数)


split ()函数

按照分隔符把字符串分开

语法:str.split(sep,num)

        sep:分隔符,不写sep时,默认表示用 空格,\n,\t 分隔字符串

        num:分隔次数,有sep时按sep的值分隔



🌴列表

🌻1.列表的定义&特性

列表是一个有序的,可修改的(增删查改),元素以逗号分隔,以中括号包围的序列。

[ ]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素

可存放多个值,按照从左到右的顺序定义列表元素,下标从0开始访问,可修改指定索引位置对应的值

🌻2.列表的增删查、排序

🍓增:

append ()函数

将新元素追加到列表末尾

语法:list.append(obj)

        obj:添加到列表末尾的对象


extend()函数

在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

语法:list.extend(seq)

        seq :元素列表,必须是一个可以迭代的序列


insert()函数

将指定对象插入列表的指定位置

语法:list.insert(index, obj)

        index :对象 obj 需要插入的索引位置。

        obj :要插入列表中的对象


🍓删:

pop()函数

用于删除列表中的一个元素,默认最后一个元素,并且返回该元素的值

语法:list.pop( obj=list[n] )

        obj :要删除列表中的对象

        n:索引下标

注意:obj是可选参数


remove()函数

删除列表中某个值(指定元素名)的第一个匹配项 

语法:list.remove(obj)

        obj :列表中要移除的对象


del()函数

删除整个列表或列表的某数据,del是Python内置功能,不是列表独有


clear()函数

清空当前列表中的元素

语法:list.clear()


🍓查:

index()函数

检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。

语法:str.index(str, beg=0, end=len(string))

        str :指定检索的字符串

        beg :开始索引,默认为0。

        end :结束索引,默认为字符串的长度


count()函数

计数,返回要计数的元素在列表当中的个数

语法:str.count(sub,start=0,end=len(string))

        sub -- 搜索的子字符串

        start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。

        end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。


in

查找元素是否在列表中,在返回true,否则返回false


 🌻列表的排序&反转

sort ()函数

语法:list.sort()

排序顺序:大写、小写、中文(数字按大小排序)

注意:这个方法会改变a自身

a = [7,5,9,3]
# True为逆序,False为正序
a.sort(reverse = False)
print(a)
a.sort(reverse = True)
print(a)

[3, 5, 7, 9]
[9, 7, 5, 3]

sorted()函数

排序,用这个方法可以将排序后的列表赋值给其他列表,也就是说原列表值不会改变。

a = [7,5,9,3]
# reverse为True逆序,reverse为False正序
b = sorted(a,reverse=True)
print(b)
b = sorted(a,reverse=True)
print(b)
# 原列表值不会改变
print(a)

[9, 7, 5, 3]
[9, 7, 5, 3]
[7, 5, 9, 3]

reverse()函数

将列表中的元素反转

a = [11,23,45,7]
a.reverse()
print(a)

[7, 45, 23, 11]

🌻切片与步长

🍓切片:

定义:

通过指定下标的方式来获得某一个数据元素,或者通过指定下标范围来获得一组序列的元素,这种访问序列的方式叫做切片。

语法

  [start:end:step]

     start:起始索引,从0开始

     end:结束索引,但是end-1为实际的索引值

     step:步长,步长为正时,从左向右取值。步长为负时,反向取值

注意切片的结果不包含结束索引,即不包含最后的一位,-1代表列表的最后一个位置索引,

与字符串类似,也是前闭后开


两种切片方法:

从左往右:

list[3:-1:2]

表示从0下标开始取数,依次从左往右取,间隔步长为2。

从右往左:

list[3:-2:-1]

-1表示从右往左取,步长为1

🍓步长

间断取指定数,取头不取尾

语法:list[start:end:step]

list[1:]:表示取到最后一个数

list[1:-1]:表示取到倒数第二个数,且包含倒数第二个数



🌴字典

🌻定义&特性

  字典是Python提供的一种常用的数据结构,它用于存放具有映射关系的数据。 字典相当于保存了两组数据,其中一组数据是关键数据,被称为 key;另一组数据可通过 key 来访问,被称为 value

dic={key1:value1,key2:value2}

:冒号左边是key,右边是value

特性

1.key:value结构

2.key必须为不可变数据类型(字符串、数字),必须唯一

3.value可以有多个、可修改、可不唯一

4.无序

5.查询速度快,且不受字典大小的影响

🌻字典的创建

1.使用函数 dict 从其他映射或键值对序列创建字典

items=[('name','Tom'),('age',18)]
d=dict(items)
print(d)
# 结果为{'name': 'Tom', 'age': 18}
# 如果不为dict函数传入数据,则会创建一个空字典
t=dict()
print(t)
# 结果为 {}

2.指定关键字参数来创建字典

d=dict(name='swamm',age=18)
print(d)
# 结果为 {'name':'swamm','age':18}

🌻字典的增删改查

🍓增:

dic['key'] = 值

setdefault 设置默认

🍓删:

 pop 删除指定key

del 删除指定key

popitem 随机删除

clear 清空dict

🍓改:

update:如果key在字典中存在,新的value将会替代原来value的值,如果不存在,则增加新的值。

🍓查:

看key是否在字典里:key in dict

dic.keys()打印所有的key值

dic.values ()打印所有的value值

dic.items()把字典以列表的形式显示

get()函数

得到键值,有则打印,没有则报错

补充:列表的循环

for k in dic:

        print(k)  #打印k

        print(k,dic[k])  #k和value一起打印

len(dic)求长度

len()方法可同时用于列表、字符串

🌻字典的嵌套

可以在字典中存储列表,在列表中存储字典,在字典中存储字典等等。python中几乎所有的数据类型,都可以存进字典中。

详细内容点击下方链接:

python字典嵌套


由于本人能力有限,文章难免有所疏漏,若有错误,还请各位大佬多多指正。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

采代码的小蘑菇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值