【python】高级变量类型——字符串、字典

一、字符串

1. 定义

  • 在 python 中使用一对双引号 " ,或者一对单引号 ' 定义一个字符串
    • 可以使用 \" 或者 \' 做字符串的转义,但实际中,如果字符串内部需要使用 ",常使用 ' 定义字符串,反之亦然。

2. 常用方法

序号 分类 关键字/函数/方法 说明
 1 判断类型  string.isspace()  如果 string 中只包含空格,则返回 True
     string.isalnum()  如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True
     string.isalpha()  如果 string 至少有一个字符并且所有字符都是字母则返回 True
     string.isdecimal()  如果 string 只包含数字则返回 True,全角数字
     string.isdigit()  如果 string 只包含数字则返回 True,全角数字、⑴、\u00b2
     string.isnumeric()  如果 string 只包含数字则返回 True,全角数字,汉字数字
     string.istitle()  如果 string 是标题化的(每个单词的首字母大写)则返回 True
     string.islower()  如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True
     string.isupper()  如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True
 2 查找与替换  string.startswith(str)  检查字符串是否是以 str 开头,是则返回 True
     string.endswith(str)  检查字符串是否是以 str 结束,是则返回 True
     string.find(str, start=0, end=len(string))  检测 str 是否包含在 string 中,如果 start 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回 -1
     string.rfind(str, start=0, end=len(string))  类似于 find(),不过是从右边开始查找
     string.index(str, start=0, end=len(string))  跟 find() 方法类似,不过如果 str 不在 string 会报错
     string.rindex(str, start=0, end=len(string))  类似于 index(),不过是从右边开始
     string.replace(old_str, new_str, num=string.count(old))  把 string 中的 old_str 替换成 new_str,如果 num 指定,则替换不超过 num 次
 3 大小写转换  string.capitalize()  把字符串的第一个字符大写
     string.title()  把字符串的每个单词首字母大写
     string.lower()  转换 string 中所有大写字符为小写
     string.upper()  转换 string 中的小写字母为大写
     string.swapcase()  翻转 string 中的大小写
 4 文本对齐  string.ljust(width)  返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
     string.rjust(width)  返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串
     string.center(width)  返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
 5 去除空白  string.lstrip()  截掉 string 左边(开始)的空白字符
     string.rstrip()  截掉 string 右边(末尾)的空白字符
     string.strip()  截掉 string 左右两边的空白字符
 6 拆分和连接  string.partition(str)  把字符串 string 分成一个 3 元素的元组 (str前面, str, str后面)
     string.rpartition(str)  类似于 partition() 方法,不过是从右边开始查找
     string.split(str="", num)  使用str作为分隔符(如果未指定则使用空格分割),可选 num 限制拆分数量。 
     string.splitlines()  按照行('\r', '\n', '\r\n')分隔,返回一个包含各行作为元素的列表
     string.join(seq)  以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串

3. 切片

  • 切片方法适用于 字符串、列表、元组,不适用于字典
字符串[开始索引:结束索引:步长]

  

注意:

  • 切片区间【】 属于左闭右开型,从起始位开始,到结束位的前一位结束。
  • 从头开始,开始索引数字可以省略,冒号不能省略。
  • 到末尾结束,结束索引数字可以省略,冒号不能省略。
  • 步长默认是1,如果连续切片,数字和冒号都可以省略。

倒序切片:最末尾的索引值为-1,向左依次递减。

二、字典

  • 值可以取任何类型,但键只能使用字符串、数字或元组

1. 字典的定义

  字典是 Python 中唯一的内置映射类型

  字典以类似于下面的方式表示:

phonebook = {'Alice':'1234','Beth':'4567'}

  可以使用函数 dict 从其他映射或键-值对序列创建字典。(与list、tuple 和 str 一样,dict 不是函数,而是一个类)

items = [('name','Alice'),('age','16')]
d = dict(items)
d

Out:{'age':16, 'name','Alice'}

2. 基本的字典操作

  • len(dict),返回字典 d 包含的项数
  • d[k],返回与键 k 相关联的值
  • d[k] = v, 将值 value 关联到键 k
  • del d[k], 删除键为 k 的项
  • k in d, 检查字典 d 是否包含键为 k 的项 

3. 内置方法

dict.clear()    #删除字典内所有元素
dict.copy()    #返回一个字典的浅复制
dict.fromkeys()    #创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
dict.get(key, default=None)    #返回指定键的值,如果值不在字典中返回default值
dict.has_key(key)    #如果键在字典dict里返回true,否则返回false
dict.items()    #以列表返回可遍历的(键, 值) 元组数组
dict.keys()    #以列表返回一个字典所有的键
dict.setdefault(key, default=None)    #和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default
dict.update(dict2)    #把字典dict2的键/值对更新到dict里
dict.values() #以列表返回字典中的所有值

 

posted @ 2019-03-06 14:54  唱歌的石头  阅读(275)  评论(0编辑  收藏  举报