Python基础之String常用方法

  1. str():将其他类型的变量转换为str类型,例如:

     name = 'Jack'
    age = 22
    course = ['web','Java','mysql','linux']
    greads = [80,89,96,72]
    print('使用str()函数前:')
    print(type(name))
    print(type(age))
    print(type(course))
    print(type(greads))
    print('使用str()函数后:')
    print(type(str(name)))
    print(type(str(age)))
    print(type(str(course)))
    print(type(str(greads)))

    运行结果为:

    使用str()函数前:
    <class 'str'>
    <class 'int'>
    <class 'list'>
    <class 'list'>
    使用str()函数后:
    <class 'str'>
    <class 'str'>
    <class 'str'>
    <class 'str'>
  2. capitalize:字符串的第一个字母大写,例如:
     s='asdfg hjkl'
    print(s.capitalize())

    运行结果为:

    Asdfg hjkl
  3. casefold:大小写相互转换,例如:
     s1 = 'asdfghjkl'
    s2 = 'ZXCVBNM'
    print(s1.swapcase())
    print(s2.swapcase())

    运行结果为:

    ASDFGHJKL
    zxcvbnm
  4. center:居中,自定义填充字符,例如:
     s = 'COME ON'
    print(s.center(20))#长度为20,以空格填充
    print(s.center(20,'*'))#长度为20,以‘*’填充

    运行结果为:

          COME ON
    ******COME ON*******
  5. count:找子字符串个数,例如:
     s = 'aghyghaya'
    print(s.count('a'))#查找所有字符
    print(s.count('a',3))#从第3个开始查找
    print(s.count('a',3,9))#从第3个到第9-1个
    print(s.count('gh',1,9))#查找‘gh’

    运行及如果为:

    3
    2
    2
    2
  6. encode/decode:编码/解码:
     s1 = '你好,世界!'
    s2 = s1.encode('UTF-8','strict')
    print(s2)
    print(s2.decode())

    运行结果为:

    b'\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\x96\xe7\x95\x8c\xef\xbc\x81'
    你好,世界!
  7. endswith:
     s = 'asdfghjklpoiuytrewq'
    print(s.endswith('ewq'))
    print(s.endswith('jkl',0,9))
    print(s.endswith('sdf'))

    运行结果为:

    True
    True
    False
  8. expandtabs:将\t替换为制定空格数,默认为8个,例如:
     s = 'asd\tfgh\tjkl'
    print(s.expandtabs())
    print(s.expandtabs(2))

    运行结果:

    asd     fgh     jkl
    asd fgh jkl
  9. find/rfind:寻找子字符串,返回索引,找不到返回-1,例如:
     s = 'asdfghasdfcvgfdsa'
    print(s.find('as'))
    print(s.find('as',2))
    print(s.find('as',2,5))
    print(s.find('po')) print('r'.center(10,"*"))
    print(s.rfind('as'))
    print(s.rfind('as',2))
    print(s.rfind('as',2,5))
    print(s.rfind('po'))

    运行结果为:

    
    

    0
    6
    -1
    -1
    ****r*****
    6
    6
    -1
    -1

  10. format
     s = '{0},{1} {2}'
    print(s.format('Hello','my','friends.'))
    s = '{2},{1} {2}'
    print(s.format('Hello','my','friends.'))

    运行结果为:

    Hello,my friends.
    friends.,my friends.
  11. index:寻找子字符串,返回索引,找不到报错,例如:
     s = 'asdfghasdfcvgfdsa'
    print(s.index('as'))
    print(s.index('as',2))
    print(s.index('as',2,5)) #报错
    print(s.index('po')) #报错

    运行结果为:

    0
    Traceback (most recent call last):
    6
    File "E:/.../str-index.py", line 4, in <module>
    print(s.index('as',2,5)) #报错
    ValueError: substring not found
  12. join:Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
     s = 'Hello, world!'
    print('-'.join(s,))
    print('*'.join(s,))

    运行结果为:

    H-e-l-l-o-,- -w-o-r-l-d-!
    H*e*l*l*o*,* *w*o*r*l*d*!
  13. ljust/rjust:Python rjust() 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串。
     s = 'asdfghjkl'
    print(s.ljust(20,'*'))
    print(s.rjust(20,'*'))

    运行结果为:

    asdfghjkl***********
    ***********asdfghjkl
  14. strip/lstrip/lstrip:用于截掉字符串左边或右边的空格或指定字符:
     s1 = '       asdfghjkl       '
    s2 = '****asdfghjkl****'
    print(s1.strip())
    print(s2.strip('*'))
    print(s2.rstrip('*'))
    print(s2.lstrip('*'))

    运行结果为:

    asdfghjkl
    asdfghjkl
    ****asdfghjkl
    asdfghjkl****
  15. lower转换小写:
     s = 'ASDFghJKL'
    print(s.lower())

    运行结果为:

    asdfghjkl
  16. maketrans/translate:用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。
     s1 = "asdfghjkl"
    s2 = ""
    s = str.maketrans(s1,s2)
    str = 'qawsedrftgyhujikolp'
    print(str.translate(s))

    运行结果为:

    q1w2e3r4t5y6u7i8o9p
  17. partition:方法用来根据指定的分隔符将字符串进行分割。
     s = 'asdfghjkl'
    print(s.partition('fgh'))

    运行结果:

    ('asd', 'fgh', 'jkl')
  18. replace:替换字符串:
     s = 'asdfghjkl'
    print(s.replace('df','@#$%^&*'))

    运行结果为:

    as@#$%^&*ghjkl
  19. split/replit:用于移除字符串头尾指定的字符(默认为空格)。
     s = 'asdfghjkl'
    print(s.split('gh'))
    print(s.rsplit('gh'))

    运行结果为:

    ['asdf', 'jkl']
    ['asdf', 'jkl']
  20. splitlines:分割行:
     s = 'asdghjjki\nuytfghj\njjhfkdsj\nhfajhfjdskhfjdskhf'
    print(s.splitlines())

    运行结果为:

    ['asdghjjki', 'uytfghj', 'jjhfkdsj', 'hfajhfjdskhfjdskhf']
  21. startswith:判断字符串是否以某个字符串开始:
     str = 'asdfghjkl'
    print(str.startswith('asd'))
    print(str.startswith('dfg',2))
    print(str.startswith('dfg',2,7))
    print(str.startswith('fds'))

    运行结果为:

    True
    True
    True
    False
  22. strip:去除首部 and/or 尾部的指定的字符,默认空格:
     s1 = '       asdfghjkl       '
    s2 = '****asdfghjkl****'
    print(s1.strip())
    print(s2.strip('*'))
    print(s2.rstrip('*'))
    print(s2.lstrip('*'))

    运行结果为:

    asdfghjkl
    asdfghjkl
    ****asdfghjkl
    asdfghjkl****
  23. swapcase:大小写互换:
     s = 'asdfgHJKL'
    print(s.swapcase())

    运行结果为:

    ASDFGhjkl
  24. title:个单词首字母大写:
     s = 'my love will go on'
    print(s.title())

    运行结果为:

    My Love Will Go On
  25. upper:转大写字母:
     s = 'qwe rfg hbn jk'
    print(s.upper())

    运行结果为:

    QWE RFG HBN JK
  26. zfill:用0填充长度:
     s = 'asdf'
    print(s.zfill(8))

    运行结果为:

    0000asdf
  27. isalnum:如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False。
  28. isalpha:如果 string 至少有一个字符并且所有字符都是字母则返回 True,否则返回 False。
  29. isdecimal:isdecimal()方法检查字符串是否只包含十进制字符。这种方法只存在于unicode对象。
  30. isdigit:如果 string 只包含数字则返回 True 否则返回 False。
  31. isidentifier:如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False。
  32. isupper:如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False。
  33. islower:如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False。
  34. isnumeric:如果 string 中只包含数字字符,则返回 True,否则返回 False。
  35. isprintable:判断字符串的所有字符都是可打印字符或字符串为空。Unicode 字符集中 “Other” “Separator” 类别的字符为不可打印的字符(但不包括 ASCII 的空格(0x20))。
  36. isspace:如果 string 中只包含空格,则返回 True,否则返回 False。
  37. istitle:如果字符串中所有的单词拼写首字母是否为大写,且其他字母为小写则返回 True,否则返回 False。

