首頁  >  文章  >  後端開發  >  盤點Python基礎之字串的那些事兒

盤點Python基礎之字串的那些事兒

Go语言进阶学习
Go语言进阶学习轉載
2023-07-25 16:14:491280瀏覽

為什麼需要字串?

當打來瀏覽器登入某些網站的時候,需要輸入密碼,瀏覽器把密碼傳送到伺服器後,伺服器會對密碼進行驗證,其驗證過程是把之前保存的密碼與本次傳遞過去的密碼進行對比,如果相等,那麼就認為密碼正確,否則就認為不對;伺服器既然想要儲存這些密碼可以用資料庫(例如MySQL)去實現。

當然為了簡單起見,咱們可以先找個變數把密碼儲存起來即可;那麼怎麼儲存有字母的密碼呢?這時就要用到字串。


一、Python中字串的格式

如下定義的變數a,儲存的是數字類型的值。

   a = 100

如下定義的變數b,儲存的是字串類型的值。

    b = "hello itcast.cn"
    或者
    b = 'hello itcast.cn'

小總結:

  • #雙引號或單引號中的數據,就是字串

二、字符串输出

例:

   name = 'ming'
    position = '讲师'
    address = '中山市平区建材城西路金燕龙办公楼1层'


    print('--------------------------------------------------')
    print("姓名:%s"%name)
    print("职位:%s"%position)
    print("公司地址:%s"%address)
    print('--------------------------------------------------')

结果:

   --------------------------------------------------
    姓名:ming
    职位:讲师
    公司地址:中山市昌平区建材城西路金燕龙办公楼1层
    --------------------------------------------------

三、字符串输入

input通过它能够完成从键盘获取数据,然后保存到指定的变量中;

注意:input获取的数据,都以字符串的方式进行保存,即使输入的是数字,那么也是以字符串方式保存。

例:

   userName = input('请输入用户名:')
    print("用户名为:%s"%userName)


    password = input('请输入密码:')
    print("密码为:%s"%password)

结果:(根据输入的不同结果也不同)

盤點Python基礎之字串的那些事兒


四、下標與切片

1. 下標索引

所謂 #「下標」,就是編號,就好比超市裡的儲存櫃的編號,透過這個編號就能找到對應的儲存空間。

生活中的"下標"

超市儲物櫃

盤點Python基礎之字串的那些事兒


##字串中"下標"的使用

列表與元組支援下標索引好理解,字串其實就是字元的陣列,所以也支援下標索引。

如果有字串:name = 'abcdef'

,記憶體中的實際儲存如下:

盤點Python基礎之字串的那些事兒

如果想取出部分字符,那麼可以透過下標
的方法,(注意Python中下標從0 開始)

#######
  name = 'abcdef'


   print(name[0])
   print(name[1])
   print(name[2])

运行结果:

盤點Python基礎之字串的那些事兒

2. 切片的概念:

切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。

3. 切片的语法:[起始:结束:步长]

注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。

    我们以字符串为例讲解。

    如果取出一部分,则可以在中括号[]中,使用 :

例:

     name = 'abcdef'


     print(name[0:3]) # 取 下标0~2 的字符

运行结果 :

盤點Python基礎之字串的那些事兒

例:

     name = 'abcdef'


     print(name[0:5]) # 取 下标为0~4 的字符

运行结果:

盤點Python基礎之字串的那些事兒

例:

     name = 'abcdef'


     print(name[3:5]) # 取 下标为3、4 的字符

运行结果:

盤點Python基礎之字串的那些事兒

例:

    name = 'abcdef'


     print(name[2:]) # 取 下标为2开始到最后的字符

运行结果:

盤點Python基礎之字串的那些事兒

例:

   name = 'abcdef'


     print(name[1:-1]) # 取 下标为1开始 到 最后第2个  之间的字符

运行结果:

盤點Python基礎之字串的那些事兒

>>> a = "abcdef"
 >>> a[:3] #运行结果
 'abc'  
 >>> a[::2]  #运行结果
 'ace'
 >>> a[5:1:2]   
 ''  #运行结果
 >>> a[1:5:2]
 'bd' #运行结果
 >>> a[::-2]
 'fdb'  #运行结果
 >>> a[5:1:-2]
 'fd'   #运行结果

 

五、字符串常见16种操作

以字符串'lstr = 'welcome to Beijing Museumitcpps fdsfs',为例。

介绍字符常见的操作。

f35d6e602fd7d0f0edfa6f7d103c1b57 find

