python中字符串数据处理的那些方法------=为了面试武装到牙齿=----==《《满满的硬货》》-----====实用派(1)

简介: python中字符串数据处理的那些方法------=为了面试武装到牙齿=----==《《满满的硬货》》-----====实用派(1)

在写文章之前了解一下什么是字符串?

字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“b”,s[9]=“j”,这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。

官方写的较繁琐,一句话,在python中 “” ‘’ 由单引号,双引号括起来的基本都是字符串,自信点,基本去掉。

了解了字符串,下面我们来了解一下字符串需要进行一些操作而衍生出来的一些方法


字符串的大小写转换 upper、lower、title

1.1、小写变大写

# TODO                鸟欲高飞,必先展翅
# TODO                 向前的人 :Jhon
# TODO   lower   upper   大小写转换
text="my name is tsw"
b=text.upper()    #小写变大写
print(b)

结果:

MY NAME IS TSW

就是将所有的小写字符串变成大写的,需要注意的是,这是将一串字符串全部由小写变为大写

那当字符串有大写的字母是会不会变大写呢?

text="My NAME is Tsw"
b=text.upper()    #小写变大写
print(b)

结果:

MY NAME IS TSW

所以我们得出结论,无论是大写还是小写,upper()都能把字母变成大写


1.2、 小写转换 lower

# TODO   lower   upper   大小写转换
text="My NAME is Tsw"
c=text.lower()
print(c)

结果:

my name is tsw

就是将大写变小写,如果本来就是小写还是会转换一下去覆盖之前的小写



除此之外有没有字符串中首字母大写呢,结果当然是肯定的


1.3、字符串中首字母大写 title

text="my name is tsw"
a=text.title()
print(a)

结果:

My Name Is Tsw

我们可以发现title将原来的字符串首字母大写了,嗯嗯~~,可以这样理解,就相当于字符串中单词,title指文章标题,就相当于字符串的首字母。如果实在无法理解就背下来,一回生,二回熟。


2 、swapcase() 不区分大小写

info_one = 'Python Code Is Good'
info_two = 'PYTHON DJANGO FLASK'
info_three = 'python web so easy'
print(info_one.swapcase())
print(info_two.swapcase())
print(info_three.swapcase())

结果:

pYTHON cODE iS gOOD
python django flask
PYTHON WEB SO EASY

在进行项目是会进行判断操作,例如在询问你是否确定的Y和y,难道真的要强制要求输入的是Y还是y吗,这样未免也太不友好了吧。所以为了用户的体验。


大写便小写,小写变大写

import  random
a=random.randint(1,100)
num=1
while num:
    number=int(input("请输入一个整数:"))
    if number==a:
        print("猜对了,烟花走起")
    elif number>a:
        print("猜大了")
    else:
        print("猜小了")
    num+=1
    if num ==3:
        s=input("请输入需要输入的选项,y表示继续游戏,n表示停止游戏")
        num=1
        if s=="y":
            continue
        else:
            break

结果:image.pngimport randoma=random.randint(1,100)

指 导入random包,random.randint(1,100)指在1~100之间随机生成一个数


好了,问题来了像上面那个想再次游戏必须要输入指定的小写y或者n才可以吗,这样是不是对玩家太不友好了。

加入upper()修改一番

import  random
a=random.randint(1,100)
num=1
while num:
    number=int(input("请输入一个整数:"))
    if number==a:
        print("猜对了,烟花走起")
    elif number>a:
        print("猜大了")
    else:
        print("猜小了")
    num+=1
    if num ==3:
        s=input("请输入需要输入的选项,y表示继续游戏,n表示停止游戏")
        num=1
        if s.upper()=="y":
            continue
        else:
            break

结果:image.png可以发现,大小写都能使用了。体验感这波给满分,想要体验感更好可以设置为 0 或 其他。当设置的条件是y时,就要使用lower(),而不是upper()了。


