• python基本数据类型之字符串(三)


    python基本数据类型之字符串(三)

    转换和判断方法

    在python中,有一些内置方法可以将字符串转化特定形式,而与之对应的一些方法可以判断字符串是否符合某些形式。因此,在这篇文章中,笔者把转换方法和相应的判断方法放在一起进行讲解。
    这些方法包括:capitalize、casefold、lowerislower、upperisupper、maketrans ranslate、swapcase、titleistitle

    1、capitalize、title、istitle
    capitalize和title方法都是将英文首字母转换成大写。不同的是,capitalize是将第一个英文单词的首字母转换为大写,一般用于英文语句;而title是将所有的英文单词首字母转换为大写,一般用于英文标题。istitle则是用来判断文本是否是标题形式。

    s = 'help children tomorrow'
    v = s.capitalize()
    print(v)
    v1 = s.istitle()
    print(v1)
    v2 = s.title()
    print(v2)
    

    打印结果:

    Help children tomorrow
    False
    Help Children Tomorrow
    

    如果将文本中的空格删除,则title只能将首字母转换为大写,因此可以推知title方法是按照空格来截取单词,并将每个单词的首字母转换为大写。

    2、lower、islower、upper、isupper
    lower是将所有的字符串中所有的英文字母转换为小写,upper则是转换为大写。与此对应的,islower和isupper是来判断字符串中的字母是否全为小写或全为大写。

    s = 'for The King'
    s1 = 'all is lower'
    s2 = 'ALL IS UPPER'
    
    v = s.islower()
    v1 = s1.islower()
    print(v)
    print(v1)
    
    v2 = s.isupper()
    v3 = s2.isupper()
    print(v2)
    print(v3)
    
    trans_v1 = s1.upper()
    trans_v2 = s2.lower()
    print(trans_v1)
    print(trans_v2)
    

    打印结果:

    False
    True
    False
    True
    ALL IS LOWER
    all is upper
    

    3、casefold
    casefold可以将多种语言中的字符进行大小写转换,也就是根据某种语言中的对应关系,将大写字符转换为小写字符。

    s = 'WhatOfekfeFuclKK'
    v = s.casefold()
    print(v)
    

    打印结果:whatofekfefuclkk

    4、swapcase
    swapcase方法将字符串中的大写转换为小写、小写转换为大写,这种转换是同时进行的。

    s = 'HELLO, i am tom'
    v = s.swapcase()
    print(v)
    

    打印结果:hello, I AM TOM

    5、maketrans、translate
    maketrans方法可以创建自定义的字符对应关系,translate方法则根据所创建的自定义关系对字符串中的字符进行替换。
    首先是根据指定字符串创建对应关系。

    s = 'abcde'
    s1 = '12345'
    r = str.maketrans(s, s1)
    print(r)
    

    打印结果:{97: 49, 98: 50, 99: 51, 100: 52, 101: 53}
    可以看到,r是一个自定义的字典,其中字符被转换成对应的unicode码值。
    然后可以参照这个字典对字符串中相应的字符进行转换。

    v = 'hahaeiejfgjenbowclsd'
    new_v = v.translate(r)
    print(new_v)
    

    打印结果:h1h15i5jfgj5n2ow3ls4,其中的'abcde'被替换成了'12345'。

  • 相关阅读:
    Codeforces 791B. Bear and Friendship Condition 联通快 完全图
    SHU oj 422 风力观测 线段树
    hdu 5833 Zhu and 772002 高斯消元
    Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) E. Cards Sorting 树状数组
    Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) D. Office Keys time limit per test2 seconds 二分
    Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals) E. DNA Evolution 树状数组
    Educational Codeforces Round 25 E. Minimal Labels 拓扑排序+逆向建图
    hdu 3864 D_num Pollard_rho算法和Miller_Rabin算法
    hdu 3861 The King’s Problem trajan缩点+二分图匹配
    Codeforces Round #420 (Div. 2) E. Okabe and El Psy Kongroo 矩阵快速幂优化dp
  • 原文地址:https://www.cnblogs.com/guyexiangyun/p/10200038.html
Copyright © 2020-2023  润新知