zoukankan      html  css  js  c++  java
  • Python-字符串类型

    字符串类型str
    ======================================基本使用======================================
    1、用途:记录描述性值的状态,比如名字、性别等

    2、定义方式
    msg='hello world' #msg=str('hello world')

    类型转换: 可以把任意类型专场字符串类型
    res1=str(10)
    res2=str(10.3)
    res3=str([1,2,3])
    res4=str({'x':1}) #res4="{'x':1}"

    print(type(res1))
    print(type(res2))
    print(type(res3))
    print(type(res4))


    3、常用操作+内置的方法
    优先掌握的操作:(*****)
    1、按索引取值(正向取+反向取) :只能取
    msg='hello world'

    print(type(msg[0]))
    print(msg[-1])

    msg[0]='H'


    2、切片(顾头不顾尾,步长)
    msg='hello world'
    print(msg[0]+msg[1]+msg[2])
    print(msg[0:5])
    print(msg[0:5:2]) #0 2 4
    print(msg[0:]) #
    print(msg[:]) #


    print(msg[-1:-5:-1]) #-1 -2 -3 -4
    print(msg[::-1]) #-1 -2 -3 -4

    3、长度len:统计的是字符的个数
    msg='h你d'
    print(len(msg))

    4、成员运算in和not in:判断一个子字符串是否存在与一个大字符串中
    msg='hello world'
    print('ho' in msg)
    print('ho' not in msg)


    5、移除空白strip:移除字符串左右两边的某些字符
    msg=' hello '

    print(msg.strip(' '))
    print(msg.strip())
    print(msg)

    name=input('name>>>: ').strip() #name='egon'
    pwd=input('password>>>: ').strip()

    if name == 'egon' and pwd == '123':
    print('login successfull')
    else:
    print('username or password error')

    msg='***h**ello**********'
    print(msg.strip('*'))

    msg='*-=+h/ello*(_+__'
    print(msg.strip('*-=+/(_'))


    6、切分split: 把有规律的字符串切成列表从而方便取值
    info='egon:18:180:150'
    res=info.split(':',1)
    print(res)
    print(res[1])


    info='egon:18:180:150'
    res=info.split(':')
    print(res)


    s1=res[0]+':'+res[1]+':'+res[2]+':'+res[3]
    s1=''
    for item in res:
    s1+=item
    print(s1)


    s1=':'.join(res)
    print(s1)

    ':'.join([1,2,3,4,5])

    7、循环
    for i in 'hello':
    print(i)



    需要掌握的操作(****)
    1、strip,lstrip,rstrip
    msg='*****hello****'
    print(msg.strip('*'))
    print(msg.lstrip('*'))
    print(msg.rstrip('*'))

    2、lower,upper
    msg='AaBbCc123123123'
    print(msg.lower())
    print(msg.upper())

    3、startswith,endswith
    msg='alex is dsb'
    print(msg.startswith('alex'))
    print(msg.endswith('sb'))

    4、format的三种玩法
    msg='my name is %s my age is %s' %('egon',18)
    print(msg)

    msg='my name is {name} my age is {age}'.format(age=18,name='egon')
    print(msg)

    了解
    msg='my name is {} my age is {}'.format(18,'egon')
    msg='my name is {0}{0} my age is {1}{1}{1}'.format(18,'egon')
    print(msg)


    5、split,rsplit
    cmd='get|a.txt|33333'
    print(cmd.split('|',1))
    print(cmd.rsplit('|',1))


    6、replace
    msg='kevin is sb kevin kevin'
    print(msg.replace('kevin','sb',2))

    7、isdigit #当字符串内为纯数字时结果为True
    res='11111'
    print(res.isdigit())
    int(res)

    age_of_bk=18
    inp_age=input('your age: ').strip()
    if inp_age.isdigit():
    inp_age=int(inp_age) #int('asdfasdfadfasdf')
    if inp_age > 18:
    print('too big')
    elif inp_age < 18:
    print('to small')
    else:
    print('you got it')
    else:
    print('必须输入纯数字')



    了解(**)
    1、find,rfind,index,rindex,count
    print('xxxkevin is sb kevin'.find('kevin'))
    print('xxxkevin is sb kevin'.index('kevin'))
    print('xxxkevin is sb kevin'.rfind('kevin'))
    print('xxxkevin is sb kevin'.rindex('kevin'))


    res='xxxkevin is sb kevin'.find('kevasdfsadfin')
    print(res)

    res='xxxkevin is sb kevin'.index('kevasdfsadfin')



    print('kevin is kevin is kevin is sb'.count('kevin'))

    2、center,ljust,rjust,zfill
    print('egon'.center(50,'*'))
    print('egon'.ljust(50,'*'))
    print('egon'.rjust(50,'*'))
    print('egon'.zfill(50))

    3、captalize,swapcase,title
    print('my name is kevin'.capitalize())
    print('AaBbCc'.swapcase())
    print('my name is kevin'.title())

    4、is其他
    name='egon123'
    print(name.isalnum()) #字符串由字母或数字组成
    print(name.isalpha()) #字符串只由字母组成

    print(name.islower())
    print(name.isupper())
    name=' '
    print(name.isspace())
    msg='I Am Egon'
    print(msg.istitle())




    ======================================该类型总结====================================
    存一个值

    有序

    不可变(1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash)
    x='aaa'
    print(id(x))
    x='bbb'
    print(id(x))
  • 相关阅读:
    c# influxDB
    ASP.NET Web简单开发
    vue3 最长递增子序列 diff优化
    【转】Android Kotlin协程 coroutines 理解
    基于混合模型的语音降噪实践
    语音降噪论文“A Hybrid Approach for Speech Enhancement Using MoG Model and Neural Network Phoneme Classifier”的研读
    基于sinc的音频重采样(二):实现
    基于sinc的音频重采样(一):原理
    深度学习中神经网络模型的量化
    嵌入式设备上卷积神经网络推理时memory的优化
  • 原文地址:https://www.cnblogs.com/huangdong-/p/9995705.html
Copyright © 2011-2022 走看看