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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python 基础,不看会后悔哦!

發布時間:2025/3/15 python 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 基础,不看会后悔哦! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

?

1.標準數據類型

  • Number(數字)
  • String(字符串)
  • List(列表)
  • Tuple(元組)
  • Set(集合)
  • Dictionary(字典)

其中

  • 不可變數據:Number(數字)、String(字符串)、Tuple(元組)
  • 可變數據:List(列表)、Dictionary(字典)、Set(集合)

1.1 Number(數字)#

Python3 支持 int、float、bool、complex(復數)。

在Python 3里,只有一種整數類型 int,表示為長整型,沒有 python2 中的 Long。

內置的 type() 函數可以用來查詢變量所指的對象類型。

或者使用 isinstance(a, int)

isinstance 和 type 的區別在于:

  • type()不會認為子類是一種父類類型。
  • isinstance()會認為子類是一種父類類型

1.2 String(字符串)#

Python中的字符串用單引號 ' 或雙引號 " 括起來,同時使用反斜杠 \ 轉義特殊字符。

變量[頭下標:尾下標] 左閉合區間

索引值以 0 為開始值,-1 為從末尾的開始位置。

str = 'Runoob'print (str) # 輸出字符串 print (str[0:-1]) # 輸出第一個到倒數第二個的所有字符 print (str[0]) # 輸出字符串第一個字符 print (str[2:5]) # 輸出從第三個開始到第五個的字符 print (str[2:]) # 輸出從第三個開始的后的所有字符 print (str * 2) # 輸出字符串兩次 print (str + "TEST") # 連接字符串Runoob Runoo R noo noob RunoobRunoob RunoobTEST

Python 使用反斜杠()轉義特殊字符,如果你不想讓反斜杠發生轉義,可以在字符串前面添加一個 r,表示原始字符串

>>> print('Ru\noob') Ru oob >>> print(r'Ru\noob') Ru\noob >>>

注意:

  • 反斜杠可以用來轉義,使用r可以讓反斜杠不發生轉義。
  • 字符串可以用+運算符連接在一起,用*運算符重復。
  • Python中的字符串有兩種索引方式,從左往右以0開始,從右往左以-1開始。
  • Python中的字符串不能改變。
  • 1.3 List(列表)#

    列表中元素的類型可以不相同,它支持數字,字符串甚至可以包含列表(所謂嵌套)。

    列表是寫在方括號 [] 之間、用逗號分隔開的元素列表。

    變量[頭下標:尾下標] 左閉合區間

    索引值以 0 為開始值,-1 為從末尾的開始位置。

    注意:

  • List寫在方括號之間,元素用逗號隔開。
  • 和字符串一樣,list可以被索引和切片。
  • List可以使用 + 操作符進行拼接。
  • List中的元素是可以改變的。
  • 截取時可以接收第三個參數,作用是截取的步長
  • r1 = [] r1.append(1)

    1.4 Tuple(元組)#

    元組(tuple)與列表類似,不同之處在于元組的元素不能修改。元組寫在小括號 () 里,元素之間用逗號隔開。

    其實,可以把字符串看作一種特殊的元組。

    雖然tuple的元素不可改變,但它可以包含可變的對象,比如list列表。

    構造包含 0 個或 1 個元素的元組比較特殊,所以有一些額外的語法規則:

    tup1 = () # 空元組 tup2 = (20,) # 一個元素,需要在元素后添加逗號

    注意:

  • 與字符串一樣,元組的元素不能修改。
  • 元組也可以被索引和切片,方法一樣。
  • 注意構造包含 0 或 1 個元素的元組的特殊語法規則。
  • 元組也可以使用+操作符進行拼接。
  • 1.5 Dict (字典)#

    r2 = {} r2["k1"] = "v1"

    1.6 Set(集合)#

    2.數字和字符串拼接#

    id = 1 session_key = str(id) + '_user'

    3. if 條件#

    3.1 短路原則#

    條件判斷遵循短路原則,第一個條件判斷之后如果能確定整個 if 表達式的值,那就不再判斷下一個了

    a = 0 b = 1 if (a > 0) and (b / a > 2):print("yes") else:print("no") 結果:noif (a > 0) or (b / a > 2):print("yes") else:print("no") 結果:報除零錯

    3.2 三元表達式#

    res = true if 1 > 0 else false

    3.3 漢諾塔#

    a b c 三個位置分別對應 開始位置、中間借助的位置、最終位置def hano(n, a, b, c):if n == 1:print(a, "-->", c)return Nonehano(n - 1, a, c, b) # 開始位置是 a,借助 c,把除了最后一個都放到 bprint(a, "-->", c)hano(n - 1, b, a, c) # 開始位置是 b,借助 a,把除了最后一個都放到 chano(3, "A", "B", "C")

    3. 正則#

    import retext = "......" pattern = r"..." regex = re.compile(pattern, re.IGNORECASE) # 忽略大小寫,先進行編譯,返回一個正則對象 result = regex.function(text)

    3.1 查找一項#

  • search: 查找任意位置的匹配項
  • match: 從字符串開頭匹配,如果開頭第一個字符就不配,返回 None
  • fullmatch: 整個字符串和正則完全匹配才行,否則返回 None
  • 3.2 查找多個匹配項#

  • findall: 從字符串任意位置查找,返回一個列表
  • finditer: 從字符串任意位置查找,返回一個迭代器
  • 列表是一次性生成在內存中,而迭代器是需要使用時一點一點生成出來的,內存使用更優。所以如果存在大量的匹配項,使用 finditer 更好一點。

    3.3 分割#

    re.split(pattern, string, maxsplit=0, flags=0)
    函數:用 pattern 分開 string,maxsplit表示最多進行分割次數,flags表示模式,比如 re.IGNORECASE

    在 不需要正則支持 且 數據量和數次不多 的情況下使用 str.split 函數更合適,反之則使用 re.split 函數。

    3.4 替換#

  • sub: 替換掉字符串中被正則匹配到的字符,返回替換后的字符串
  • subn: 替換掉字符串中被正則匹配到的字符,返回替換后的字符串和替換次數
  • 3.5 其他#

  • re.escape(pattern): 如果 pattern 中存在特殊字符,通過該方法可自動轉義。但是可能存在轉義錯誤問題,所以還是手動轉義更安全。如果大家對Python感興趣的話,可以加一下我們的學習交流摳摳群哦:649825285,免費領取一套學習資料和視頻課程喲~
  • re.purge(): 清除正則緩存
  • 總結

    以上是生活随笔為你收集整理的Python 基础,不看会后悔哦!的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。