检测 str 是否包含在 lstr中,如果是返回开始的索引值,否则返回-1。

语法:

lstr.find(str, start=0, end=len(lstr))

例:

lstr = 'welcome to Beijing Museumitcpps fdsfs'
print(lstr.find("Museum"))


print(lstr.find("dada"))

运行结果:

盤點Python基礎之字串的那些事兒

2cc198a1d5eb0d3eb508d858c9f5cbdb index

跟find()方法一样,只不过如果str不在 lstr中会报一个异常。

语法:

lstr.index(str, start=0, end=len(lstr))

例:

lstr = 'welcome to Beijing Museumitcpps fdsfs'


print(lstr.index("dada"))

运行结果:

盤點Python基礎之字串的那些事兒

5bdf4c78156c7953567bb5a0aef2fc53 count

返回 str在start和end之间 在 lstr里面出现的次数

语法:

lstr.count(str, start=0, end=len(lstr))

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.count("s"))

运行结果:

盤點Python基礎之字串的那些事兒

23889872c2e8594e0f446a471a78ec4c replace

把 lstr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.

1str.replace(str1, str2,  1str.count(str1))

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.replace("s", "ttennd"))

运行结果:

盤點Python基礎之字串的那些事兒

43ad812d3a971134e40facaca816c822 split

以 str 为分隔符切片 lstr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串

1str.split(str=" ", 2)

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.split("to", 5))

运行结果:

盤點Python基礎之字串的那些事兒

efbfa0de8737dc86eae413541a49df20 capitalize

把字符串的第一个字符大写。

1str.capitalize()

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.capitalize())

运行结果:

盤點Python基礎之字串的那些事兒

40107655ec554331c1c6222ab67a141c title

把字符串的每个单词首字母大写。

>>> a = "hello itcast"
>>> a.title()
'Hello Itcast' #运行结果

37cd6113a8c348d99fa846f2c6fcea98 startswith

检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False

1str.startswith(obj)

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.startswith('we'))

运行结果:

盤點Python基礎之字串的那些事兒

c161494dba5e0dd0fb25d890c74e408d endswith

检查字符串是否以obj结束,如果是返回True,否则返回 False.

1str.endswith(obj)

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.endswith('hfs'))

运行结果:

盤點Python基礎之字串的那些事兒

eebe431eeb58984ec8915354762c30c6 lower

转换 lstr 中所有大写字符为小写

1str.lower()

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.lower())

运行结果:

盤點Python基礎之字串的那些事兒

8494a7152f0ce9541779ac435cbe6aab upper

转换 lstr 中的小写字母为大写

1str.upper()

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'


print(lstr.upper())

运行结果:

盤點Python基礎之字串的那些事兒

8141c42af04c24b6c356713ee262f06a strip

删除lstr字符串两端的空白字符。

>>> a = "\n\t itcast \t\n"
>>> a.strip()
'itcast'  #运行结果

686111046a42eeee58032dc06d5f19ff rfind

类似于 find()函数,不过是从右边开始查找。

1str.rfind(str, start=0,end=len(1str) )

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'
print(lstr.rfind('eijing'))

运行结果:

盤點Python基礎之字串的那些事兒

636f057c96f4f4778f19692abc05b2ee rindex

类似于 index(),不过是从右边开始。

1str.rindex( str, start=0,end=len(1str))

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'
print(lstr.rindex('eijing'))

运行结果:

盤點Python基礎之字串的那些事兒

96da73a672242ebd5ff412f183fa77ab partition

把lstr以str分割成三部分,str前,str和str后。

1str.partition(str)

例:

lstr = 'welcome to Beijing Museumitcpps  fdsfs'
print(lstr.partition('eijing'))

运行结果:

盤點Python基礎之字串的那些事兒

600cc0b653b1411e40248dd4d217d958 join

mystr 中每个字符后面插入str,构造出一个新的字符串。

lstr = 'welcome to Beijing Museumitcpps  fdsfs'
str='233'
lstr.join(str)
li=["my","name","is","LY"]
print(str.join(li))

运行结果:

盤點Python基礎之字串的那些事兒


六、总结

本文详细的讲解了Python基础 ( 字符串 )。介绍了有关字符串,切片的操作。下标索引。以及在实际操作中会遇到的问题,提供了解决方案。希望可以帮助你更好的学习Python。

以上是盤點Python基礎之字串的那些事兒的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:Go语言进阶学习。如有侵權,請聯絡admin@php.cn刪除