Python String:一文彻底粉碎字符串

一、组合数据类型container objects

在这里插入图片描述
组合数据类型container objects:能够表示多个数据的类型
集合类型:集合类型是一个元素集合,元素无序不重不变
序列类型:序列类型是一个元素向量,元素有序可重可变可不变。序列类型的典型代表是列表类型、元组类型、字符串类型(但元组一旦定义,元素就不能变了)
映射类型:映射类型是“键-值”数据项的组合,元素无序不重键不可变值可变可不变,每个元素是一个键值对。映射类型的典型代表是字典类型
集合类型是一个具体的数据类型名称,而序列类型和映射类型是一类数据类型的总称。
不可变数据类型:immutable,如数字、元组、字符串
可变数据类型:mutable,如列表、集合、字典
可迭代对象:iterable,如range()、序列(列表元组字符串)、集合、字典、文件,generator
不可迭代对象:如数字

很多函数的参数以及返回值都是iterable:map(), filter() ,zip() ,range(), dict.keys(), dict.items() 和 dict.values()

二、字符串Python tutorial

从九个方面展开:基,建,增,删,改,查,操,切,复
(一)基:基本概念
字符串:字符的序列sequence
字符串类名:str
在这里插入图片描述
(二)建:创建、定义
1、通过一对单引号、一对双引号创建字符串
2、通过三对单引号、三对双引号创建字符串
3、转义符“\”
在这里插入图片描述
4、通过str()创建字符串
在这里插入图片描述
(三)改、删
字符串是immutable的,一旦创建就不能被更改。
在这里插入图片描述
变相修改:(实际上,这不是改,而是新建了一个新的字符串)
在这里插入图片描述
这里,通过id()查看变量的内存地址,可以看到变量的值变量引用的内存地址的区别。s1,s4,同一个字符串,在内存中只有一份
在这里插入图片描述
Python中:

  • 不可变数据类型:immutable,如数字、元组、字符串
  • 可变数据类型:mutable,如列表、集合、字典
  • 可以使用id()的进行查看(id()用来返回数据的内存地址)
  • 可变和不可变说的是变量的值变量引用的内存地址
  • 不可变数据类型,变量值变化,变量引用地址就会变化,即该地址的值不变
  • 可变数据类型,变量值变化,变量引用地址不变,即该地址的值可变

(四)查
1、正向递增序号(0 ~ n-1),反向递减序号(-1 ~ -n)
2、索引查单个,序号超出范围会报错IndexError
3、切片查多个,序号超出范围,取实际长度
在这里插入图片描述4、查询子串是否存在、在不在,in,not in。 (这个在所有组合数据类型中都有)
在这里插入图片描述
5、查询identity是否是,is, is not
在这里插入图片描述
6、查询以XX开头、结尾
在这里插入图片描述
7、查询序号
str.index(object[, start, end])返回一个int,默认从序号0开始查
在这里插入图片描述
8、查询子串出现次数
str.count(sub,start,end),返回一个int,默认从序号0开始查找,包含start本身
在这里插入图片描述
9、正则表达式查找
略。

(五)操,字符串操作
1、格式化输出,可以用str.format()
在这里插入图片描述
在这里插入图片描述
2、格式化拆分
str.split(sep)返回一个列表,sep可以是单个或多个字符,无sep默认以空格拆分
注意返回的列表不含拆分字符sep
在这里插入图片描述
在这里插入图片描述
3、合并字符串
str.join(iterable),返回一个字符串。将iterable变量除最后一个元素外的每一个元素后增加一个str字符
在这里插入图片描述
4、大小写
str.title(),把str每个首字母大写,每个非首字母小写
在这里插入图片描述
str.capitalize(),把str最开头的字母大写,其余全部小写
在这里插入图片描述
str.upper()和str.lower()是全部大小写,返回一个新str,原str不变
在这里插入图片描述
str.swapcase(),把大的变小的,把小的变大的
在这里插入图片描述
str.isupper(), str.islower()
在这里插入图片描述
5、去掉左/右边的内容
str.strip(chars),去掉左边和右边的chars,返回一个str
在这里插入图片描述
str.lstrip(chars), str.rstrip(chars)去掉左边或右边的chars,返回一个str
在这里插入图片描述
6、加乘法,返回一个str
在这里插入图片描述
7、替换
str.replace(old,new),返回一个str
在这里插入图片描述
8、比较
从左往右一个一个比较,如果一边完了,另一边还有,还剩的大
按ASCII码值,ord()可以把单字符转换成ASCII,小写字母大于大写字母
在这里插入图片描述

>>> help(str)
Help on class str in module builtins:

class str(object)
 |  str(object='') -> str
 |  str(bytes_or_buffer[, encoding[, errors]]) -> str
 |  
 |  Create a new string object from the given object. If encoding or
 |  errors is specified, then the object must expose a data buffer
 |  that will be decoded using the given encoding and error handler.
 |  Otherwise, returns the result of object.__str__() (if defined)
 |  or repr(object).
 |  encoding defaults to sys.getdefaultencoding().
 |  errors defaults to 'strict'.
 |  
 |  Methods defined here:
 |  
 |  __add__(self, value, /)
 |      Return self+value.
 |  
 |  __contains__(self, key, /)
 |      Return key in self.
 |  
 |  __eq__(self, value, /)
 |      Return self==value.
 |  
 |  __format__(self, format_spec, /)
 |      Return a formatted version of the string as described by format_spec.
 |  
 |  __ge__(self, value, /)
 |      Return self>=value.
 |  
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |  
 |  __getitem__(self, key, /)
 |      Return self[key].
 |  
 |  __getnewargs__(...)
 |  
 |  __gt__(self, value, /)
 |      Return self>value.
 |  
 |  __hash__(self, /)
 |      Return hash(self).
 |  
 |  __iter__(self, /)
 |      Implement iter(self).
 |  
 |  __le__(self, value, /)
 |      Return self<=value.
 |  
 |  __len__(self, /)
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值