本文参考链接http://www.runoob.com/python/python-strings.html

Python3入门基础--str常用方法的更多相关文章

  1. python3 入门基础

    1.查看python版本 python -V 2.指定python文件的编码格式 # -*- coding: utf-8 -*- 3.变量命名以字母和下划线(_)开始 _num num 4.注释 # ...

  2. 智普教育Python视频教程之入门基础篇,python笔记

    智普教育Python视频教程之入门基础篇,python笔记 print id()内存地址 type()变量类型 windows命令行下edit命令 python数据类型不需要指定类型 定义hostna ...

  3. 【JulyEdu-Python基础】第 1 课:入门基础

    一些学习资源的收集: 可汗学院 视频 公开课 Grossin 编程教室: 一个非常简单,对初学者非常友好的教程和在线联系 廖雪峰教程 书籍: Python核心编程: 这本书应该是最清楚.最深入全面的书 ...

  4. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  5. Vim入门基础

    公司新员工学习有用到,Vim官网的手册又太大而全,而网上各方资料要么不全面,要么不够基础.在网上搜集各方资料,按照自己的框架整理一份Vim入门基础教程,分享出来.特点是偏向基础,但对入门者来说足够全面 ...

  6. Freemarker的基本语法及入门基础

    freemarker的基本语法及入门基础一.freemarker模板文件(*.ftl)的基本组成部分        1. 文本:直接输出的内容部分        2. 注释:不会输出的内容,格式为&l ...

  7. Python3入门机器学习经典算法与应用

    <Python3入门机器学习经典算法与应用> 章节第1章 欢迎来到 Python3 玩转机器学习1-1 什么是机器学习1-2 课程涵盖的内容和理念1-3 课程所使用的主要技术栈第2章 机器 ...

  8. Greenplum入门——基础知识、安装、常用函数

    Greenplum入门——基础知识.安装.常用函数 2017年10月08日 22:03:09 在咖啡里溺水的鱼 阅读数:8709    版权声明:本文为博主原创,允许非商业性质转载但请注明原作者和出处 ...

  9. Python入门基础学习 三

    Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...

