zoukankan      html  css  js  c++  java
  • python学习笔记-常用数据类型之字符串

    内置方法

    test="stevenZhou"
    
    #capitalize()
    v=test.capitalize()#首字母大写
    #casefold()
    v=test.casefold()#所有变小写
    #lower()
    v=test.lower()#比较而言,casefold更牛,很多未知的也能变小写
    #center()
    v=test.center(20,"*")#设置宽度20并将内容居中,"*"代表用*填充一个字符,可有可无
    #count()
    v=test.count("e")#包含字符的数量,结果为2
    v=test.count("e",3,6)#3代表从位置3开始找,6代表结束位置
    
    # encode 略
    # decode
    #endswith()
    v=test.endswith("ou")#是否是以ou结尾
    #startswith()
    v=test.startswith("ex")#是否是以ex开头
    #find()
    v=test.find("en")#从开始位置往后找,找到第一个之后,获取其位置
    #find("e",3,8)#结果:4   从开始位置3,结束位置8查找
    
    #format()
    test1="i am {name}"
    v=test1.format(name="steven")#将字符串中的占位符替换成指定的值
    test1="i am {0},age {1}"
    v=test1.format("steven",19)
    test1="i am {name},age {a}"
    v=test1.format_map({"name":"mark","a":19})#格式化,传入的值是字典类型
    
    #index()
    v=test.index("v")#位置find,但是找不到会报错,很小用,忽略
    #isalnum()
    v=test.isalnum()#判断字符串是否只是字母和数字
    #expandtabs()
    test="username	email	password
    jobs	jobs@qq.com	124"
    v=test.expandtabs(20) #以20进行断句找	,找到	不足20的,用空格补齐
    
    #isalpha()
    v=test.isalpha() #判断是否是字母(汉字)
    #isdigit()
    v=test.isdigit()#判断是否是数字  "②"判断为true ,更厉害
    #isdecimal()
    v=test.isdecimal()#判断是否数字
    #isnumeric()
    v=test.isnumeric()#是否是数字,"二","②"也能判断为true
    #isidentifier()
    v=test.isidentifier()#判断是否是标识符(字母,数字,下划线) 例:定义类时可以使用
    #isprintable()
    v=test.isprintable()#字符串中是否存在不可显示的字符,有则false。比如
    	
    
    #isspace()
    v=test.isspace()#判断是否全是空格
    #istitle()
    v=test.istitle()#判断是否是标题(所有首字母大写)如:'Hello Word'判断为True
    #title()
    v=test.title()#转化成标题
    
    #join() 将字符串中的每一个元素按指定分隔符进行拼接
    test="你是凤儿我是沙"
    t=' '
    v=t.join(test) #结果为:“你 是 凤 儿 我 是 沙”
    
    #ljust()
    v=test.ljust(20,"*")#用*填充到右边,填满20个
    #rjust()
    v=test.rjust(20,"*")#
    #zfill()
    v=test.zfill(20)#用0填充20个字符,很少用
    #lower()
    v=test.lower()#变成小写
    #upper()
    v=test.upper()#变成大写
    
    #lstrip()
    test="assssteveasas"
    v=test.lstrip()#取出左边空格,还可以去除
    ,	
    #rstrip()
    v=test.rstrip()#取出右边空格
    #strip()
    v=test.strip()#取出两边空格
    
    v=test.lstrip("as")#从左移除指定字符,指定字符是长字符串,优先移除较多字符,如"as",存在"assss"时会优先移除整个,strip(),rstrip()同理
    
    #translate()
    # 创建对应关系,然后进行替换
    v="asiduffasd"
    m=str.maketrans("aeiou","12345")#{97: 49, 101: 50, 105: 51, 111: 52, 117: 53}
    new_v=v.translate(m) #1s3d5ff1sd
    #partition()
    test="testasdstdafy"
    v=test.partition("s")#从左找到第一个s进行分割,分成3部分的一个元组。结果:('te', 's', 'tasdstdafy'),包含了分割的字符串“s”
    #rpartition()
    v=test.rpartition("s")#从右找第一个进行分割
    #split()
    v=test.split("s",2)#用s进行分割,最多用2次分割。结果为['te', 'ta', 'dstdafy']
    #rsplit()
    v=test.rsplit("s")#同split(),从右开始分割
    #splitlines()
    test="asid
    uff
    asd"
    v=test.splitlines()#根据换行分割,带True,False参数,是否保留换行
    
    #startswith()
    v=test.startswith("t")#是否是以“t”开头
    #endswith()
    v=test.endswith("t")#是否以“t”结尾
    #swapcase()
    v=test.swapcase()#大小写互换
    
    #replace()
    test="stevensteven"
    v=test.replace("e","job",2)#参数2代表替换前2个

    归纳总结

    1、字符串一旦创建,不可修改,一旦修改或者拼接,都会造成重新生成字符串

    2、七个方法必须会

          join split find strip upper lower replace

    3、其他用法

    #索引,获取字符串中的某一个字符
    test="stevenste"
    v=test[3]
    #切片
    v=test[1:3] #获取>=0和<3的切片
    #len()
    v=len(test)#长度,获取字符串由几个字符组成,在python2.7里汉字由3个字符组成,python3里一个,字符串,列表,元组都可以用这方法
    #for循环
    for i in test:
        print(i)
    #range()
    #break和continue在for循环中也能用,range帮助生成连续的数字,第三个数字设置步长
    v=range(0,100,5)
    for i in v:
        print(i)
  • 相关阅读:
    【全网最全的博客美化系列教程】文章总目录
    不要再被骗了------QQ盗号原理大揭秘
    努力的孩子运气不会太差,跌宕的人生定当更加精彩
    我的七条人生哲理以及个人学习方法总结
    博客园自定义页面风格设计 后续篇(页面设计模式及代码高亮 鼠标点击效果升级)
    【资料分享】500篇干货解读人工智能新时代
    我的大一生活以及在博客园写博客的这一年
    博客园自定义页面风格设计
    ACM退役记&&回忆录
    留言板
  • 原文地址:https://www.cnblogs.com/steven223-z/p/12466824.html
Copyright © 2011-2022 走看看