日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python内置数据结构字符串

發(fā)布時間:2024/9/3 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python内置数据结构字符串 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、字符串的創(chuàng)建和賦值

字符串或串(String)是由數(shù)字、字母、下劃線組成的一串字符。Python 里面最常見的類型。 可以簡單地通過在引號間(單引號,雙引號和三引號)包含字符的方式創(chuàng)建它。

一個反斜線加一個單一字符可以表示一個特殊字符,通常是不可打印的字符

下面演示兩種常用的轉(zhuǎn)義。

二、字符串的基本特性

1.連接操作符與重復(fù)操作符

## 1.連接操作符和重復(fù)操作符 name = "world" print ('hello ' + name) print ("*"*30 + '學(xué)生管理系統(tǒng)' + "*"*30)

代碼運(yùn)行效果:

Pycharm常用的快捷鍵:
格式化代碼符合PEP8編碼風(fēng)格(Ctrl+Alt+L)

2.成員操作符

## 2.成員操作符 s = "hello world" print('hello' in s) #True print('world' not in s) #False

3.正向索引和反向索引

  • 索引(s[i] ): 獲取特定偏移的元素
  • 索引的分類: 正向索引, 反向索引
  • ## 3.正向索引和反向索引 s = 'hello' print(s[0]) #'h' print(s[3]) #'l' print(s[-3]) #'l'

    4.切片

    ## 4.切片 """ 切片:切出一部分的內(nèi)容s[start:end:step]s[:end]:s[start:]: """ s = 'hello world' print(s[1:3]) # 從1開始到3-1結(jié)束 print(s[:3]) # 從0開始到3-1 結(jié)束 print(s[:5]) # 前五個字符 print(s[3:]) # 從第3個開始,到結(jié)束所有字符 print(s[::]) # 拷貝字符串 拿出所有字符串 print(s[::-1]) #倒序

    5. 可迭代對象for循環(huán)訪問

    ## 5. 可迭代對象for循環(huán)訪問 s = 'hello' count = 0 for item in s:count +=1print(f'第{count}字符是{item}')


    練習(xí):
    用戶輸入一個字符串,判斷這個字符串是否為回文字符串。

    """ 代碼需求: 用戶輸入一個字符串,判斷這個字符串是否為回文字符串。 """ s = input("輸入字符串:") result = "回文字符串" if s == s[::-1] else "不是回文字符串" print(s + result)

    三、字符串的內(nèi)建方法

    1.字符串的判斷和轉(zhuǎn)換

    下面我們演示三種 是否字母或數(shù)字? 是否數(shù)字? 是否大寫字母?

    s = "helloworld" print(s.isalnum()) ##True print(s.isdigit()) ##False print(s.isupper()) ##False

    2.類型轉(zhuǎn)換

    ## 2.類型轉(zhuǎn)換 print('hello'.upper()) ##HELLO print('HELLO'.lower()) ## hello print('HELLO world'.title()) ## Hello World print('HELLO world'.capitalize()) ## Hello world print('HELLO world'.swapcase()) ##hello WORLD


    實例:

    # 需求:用戶輸入Y或者y都繼續(xù)執(zhí)行代碼 # yum install httpd choice = input ('是否繼續(xù)安裝程序(y|Y):') if choice.lower() == 'y':print("正在安裝程序.....")正在安裝程序

    3.字符串開頭和結(jié)尾的判斷

    # startswith url = 'http://www.baidu.com' if url.startswith('http'):print(f'{url}是一個正確的網(wǎng)址,可以爬取網(wǎng)站') # endswith: # 常用場景:判斷文件類型 filename = 'sun.png' if filename.endswith('.png'):print(f'{filename} 是圖片文件') elif filename.endswith('.mp3'):print(f'{filename}是音樂文件') else:print(f'{filename}是未知文件')


    #pycharm常用的快捷鍵:
    #如何查看方法的源代碼和解釋說明: ctrl鍵按住,
    #鼠標(biāo)移動到你想要查看方法的位置,點擊即可進(jìn)入源碼及方法說明

    4.字符串的數(shù)據(jù)清洗


    數(shù)據(jù)清洗的思路:

    • lstrip: 刪除字符串左邊的空格(指廣義的空格: \n, \t, ’ ')
    • rstrip: 刪除字符串右邊的空格(指廣義的空格: \n, \t, ’ ')
    • strip: 刪除字符串左邊和右邊的空格(指廣義的空格: \n, \t, ’ ')
    • replace: 替換函數(shù), 刪除中間的空格, 將空格替換為空。replace(" ", )
    s = ' hello' print(s) print(s.lstrip()) s = 'hello ' print(s.rstrip()) s = ' hello ' print(s.strip()) s = 'hel lo' print(s.replace(" ",""))

    5.字符串的位置調(diào)整

    print("學(xué)生管理系統(tǒng)".center(50)) print("學(xué)生管理系統(tǒng)".center(50,"*")) print("學(xué)生管理系統(tǒng)".center(50,"-")) print("學(xué)生管理系統(tǒng)".ljust(50,"*")) print("學(xué)生管理系統(tǒng)".rjust(50,"*"))

    效果查看:

    6.字符串的搜索和統(tǒng)計

    s = "hello world" print(s.find("llo")) print(s.index("llo")) print(s.find("xxx")) print(s.index("xxx")) # find如果找到子串, 則返回子串開始的索引位置。 否則返回-1 # index如果找到子串,則返回子串開始的索引位置。否則報錯(拋出異常). print(s.count("l")) ## 判斷字符出現(xiàn)次數(shù)

    6.字符串的分離和拼接

    ip = '172.25.254.100' print(ip.split('.')) items = ip.split('.') print('-'.join(items))

    四、拓展:string模塊

    import random import string print(string.digits) print(string.ascii_letters) print(random.sample(string.digits,2)) print(random.sample(string.ascii_letters,2)) print("".join(random.sample(string.digits,2))) print("".join(random.sample(string.ascii_letters,2)))

    效果:

    # 需求: 生成100個驗證碼, 每個驗證碼由2個數(shù)字和2個字母組成。 for i in range(100):print("".join(random.sample(string.digits,2)) + "".join(random.sample(string.ascii_letters,2)))

    五、練習(xí)題

    1.IP檢測

    編寫一個函數(shù)來驗證輸入的字符串是否是有效的 IPv4 ?
    1). IPv4 地址由十進(jìn)制數(shù)和點來表示,每個地址包含4個十進(jìn)制數(shù),其范圍為 0 - 255, 用(".")分割。
    比如,172.16.253.1;
    2). IPv4 地址內(nèi)的數(shù)不會以 0 開頭。比如,地址 172.16.254.01 是不合法的。

    2.小學(xué)生計算能力測試系統(tǒng)

    練習(xí)題:
    設(shè)計一個程序,用來實現(xiàn)幫助小學(xué)生進(jìn)行算術(shù)運(yùn)算練習(xí),它具有以下功能:
    提供基本算術(shù)運(yùn)算(加減乘)的題目,每道題中的操作數(shù)是隨機(jī)產(chǎn)生的,
    練習(xí)者根據(jù)顯示的題目輸入自己的答案,
    程序自動判斷輸入的答案是否正確并顯示出相應(yīng)的信息。最后顯示正確率

    """設(shè)計一個程序,用來實現(xiàn)幫助小學(xué)生進(jìn)行算術(shù)運(yùn)算練習(xí),它具有以下功能:提供基本算術(shù)運(yùn)算(加減乘)的題目,每道題中的操作數(shù)是隨機(jī)產(chǎn)生的,練習(xí)者根據(jù)顯示的題目輸入自己的答案,程序自動判斷輸入的答案是否正確并顯示出相應(yīng)的信息。最后顯示正確率 """ import random count = 10 right_count = 0 for i in range(count):num1 = random.randint(1,10)num2 = random.randint(1,10)symbol = random.choice(["+","-","*"])reslt = eval (f"{num1}{symbol}{num2}")question = (f"{num1}{symbol}{num2} = ?")print(question)user_answer = int(input("你的答案:"))if user_answer == reslt:print ("正確")right_count +=1else:print("錯誤") print ("正確率:%.2f%%" %(right_count/count*100))

    總結(jié)

    以上是生活随笔為你收集整理的python内置数据结构字符串的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。