随机推荐

  1. item 24: 区分右值引用和universal引用

    本文翻译自<effective modern C++>,由于水平有限,故无法保证翻译完全正确,欢迎指出错误.谢谢! 博客已经迁移到这里啦 古人曾说事情的真相会让你觉得很自在,但是在适当的情 ...

  2. 如何在C#中使用Dapper(译)

    前言: 对象关系映射(ORM)已经被使用了很长时间,以解决在编程过程中对象模型与数据模型在关系数据库中不匹配的问题. Dapper是由Stack OverFlow团队开发的开源的,轻量级的ORM.相比 ...

  3. MySQL优化技巧总结

    MySQL优化的几个大方向 ① 硬件优化 ② 对MySQL配置参数进行优化(my.cnf)此优化需要进行压力测试来进行参数调整 ③ SQL语句方面的优化 ④ 表方面的优化   硬件优化 cpu,内存, ...

  4. PS调出通透唯美阳光外景女生照片

    1.稍微增加了一点曝光度,让照片更明亮. 2.对比度的话我现在比习惯加一点,而且 一般导入PS之后我还会按照片情况去加对比度. 3.高光的部分一般会拉回来一点,根据照片调. 4.阴影部分加一点的话会让 ...

  5. Requires: libc.so.6(GLIBC_2.14)(64bit)

    centos6 - CentOS 6 - libc.so.6(GLIBC_2.14)(64bit) is needed by - Server Faulthttps://serverfault.com ...

  6. 解决jenkins运行磁盘满的问题

    解决jenkins运行磁盘满的问题 - ling811的专栏 - CSDN博客 https://blog.csdn.net/ling811/article/details/74991899 1.自动丢 ...

  7. JS XMLHttpRequesst对象 http post的五种请求状态

    记录一下js中对http请求的几种状态,下附代码 readyState 存有 XMLHttpRequest 的状态.从 0 到 4 发生变化. 0: 请求未初始化 1: 服务器连接已建立 2: 请求已 ...

  8. [转帖]NUMA

    作者:ibless 来源:CSDN 原文:https://blog.csdn.net/ibless/article/details/80114009 其实 很早之前对这一块有了解 比较多的的是 CCN ...

  9. 创建虚拟目录失败,必须为服务器名称指定“localhost”

    关于微信开发过程,远程调试后,再次打开vs出现项目加载失败的解决办法! 第一步: 第二步:打开编辑的页面,把下图这部分直接注释掉 ok了,再加载一次,就好了!

  10. java中解决小数精度问题

    public class TestDouble { public static void main(String[] args) { Double d1 = 0.1; Double d2 = 0.2; ...