python列表,元组和字符串

时间:2023-01-04 10:17:07

列表list

  有序的,可使用索引
  列表是可变的
  线性的数据结构
  使用[]表示

列表查询

index()

  通过值value,从指定区间查找列表内的元素是否匹配

count()

  返回列表中匹配value的次数

len()

  返回列表元素的个数

列表元素修改

  list[index] = value

列表增加,插入元素

append() -->None

  在列表尾部追加元素,就地修改,不会生陈新列表 

insert() -->None

  在指定索引处插入元素,就地修改

  超过上边界在尾部追加,超过下边界在头部追加  

extend() -->None

  将可迭代对象的元素追加进来,就地修改

+ -->list

  将两个列表连接起来

  产生新列表,原列表不变

* --> list

  将列表元素重复n次,返回新的列表

列表删除元素

remove() -->None

  从左至右查找第一个匹配的元素,移除该元素

  就地修改

pop() -->item

  不指定索引就从列表末尾弹出一个元素

  指定索引从索引处弹出一个元素,索引超界抛出IndexError

clear() -->None

  清除列表所有元素

列表其它操作

reverse() -->None

  将列表元素反转,就地修改

sort() -->None

  对列表元素进行排序,就地修改,默认升序

列表复制

copy() -->list

  返回一个新的列表

  copy.deepcopy() 深拷贝

随机数

random模块

  randint(a,b) 返回a到b之间的整数

  choice(seq)从非空序列的元素中随机挑选一个元素  #random.choice(range(10))从0到9中随机挑选一个整数

  randrange([start],[stop],[step])从指定范围按指定基数递增的集合中获取一个随机数  #print(random.randrange(1,10,2))

  random.shuffle(list) 就地打乱列表元素,返回None

  sample()从样本空间中随机选出n个不同的元素,返回一个新列表    #random.sample(['a','b','c'],2)

 

元组tuple

  一个有序的元素组成

  使用小括号()表示

  不可变的

元组查询

index

  通过值value,从指定区间查找列表内的元素是否匹配

count()

  返回列表中匹配value的次数

len()

  返回列表元素的个数

元组是只读的,没有增,改,删除元素的方法

 

字符串

  由字符组成的有序的序列,使用引号引住的字符序列

  不可变的

字符串支持索引访问

字符串join连接

'string'.join() -->str

  将可迭代对象连接起来,使用string作为分割符

  可迭代对象本身元素都是字符串

  返回新字符串

+ -->str

  将两个字符串连起来

  返回新字符串

字符串分割

split 将字符串按照分隔符分割成若干字符串,并返回列表

  split(sep=None,maxsplit=-1)

    从左向右

    sep指定分隔字符串

    maxsplit指定分割次数,-1表示遍历整个字符串

  rsplit 从右向左分割

splitlines([keepends])

    按照行分割字符串

    keepends是否保留行分隔符(\n,\rn,\r)

partition 将字符串按照分隔符分成2段,返回这2段和分隔符的元组

  partition(sep)-->(head,sep,tail)

    从左到右遇到分隔符就把字符串分割成2段,返回头,分隔符,尾;没找到分隔符就返回头,2个空元素 

    sep分隔符,必须指定

字符串大小写

upper() 全大写

lower()全小写

swapcase() 交换大小写

字符串修改

replace(old,new,count)-->str

  字符串中找到匹配替为新子串,返回新字符串

   count表示替换的次数

strip([chars]) -->str 

   从字符串两端去除指定的字符集chars中的所有字符

  如果chars没指定,去除两端的空白字符

lstrip() 从左开始

rstrip()从右开始

 

字符串查找

find(sub,start,end)-->int  在指定区域从左到右查找,找到后返回索引,没找到返回-1

rfind() 从右到左查找

index() 在指定区域从左到右查找,找到后返回索引,没找到抛出异常ValueError

ridex()从右到左查找

len() 返回字符串的长度(即字符的个数)

count(sub,start,end)-->int  在指定的区域从左到右,统计子串sub出现的次数

字符串判断

endswith(suffix,start,end) -->bool

  在指定区间,字符串是否是suffix结尾

 startswith(prefix,start,end) -->bool

   在指定区间,字符串是否是prefix开头

字符串格式化

format函数

"{}{xxx}".format(*args,**kwargs)-->str

args是位置参数,是一个元组

kwargs是关键字参数,只一个字典

花括号是占位符

{}表示按照顺序匹配位置参数,{n}表示取位置参数索引为n的值

{xxx}在关键字参数中搜索名称一致的

{{}}表示打印花括号