
前言:
最近得了急性胃腸炎(草),所以咕咕咕了好幾天,等過段時間一定好好肝文,這次就發一發前幾年學Python時自己記的筆記吧,還是和之前一樣,適合用來復習過一遍基礎,并不適合從零開始,

一、變數
0x00 變數的定義
📚 Python 在定義變數時,并不需要宣告變數型別,

0x01 變數的型別
📚 為了更充分地利用記憶體空間,更有效率地管理記憶體,變數有不同的型別,Python中的物件分類:

0x02 查看變數型別
📚 type() 獲取變數型別:
![]()
💬 代碼演示:
a = 10;
print(a, type(a))
🚩 運行結果: 10 <class 'int'>
0x03 賦值方式
📚 一般賦值:

📚 鏈式賦值:

💬 交換兩個變數:

ROW_TWO原理: python兩個數值互換(淺析a,b=b,a原理)_土豆洋芋山藥蛋的博客-CSDN博客
二、識別符號和關鍵字
0x00 識別符號的命名規則
📚 Python 中的識別符號是區分大小寫的!
![]()
0x01 命名規則和方法
📚 大駝峰命名法、小駝峰命名法…… Python 中推薦使用下劃線 "_"
![]()
0x02 關鍵字(保留字)
📚 查看關鍵字:(這里 import 可以先理解為C語言中的 #include)


三、Python的一些性質
0x00 垃圾回識訓制
當一個常量被生成,會佔用一份記憶體,這時候如果有變數指向該常量,那么該常量的參考計數為1,Python 虛擬機規定,當一個常量的參考計數為0,也就是沒有變數指向的時候,該常量占用的記憶體就會被回收,Python 采用的是參考計數機制為主,標記 - 清除和分代收集兩種機制為輔的策略,
name = user = "hello"
👆 變數name,變數user指向常量“hello”這個記憶體
📚 查看 id 的方式:
![]()
將 id(name) 和 id(user) 對比后可以發現,他們指向的 id 相同,那么說明有兩個指標指向 "hello" 這個記憶體!
📚 洗掉:
![]()
💬 將 name 和 user 洗掉后我們再次訪問 name 和 user,結果如下:
del(name)
del(user)

💡 因為指向 "hello" 的所有指標已經被洗掉了,此時參考計數為0!
0x01 Python 弱型別語言
📚 Python 是一個弱變數的語言,Python的變數即用即生成,變數的型別由值來決定,
A = 1
A = "one"
四、輸出和輸入
0x00 print 輸出
![]()
0x01 input 輸出
![]()
0x02 Python2 版本
在Python2中,獲取鍵盤輸入的方法是採用 raw_input() 和 input() 兩種函式,raw_input() 的小括號中放入的是提示資訊,在從鍵盤獲取了資料之后,會存放到等號左邊的變數中,raw_input() 會把用戶輸入的任何值都作為字串來對待,input() 函式和 rwa_input 類似,但其接受的輸入必須是運算式,input() 接收運算式輸入,并把運算式的結果賦值給等號左邊的變數,raw_input() 輸入的都當成字串,input() 輸入的是輸入的資料型別,
0x03 Python3 版本
raw_input() 被摒棄,保留了 input(),python3 中的 input 繼承了 raw_input 的效果
💬 在Python3中,不 print 就不會列印:
name = input("請輸入姓名:")
print(name)
0x04 input "切分"

names = input("請輸入兩個名字: ")
n1, n2 = names.split()
print("第一個名字:" + n1, "第二個名字:" + n2)
? 還可以這么寫:
n1, n2 = input("請輸入兩個名字:").split()
四、Python數字型別
0x00 數字型別介紹

📚 關于復數:
x = 2+3j
y = 7j
z = -7j
print(type(x))
print(type(y))
print(type(z))
0x01 資料型別轉換
📚 查看資料型別:
![]()
💬 代碼演示:
print(type(1))
print(type(1.0))
🚩 <class 'int'>
<class 'float'>
注:可以通過運算改變數字型別,eg. type(3/2.0) *變浮點型 type(3//2) *取整除,變整型
0x02 數字型別運算子
![]()
📚 // 取整數 (拋棄余數):

📚 ** 冪(符號^ ,次方)

0x03 復合運算子
![]()
0x04 關系運算子
💬 代碼演示:
a, b = 10;
print(a==b)
print(a!=b)
print(a>b, a<b)
print(a<=b, a>=b)

0x05 邏輯運算子
![]()
📚 邏輯運算子的用法:

💬 判斷是否是閏年:
year = 2021
if ((year % 4 == 0) and (year % 100 != 0)) or (year % 400 == 0):
print("閏年")
else:
print("不是閏年")
0x06 字串運算

💬 代碼演示:
str1 = "hello" + "world"
print(str1)
str2 = "a" * 5
🚩 helloworld
aaaaa
0x07 成員運算
📚 檢測一個資料是否在指定的容器中:

💬 代碼演示:
str1 = "hello world"
str2 = "hello"
print(str2 in str1)
# >>> True
str1 = "hello world"
str2 = 'z'
print(str2 not in str2)
# >>> True
🚩 True
True
0x08 優先級、
📚 優先級表(由高到低排序)

0x09 Python內建函式(待補充)
📚 內建數值型函式:

💬 代碼演示:
a = pow(2, 3) //# 2**3
b = pow(2, 3, 3) //# 2**3 % 3
print(a)
print(b)
#>>> 8
# 2
res = divmod(17, 4)
print(res)
#>>> (4, 1) #4……1
0x0A 強制型別轉換

五、字串型別
0x00 Python 字串
📚 在Python中,雙引號或者單引號中的資料,就是字串,

0x01 引號

💬 演示:
print("hello world")
'''
hello
nice to meet you
'''
"""
C, C++, Python
Java, Go
"""
0x02 字串當中的特殊字符

0x03 字串格式化操作

💬 字串格式化顯示:
# 列印字串&整數
print("my name is %s, age is %d" % ("xiaoming", 17))
# 列印浮點數
print("my height is %f" % (1.70))
# 變數形式
hobby = "sleep"
print("and my hobby is %s" % hobby)
0x04 索引 - index

📚 取單個元素 [ ] :
print( "abcdef"[2] ) #正取
🚩 'c'
📚 字串截取 [start:end] :包頭不包尾原則,為數學中的集合區間相同
a = "abcdef"
print( a[1:3] )
print( a[:] ) #截取所有字串
print( a[:3]) #從開頭截取到3前面為止
print( a[3:]) #從3截取到字串的最后
🚩 'bc'
'abcdef'
'abc'
'def'
📚 步長截取 [start:end:step]:
切片:[起始:結束:步長]
str1 = "hello world"
print( str1[0:7:2] ) # [:7:2] '0可以省略'
🚩 'hlow'
📚 默認取法 string[start:end:step] 這三個引數都有默認值
start的默認值為0;end默認值為字串結尾元素;step默認值為1;
若 step > 0,則表示正向切片
若 step < 0,則表示反向切片
反取單個元素 [-x]
str1 = "hello world"
print( str1[-1] )
print( str1[-3] )
🚩 'd' 'r'
📚 反字串截取、步長截取:
str1 = "hello world"
print( str1[::-1] ) #反取整個字串
print( str1[::-2] ) #反2步長截取
print( str1[1:9][::-1] )
🚩 'dlrow olleh'
'drwolh'
'row olle'
💬 演示:
str1 = "瞬美目以流眄 ,含言笑而不分"
print( str1[-3] + str1[-2] + str1[-1] ) #取字串拼接
print( str1[-3:] ) # 利用負索引表示
print( str1[0:4] ) # 等同于str[:4] 0可省略
print( str1[:] ) # 全取
print( str1[4:0:-1] ) #倒取 4321(不包括0)
print( str1[::2] ) #跳2取
print( str1[::-1] ) #全部顛倒
🚩
而不分
而不分
瞬美目以
瞬美目以流眄 ,含言笑而不分
流以目美
瞬目流 含笑不
分不而笑言含, 眄流以目美瞬
參考文獻 / 資料
百度百科[EB/OL]. []. https://baike.baidu.com/.
本篇完,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/306436.html
標籤:python