3.endswitch() 尾端匹配 startswith()首端匹配简而言之就是匹配字符串的最后一个字符

3.1、endswitch() 尾端匹配

address=input("请输入你的地址:")
if address.endswith("村"):
    print("农业户口")
else:
    print("非农业户口")

结果:

请输入你的地址:上海市信息公园村
农业户口

我们可以发现输入的字符串是 上海市信息公园村 ,因为最后一个字符串是村,所以匹配为农业户口

3.2、startswith()首端匹配

根据地址判断你是哪里的人口

# TODO     startswith()
adress=input("请输入你的家庭住址:")
if adress.startswith("上海"):
    print("上海人")
elif adress.startswith("北京"):
    print("北京人")
else:
    print("其他人")

结果:

请输入你的家庭住址:上海市浦东新区
上海人

输入地址上海市浦东新区,根据首字符上海判断你是上海人

不管是endswitch()还是startswith()都是对字符串的首尾端进行匹配,可以匹配一个或者多个字符

目录
相关文章
|
10天前
|
Python
python保存两位小数的几种方法,python2保留小数
python保存两位小数的几种方法,python2保留小数
46 2
|
10天前
|
Python
|
10天前
|
C++ Python
python类方法中使用:修饰符@staticmethod和@classmethod的作用与区别,还有装饰器@property的使用
python类方法中使用:修饰符@staticmethod和@classmethod的作用与区别,还有装饰器@property的使用
9 1
|
10天前
|
存储 编解码 API
python多种方法压缩图片,opencv、PIL、tinypng、pngquant压缩图片
python多种方法压缩图片,opencv、PIL、tinypng、pngquant压缩图片
13 1
|
10天前
|
Python
python的列表的remove()方法、判断if xxx in xx条件比较耗时问题
python的列表的remove()方法、判断if xxx in xx条件比较耗时问题
13 1
|
10天前
|
算法 定位技术 vr&ar
一文了解PnP算法,python opencv中的cv2.solvePnP()的使用,以及使用cv2.sovlePnP()方法标定相机和2D激光雷达
一文了解PnP算法,python opencv中的cv2.solvePnP()的使用,以及使用cv2.sovlePnP()方法标定相机和2D激光雷达
59 0
一文了解PnP算法,python opencv中的cv2.solvePnP()的使用,以及使用cv2.sovlePnP()方法标定相机和2D激光雷达
|
8天前
|
UED Python
探索Python中的魔法方法:打造自定义字符串表示
【8月更文挑战第31天】在Python的世界里,魔法方法是那些以双下划线开头和结尾的特殊方法,它们为类提供了丰富的功能。本文将带你走进这些魔法方法的背后,特别是__str__和__repr__,揭示如何通过它们来定制我们的对象在被打印或转换为字符串时的外观。我们将从基础用法开始,逐步深入到高级技巧,包括继承与重写,最终实现一个优雅的字符串表示方案。准备好了吗?让我们开始这段代码之旅吧!
|
18天前
|
存储 Java
【IO面试题 四】、介绍一下Java的序列化与反序列化
Java的序列化与反序列化允许对象通过实现Serializable接口转换成字节序列并存储或传输,之后可以通过ObjectInputStream和ObjectOutputStream的方法将这些字节序列恢复成对象。
|
18天前
|
XML 存储 JSON
【IO面试题 六】、 除了Java自带的序列化之外,你还了解哪些序列化工具?
除了Java自带的序列化,常见的序列化工具还包括JSON(如jackson、gson、fastjson)、Protobuf、Thrift和Avro,各具特点,适用于不同的应用场景和性能需求。
|
18天前
|
Java
【Java基础面试三十七】、说一说Java的异常机制
这篇文章介绍了Java异常机制的三个主要方面:异常处理(使用try、catch、finally语句)、抛出异常(使用throw和throws关键字)、以及异常跟踪栈(异常传播和程序终止时的栈信息输出)。