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

發布: 2023-07-25 16:14:49
轉載
1284 人瀏覽過

為什麼需要字串?

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

介绍字符常见的操作。

<1> find

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

语法:

lstr.find(str, start=0, end=len(lstr))
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps fdsfs&#39;
print(lstr.find("Museum"))


print(lstr.find("dada"))
登入後複製

运行结果:

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

<2> index

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

语法:

lstr.index(str, start=0, end=len(lstr))
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps fdsfs&#39;


print(lstr.index("dada"))
登入後複製

运行结果:

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

<3> count

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

语法:

lstr.count(str, start=0, end=len(lstr))
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.count("s"))
登入後複製

运行结果:

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

<4> replace

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

1str.replace(str1, str2,  1str.count(str1))
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.replace("s", "ttennd"))
登入後複製

运行结果:

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

<5> split

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

1str.split(str=" ", 2)
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.split("to", 5))
登入後複製

运行结果:

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

<6> capitalize

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

1str.capitalize()
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.capitalize())
登入後複製

运行结果:

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

<7> title

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

>>> a = "hello itcast"
>>> a.title()
&#39;Hello Itcast&#39; #运行结果
登入後複製

<8> startswith

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

1str.startswith(obj)
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.startswith(&#39;we&#39;))
登入後複製

运行结果:

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

<9> endswith

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

1str.endswith(obj)
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.endswith(&#39;hfs&#39;))
登入後複製

运行结果:

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

<10> lower

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

1str.lower()
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.lower())
登入後複製

运行结果:

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

<11> upper

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

1str.upper()
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;


print(lstr.upper())
登入後複製

运行结果:

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

<12> strip

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

>>> a = "\n\t itcast \t\n"
>>> a.strip()
&#39;itcast&#39;  #运行结果
登入後複製

<13> rfind

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

1str.rfind(str, start=0,end=len(1str) )
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;
print(lstr.rfind(&#39;eijing&#39;))
登入後複製

运行结果:

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

<14> rindex

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

1str.rindex( str, start=0,end=len(1str))
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;
print(lstr.rindex(&#39;eijing&#39;))
登入後複製

运行结果:

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

<15> partition

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

1str.partition(str)
登入後複製

例:

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;
print(lstr.partition(&#39;eijing&#39;))
登入後複製

运行结果:

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

<16> join

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

lstr = &#39;welcome to Beijing Museumitcpps  fdsfs&#39;
str=&#39;233&#39;
lstr.join(str)
li=["my","name","is","LY"]
print(str.join(li))
登入後複製

运行结果:

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


六、总结

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

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

相關標籤:
來源:Go语言进阶学习
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板