开发者社区> 问答> 正文

python str是什么意思

python str是什么意思

展开
收起
云计算小粉 2018-05-10 20:11:04 1935 0
2 条回答
写回答
取消 提交回答
  • python类型有两种:可变类型和不可变类型

    可变类型:列表,字典,集合

    不可变类型: str字符串类型, int, 元组。

    2019-11-05 16:34:12
    赞同 展开评论 打赏
    1. 字符串的操作

    字符串的连接操作

    符号: +
    格式:str1 + str2
    例如:str1 = 'I Love'

     str2 = 'You!'
     print(str1 + str2)
     >>> 'I Love You!'

    返回值:str
    字符串的复制操作

    符号: *
    格式:str * num
    例如:str = 'abc'

     num = 3
     print(str1 * num)
     >>> 'abcabcabc' 

    返回值:str
    字符串的索引操作

    符号: []
    格式:str[index]
    例如:str = 'abcde'

     print(str[2])
     >>> 'c'

    返回值:str
    字符串的切片操作

    符号: [::]
    格式:str[index:index:step]
    例如:str = 'abcdefg'

     print(str[:])
     >>> 'abcdefg'
     #取字符串所有内容,开头的0可以忽略
     print(str[:3])
     >>> 'abc'
     #取出字符串索引0-3的内容(顾头不顾尾,不包含索引3的对象)
     print(str[:5:2])
     >>> 'ace'
     #取出字符串索引0-5的内容,每2个索引取一次
     print(str[3:])
     >>> 'defg'
     #取出字符串索引3开始到结尾的内容
     print(str[-2:])
     >>> 'fg'
     #取出字符串倒数第2开始到结尾的内容  

    返回值:str

    1. 内置方法

    连接

    格式:x.__add__(y)等同于x+y
    返回值:str
    包含

    格式:x.__contains__(y)
    返回值:bool
    相等

    格式:x.__eq__(y)等同于x==y
    返回值:bool
    大于等于

    格式:x.__ge__(y)等同于x>=y
    返回值:bool
    访问属性方法(文件操作时用)

    格式:x.__getattribute__(self,name)
    返回值:tuple
    获取键值对(字典操作时用)

    格式:x.__getitem__(key)
    返回值:键的值
    大于

    格式:x.__gt__(y)等同于x>y
    返回值:bool
    哈希值

    格式:x.__hash__()
    返回值:哈希值,int类型
    迭代器

    格式:x.__iter__()
    返回值:迭代器
    小于等于

    格式:x.__le__(y)等同于x<=y
    返回值:bool
    长度

    格式:x.__len__()等同于len(x)
    返回值:int类型
    小于

    格式:x.__lt__()
    返回值:布尔类型
    复制

    格式:x.__mul__(y)等同于x*y
    返回值:str
    注::此处的y必须是int类型

    不等于

    格式:x.__ne__(y)等同于x!=y
    返回值:bool
    右->左 复制

    格式:x.__rmul__(y)等同于y*x
    返回值:str
    注:此处的y必须是int类型

    1. 常用方法

    首字母大写,后面的小写

    格式:x.capitalize()

    #开头第一个单词首字母大写,后面的所有字符串全部小写

    例如:x = = 'i am A 好 boy'

    print(x.capitalize())
    >>> 'I am a 好 boy'

    返回值:str
    全部字符小写

    格式:x.casefold()

    #字符串中所有单词的所有字母全部小写

    例如:x = = 'i am A 好 boy'

    print(x.casefold())
    >>> 'i am a 好 boy'

    返回值:str
    居中,两边默认以空格填充

    格式:x.center()

    #定义字符串的长度,不足长度时,两边以指定字符串进行填充

    例如:x = 'abc'

    print(x.center(20,'*'))
    >>> '********abc*********'

    返回值:str
    计数(默认全文计数)

    格式:x.count(str,index1,index2)

    #指定开始和结束范围来统计某字符串的个数

    例如:x = 'sffefwsf'

    print(x.count('sf'),0,8)
    >>> 2

    返回值:int类型
    编码

    格式:x.encode()

    #指定字符串的编码格式

    例如:x.encode(encoding='utf-8')#转换为utf-8格式
    返回值:bytes
    以什么为结尾

    格式:x.endswith(str,index1,index2)

    #指定字符串的开始和结束范围,判断所选区域是否是以指定字符串结尾

    例如:x = 'adfd'

    print(x.endswith('fd',2,3))
    >>> True

    返回值:bool
    把t转换为空格

    格式:x.expandtabs()

    #默认开头到\t为8个字节,不足以空格填充

    例如:x = 'i amt At 好 boy'

    print(x.expandtabs())
    >>> 'i am     A       好 boy'

    返回值:str
    查找

    格式:x.find(str,index1,index2)

    #指定开始和结束的范围,查找指定区域内是否由指定的字符串(只返回查找到第一个的索引值)

    例如:x = 'asdfdsfsafsaf'

    print(x.find('df',1,8))
    >>> 2

    返回值:int类型
    注:如果find未查找到,将返回为-1

    格式化

    格式:x.format(*args)

    #字符串的格式化可以有参数,可以无参数,可以是索引值参数,也可以是关键字参数
    1. 无参数

      例如:s1 = 'I {} {} {}'   
          print(s1.format('love','you','!'))
          >>> 'I love you !'
    2. 索引参数

      例如:s1 = 'I {0} {1} {0} {1}'
          print(s1.format('love','you'))
          >>> 'I love you love you'
       注:使用索引参数时,只能按顺序,从索引0开始
    3. 关键字参数

      例如:s1 = 'I {m} {n}'
          print(s1.format(m = 'love',n = 'you'))
          >>> 'I love you'
    4. 格式限定符
      填充常和对齐一起使用:

       ^ < > 分别是居中,左对齐和右对齐,后面带宽度
       : 后面带填充的字符,只能是一个字符,默认是空格
      例如:

      无(位置)参数:s1 = 'I love you {}'

      print(s1.format(', very much !'))

      'I love you , very much !'
      默认居中方法:s1 = 'I love you {:^18}'

      print(s1.format(', very much !'))

      'I love you , very much ! '
      指定字符居中:s1 = 'I love you {:*^18}'

      print(s1.format(', very much !'))

      'I love you , very much !*'
      指定字符左对齐:s1 = 'I love you {:*<18}'

       print(s1.format(', very much !'))

      'I love you , very much !*'
      指定字符右对齐:s1 = 'I love you {:*>18}'

       print(s1.format(', very much !'))

      'I love you *, very much !'

    5. 精度与类型f

      例如:s1 = '圆周率大概是{}'

      print(s1.format(3.1415926))

       >>> '圆周率大概是3.1415926'

      s1 = '圆周率大概是{:.2f}'
      print(s1.format(3.1415926))

       >>> '圆周率大概是3.14'

      s1 = '圆周率大概是{:.2f}'
      print(s1.format(3.1415926))

       >>> '圆周率大概是3.1416'

      注:精度一般和浮点一起使用,取值时使用四舍五入法

    6. 进制操作
      主要的进制为b、d、o、x,分别是二、十、八、十六进制

      例如:

      十进制:s1 = 'The pen values {} yuan!'
      s1 = 'The pen values {:d} yuan!'
      print(s1.format(17))

       >>> 'The pen values 17 yuan!'

      二进制:s1 = 'The pen values {:b} yuan!'
      print(s1.format(17))

       >>> 'The pen values 10001 yuan!'

      八进制:s1 = 'The pen values {:o} yuan!'
      print(s1.format(17))

       >>> 'The pen values 21 yuan!'

      十六进:s1 = 'The pen values {:x} yuan!'
      print(s1.format(17))

       >>> 'The pen values 11 yuan!'
    7. 金融字符,千分位 即,

      例如:s1 = 'The phone is {}$ !'

      print(s1.format(10000000))

       >>> 'The phone is 10000000$ !'

      s1 = 'The phone is {:,}$ !'
      print(s1.format(10000000))

       >>> 'The phone is 10,000,000$ !'

      返回值:str

    查找

    格式:x.index(str,index1,index2)

    #用法和find一样

    返回值:int
    注::当index未查找到,程序将报错

    非符号字符串

    格式:x.isalnum()

    #字符串中可以有大小写,可以有数字,但不可以有符号

    返回值:bool
    纯字母的字符串

    格式:x.isalpha()

    #字符串中可以有大小写,但不可以有数字和符号

    返回值:bool
    纯数字的字符串

    格式:x.isdecimal()

    #字符串中只可以数字

    返回值:bool
    纯数字的字符串

    格式:x.isdigit()

    #字符串中只可以数字

    返回值:bool
    开头字母的字符串

    格式:x.isidentifier()

    #字符串以字母开头,可以是大小写,后面可以有数字,但数字不能开头

    返回值:bool
    全部小写

    格式:x.islower()

    #字符串全部是小写,也可以有数字,数字可以开头,但不能全数字

    返回值:bool
    包含中文数字

    格式:x.isnumeric()

    #字符串中可以有数字,也可以有中文大小写数字

    返回值:bool
    可打印

    格式:x.isprintable()

    #打印为空,则为假

    返回值:bool
    空格

    格式:x.isspace()

    #字符串中只能是空格

    返回值:bool
    标题

    格式:x.istitle()

    #字符串中每个单词首字母大写

    返回值:bool
    全部大写

    格式:x.isupper()

    #字符串中可以有数字,数字可以开头,但必须有大写字母

    返回值:bool
    拼接

    格式:x.join(str)

    #把字符串以指定字符串进行相连

    例如:x = 'abcde'

     print('_'.join(x))
     >>> 'a_b_c_d_e'

    返回值:str
    左对齐

    格式:x.ljust(str)

    #字符串左对齐,需要指定长度,不足长度时可以用指定字符串进行填充(默认以空格填充),当指定长度小于字符串长度,将会左对齐

    例如:x = 'abcde'

     print(x.ljust(12,'*'))
     >>> 'abcde*******'

    返回值:str
    全部小写

    格式:x.lower()

    #字符串中所有单词,所有字母全部小写
    #与casefold()功能一样
    

    返回值:str
    去除左边空格

    格式:x.lstrip()

    #去除对字符串左边的指定字符串,字符串中间和结尾的指定字符串不做处理,默认去除的是空格

    例如:x = 'aaafdfdfaaadfdsaaa'

     print(x.lstrip('a'))
     >>> 'fdfdfaaadfdsaaa'

    返回值:str
    字符串进行分段

    格式:x.partition(str)

    #把字符串以从左到右第一个指定字符串为元素进行分段,以元组形式展现

    例如:x = 'acbadfsadfsdfsd'

     print(x.partition('sa'))
     >>> ('acbadf', 'sa', 'dfsdfsd')

    返回值:tuple
    字符串替换

    格式:x.replace(old,new,count)

    #把字符串中指定的字符串替换为新字符串,默认全部替换,也可以指定替换次数,如果次数超过存在的个数,将全部替换

    例如:x = 'acbadfsadfsdfsd'

     print(x.replace('df','A',7))
     >>> 'acbaAsaAsAsd'

    返回值:str
    右→左 查找

    格式:x.rfind(str,index1,index2)

    #功能同find()一样

    返回值:int
    右→左 查找

    格式:x.rindex(str,index1,index2)

    #功能同index()一样

    返回值:int
    右对齐

    格式:x.rjust(str)

    #字符串右对齐,需要指定长度,不足长度时可以用指定字符串进行填充(默认以空格填充),当指定长度小于字符串长度,将会右对齐

    例如:x = 'adc'

     print(x.rjust(6,'%'))
     >>> '%%%adc'

    返回值:str
    右→左 字符串分段

    格式:x.rpartition(str)

    #把字符串以从右到左第一个指定字符串进行分段,以元组形式展示

    例如:x = 'abccbacbd'

     print(x.rpartition('cb'))
     >>> ('abccba', 'cb', 'd')

    返回值:tuple
    字符串切片

    格式:x.rsplit(str)

    #把字符串以指定字符串进行切片,并以列表的形式展现

    例如:x = 'abccbacbd'

     print(x.rsplit('cb'))
     >>> ['abc', 'a', 'd']

    返回值:list
    去除右边空格

    格式:x.rstrip(str)

    #去除字符串最右边的指定字符串,左边和中间的指定字符串不做处理,默认去除的是空格

    例如:x = 'aaafdfdfaaadfdsaaa'

     print(x.rstrip('a'))
     >>> 'aaafdfdfaaadfds'

    返回值:str
    切片

    格式:x.split()

    #把字符串以指定字符串进行切片,并以列表的形式展现
    #功能同rsplit()一样

    返回值:list
    换行符分段

    格式:x.splitlines()

    #把字符串以换行符进行切片,并以列表的形式展现

    返回值:list
    以什么为开头

    格式:x.startswith(str,index1,index2)

    #指定字符串的开始和结束范围,判断指定区域是否是以指定字符串开头

    例如:x = 'adafsdaf'

     print(x.startswith('da',1,8))
     >>> True

    返回值:bool
    去除两边空格

    格式:x.strip(str)

    #去除字符串两边的指定字符串,中间的指定字符串不做处理,默认去除的是空格

    例如:x = 'aaadfsaaafdsfaaa'

     print(x.strip())
     >>> 'dfsaaafdsf'

    返回值:str
    大小写互转

    格式:x.swapcase()

    #字符串中所有的字母进行大小写相互转换

    例如:x = 'aBcdE'

     print(x.swapcase())
     >>> 'AbCDe'

    返回值:str
    标题化

    格式:x.title()

    #对字符串中所有单词首字母大写,单词中间的大写全部转换为小写

    例如:x = 'asd faDSdsf sdf'

     print(x.title())
     >>> 'Asd Fadsdsf Sdf'

    返回值:str
    全部变大写

    格式:x.upper()

    #字符串中所有字母全部转换为大写

    例如:x = 'DFdgDdfdg'

     print(x.upper())
     >>> 'DFDGDDFDG'

    返回值:str
    左对齐,零填充

    格式:x.zfill()

    #字符串左对齐,指定字符串长度,不足部分以0填充

    例如:x = 'afd'

     print(x.zfill(5))
     >>> '00afd'

    返回值:str
    映射函数

    x.maketrans(*args)

    #把两个字符串进行一一对应,两个字符串长度必须一致

    格式:str.maketrans(str1,str2)

     bytearray.maketrans(str1,str2)
     bytes.maketrans(str1,str2)

    返回值:dict
    映射函数

    x.translate(*args)

    #把maketrans()得到的映射表应用出来

    格式:x.translate(str.maketrans(str1,str2))
    返回值:str

    2019-07-17 22:25:16
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载