Python的基本

瞎闹腾吧發表於2024-06-07

python之基本介紹

(1)什麼是python
python 是一門程式語言
python是一門物件導向,解釋型的動態型別的程式語言
guido van rossunm (吉多*範羅蘇姆)
在1989年發明,第一個公開發行版本與1991年;
python在市面上的版本:
python 2.7 (以前用的非常多)
目前用的版本是3.0 版本
最新的版本3.121版本
目前我們學的3.7版本
(2)什麼是物件導向?
python 中一切皆為物件,對事物的描述和方法系統的定義為一個類,在這個類中的具體的例項,我們就說物件;
例如: 人:類======== lv 物件
(3)什麼解釋型?
python程式執行時無需先進行編譯成二進位制程式碼,直接在執行過程中對語句一條條進行編譯;
例如:java 包裝jdk編譯,python不需要,可以直接編譯
(4)什麼動態型別?
指python程式在執行時可以改變其結構,新的函式可以被引進,已有函式可以被刪除;
(5)python有哪些特點?
簡單 易學 免費開源 可擴充性強 可移植 具有豐富的第三方類和庫
(6)python應用在哪些領域?
網頁開發,視覺化介面開發,系統程式設計,資料分析,網路爬蟲,自動化指令碼開發,資料分析,ai人工智慧,大資料,雲端計算
(7)python的列印的方式?
print()

python的運用

基礎用法

命令列必須要頂格輸入,不能開頭有空格
print('') 列印
括號中必須加上單引號或者雙引號(必須是英文的符號)
在引號中間輸入程式碼指令

註釋

# 註釋內容 或 ctrl+/ 單行註釋
滑鼠選擇多行+ctrl+/ 多行註釋
'''註釋內容''' 自動多行註釋引號中的內容
0

變數

透過定義變數的方法來實現輸出
定義一個變數名稱:字元,下劃線,數字組合
變數名規則:字母或下劃線開頭,不能以數字開頭
引用: print(變數名)
0

檢視字元型別

 檢視字元型別   print(type(變數名))
<class 'int'>  
<class 'str'>
0
引號的用法
單、雙、三引號都能單獨使用;
單引號可以包含雙引號,不能包含單引號和三引號
雙引號中可以包含單引號和三引號,不能包含雙引號
三引號可以包含單引號和雙引號,不能不能包含三引號
三個引號都不能包含本身
0
Python格式輸出
%s :字串 (採用str()的顯示)
%c :單個字元
%d:十進位制整數
%i :十進位制整數
%o:八進位制整數
%x:十六進位制整數
%f:浮點數
%% :字元"%"
#  %s  將int型別轉換成str型別顯示
b = 333
print(type(b))       # <class 'int'>
print(type('%s'%b))  # <class 'str'>

Python的基本

#   %c   只能單個字元
b = '1'
print('%c'%b)

Python的基本

# %d  十進位制整數
b = 15
print('%d'%b)

Python的基本

# %o 八進位制整數
b = 15
print('%o'%b)

Python的基本

# %x 十六進位制整數
b = 15
print('%x'%b)

Python的基本

# %f 浮點數
b = 15
print('%f'%b)

Python的基本

# '進位制%%'    整數百分比
b = 15
print('%d%%'%b)

Python的基本

常用型別表

0
0

python關鍵詞

這些關鍵詞在Python程式設計中擁有特殊的意義,不能用作變數名、函式名或其他識別符號。使用它們時需要遵循Python的語法規則。在編寫程式碼時,應儘量避免使用這些關鍵詞作為變數或函式的名字,以免引發語法錯誤。
False          # 假
input          # 輸入
None           # 無(空)
True           # 真
and            # 和
as             # 作為 (重新命名)
assert         # 斷言
async          # 非同步
await          # 等待
break          # 跳出迴圈
class          # 類
continue       # 繼續
def            # 定義函式
del            # 刪除
elif           # 否則如果
else           # 否則
except         # 捕獲異常
finally        # 最終(無論如何都執行)
for            # 迴圈
from           # 從...匯入
global         # 全域性
if             # 如果
import         # 匯入
in             # 在...中
is             # 是
lambda         # 匿名函式
nonlocal       # 非區域性(引用外層變數)
not            # 非,不是
or             # 或
and            # 與
pass           # 空操作(佔位符)
raise          # 丟擲異常
return         # 返回
try            # 嘗試
while          # 當...時迴圈
with           # 使用(上下文管理器)
yield          # 生成器函式返回資料
list           # 列表
type           # 型別

Python常見的運算子

0

算術運算子

0
a=5
b=6
print(a+b)   #返回值11   a和b相加
print(a-b)   #返回值-1   a和b相減
print(a*b)   #返回值30   a和b相乘
print(a/b)   #返回值0.833a和b相除
print(a%b)   #返回值5  除法中的餘數
print(a**b)  #返回值15625  a的b次方
print(a//b)  #返回值0  a除於b保留整數

賦值運算子

0
a=9
b=2
# a+=b
# print(a)   #返回值11   等同於a=a加b
#
# a-=b
# print(a)    #返回值7   等同於a=a減b
#
# a*=b
# print(a)    #返回值18   等同於a=a乘b
#
# a/=b
# print(a)    #返回值4.5   等同於a=a除b
#
# a**=b
# print(a)    #返回值81   等同於a=a的b次方
#
# a//=b
# print(a)    #返回值4   等同於a=a除b 保留整數
#
# a%=b
# print(a)      #返回值1   等同於a=a除b 的餘數

比較運算子

0
比較運算子的結果永遠為True或False
a=9
b=2
print(a==b)    #返回值False
print(a>b)     #返回值True
print(a<b)     #返回值False
print(a>=b)    #返回值True
print(a<=b)    #返回值False
print(a!=b)    #返回值True

邏輯串運算子

Python的基本
a=5
b=3
c=1
print(a>b and b>c)    #返回值True 與 (兩個條件同時瞞住)
print(a>b and b<c)    #返回值True 與
print(a>b or b<c)    #返回值True 或 (兩個條件滿足一個就可以)
print(not(b<c))    #返回值True 非   不包含就是對的
print(not(b>c))    #返回值False 非  包含就是錯的

成員運算子

Python的基本
name=[1, 2 , 3 , 4 , 5 , 6 , 7, 8]
print(1 in name)        # 返回值True   在範圍內
print(9 in name)        # 返回值False  不在範圍內
print(1 not in name)    # 返回值False   在範圍內
print(9 not in name)    # 返回值True    不在範圍內

位運算子

Python的基本

按位與 &
規則:兩兩為真取,一真一假不取
a=5
b=3
# a:0000 0101
# b:0000 0011
print(a&b)   # 輸出1   0000 0001
按位或 |
規則:一真一假取真,一假一真取真,兩兩為真取真, 兩兩為假不取
a=5
b=3
# a:0000 0101
# b:0000 0011
print(a|b)   # 輸出7   0000 0111
按位異或 ^
規則:一真一假取真,一假一真取真,兩兩為真不取,兩兩為假不取
a=5
b=3
# a:0000 0101
# b:0000 0011
print(a^b)   # 輸出6   0000 0110 
按位取反 ~
a=5
b=3
print(~a) #公式-(a+1)  按位取反
# -(5+1)=-1
print(~b)
向左運動運算子>>
a=5
b=3
# a:0000 0101
# b:0000 0011
print(a>>b)    #輸出0    0000 0000
向右移動運算子<<
a=5
b=3
# a:0000 0101
# b:0000 0011
print(a>>b)    #輸出40    0010 1000

字元,列表,元組,字典,集合

Python的基本

字元型別

索引
索引在公司中一般也叫下標,或角標
定義:可我們可以直接使用索引來訪問序列中的元素,同時索引可分為正向索引和負向索引兩種,而切片也會用到索引,如下圖:
Python的基本
Python中有序列:字元,列表,元組
無序:集合
正向索引:從0開始
負向索引:-1開始

切片

定義:切片是指對操作的物件擷取其中一部分的操作,字串,列表,元組都支援切片操作
切片的語法:【開始索引:結束索引 :步長】
備註:顯示結果:包含開始值,不包含結束值
zimu="abcdefghijklmnopq"
print(zimu[1])           # b   表示正索引1開始
print(zimu[1:3])         # bc  包含開始值,不包含結束值 
print(zimu[1:9:2])       # bdfh  1是開始值 ,9是結束值,2是步長
print(zimu[3:])          # defghijklmnopq   3表示開始值,為空代表後面所有
print(zimu[::-1])        # qponmlkjihgfedcba  反轉負索引顯示
print(zimu[:])           # abcdefghijklmnopq  顯示所有的內容 
print(zimu[-1:-5:-1])    # qpon  負索引-1是開始值,-5結束值,-1是步長
print(zimu[-5:-1])        #mnop  從-5開始值 負索引取到-1結束值 , 不包含-1

字串

  • capitalize 首字母大寫
  • title 每段字母的首個字母大寫
  • count 統計字元個數
  • join 把字符集中每個字元用符號分割
  • split 透過指定的內容進行分割,不顯示被指定的內容
  • strip 刪除字符集中開頭和結尾,字元相同也可以
  • lstrip 刪除字符集首字元
  • rstrip 刪除字符集末位字元
  • startswith 判斷字符集是不是以某個字元開頭
  • endswith 判斷字符集是不是以某個字元結尾
  • find 從左往右查字元在第幾位
  • rfind 串右往左查字元在第幾位
  • replace 替換相同字元
  • upper 將字符集所有小寫字元換成大寫
  • lower 將字符集所有大寫字元換成小寫
  • isdigit 判斷字符集是不是全數字
  • isalpha 判斷字符集是不是全字母
  • isalnum 判斷字串中是全是字母或全是數字或數字和字母組合
  • islower 判斷是不是都小寫
  • isupper 判斷是不是都大寫
  • set 去重
    #字串
    xnt='hzdcs41wlc'
    xnt2='aaaabbbbcccc'
    xnt3='AAAABBBBCCCC'
    # capitalize 首字母大寫
    print(xnt.capitalize()) # 返回值:Hzdcs41wlc
    # title  每段字母的首個字母大寫
    print(xnt.title()) # 返回值:Hzdcs41Wlc
    # count 統計字元個數
    print(xnt.count('z')) # 返回值:1
    # join 把字符集中每個字元用符號分割
    print('/'.join(xnt)) # 返回值;h/z/d/c/s/4/1/w/l/c
    # split 透過指定的內容進行分割,不顯示被指定的內容
    print(xnt.split('s')) # 返回值:['hzdc', '41wlc']
    # strip  刪除字符集中開頭和結尾,字元相同也可以
    print(xnt.strip('h.c')) # 返回值:zdcs41wl
    # lstrip  刪除字符集首字元
    print(xnt.lstrip('h')) # 返回值:zdcs41wlc
    # rstrip 刪除字符集末位字元
    print(xnt.rstrip('c')) # 返回值:hzdcs41wl
    # startswith  判斷字符集是不是以某個字元開頭
    print(xnt.startswith('z'))  # 返回值:對的True/錯的False
    # endswith   判斷字符集是不是以某個字元結尾
    print(xnt.endswith('c'))  # 返回值:對的True/錯的False
    # find 從左往右查字元在第幾位
    print(xnt.find('w')) # 返回值 :7
    # rfind  串右往左查字元在第幾位
    print(xnt.rfind('w'))  # 返回值:2
    # replace 替換所有相同字元
    print(xnt2.replace('a','s'))  #返回值:ssssbbbbcccc a是原值,b是替換值
    # replace 指定替換的次數
    print(xnt2.replace('a','s',3))   #返回值:sssabbbbcccc a是原值,b是替換值,3是次數
    # upper  將字符集所有小寫字元換成大寫
    print(xnt2.upper()) # 返回值:AAAABBBBCCCC
    # lower  將字符集所有大寫字元換成小寫
    print(xnt2.lower())  # 返回值:aaaabbbbcccc
    # isdigit 判斷字符集是不是全數字
    print(xnt2.isdigit())    # 返回值:對的True/錯的False
    # isalpha  判斷字符集是不是全字母
    print(xnt2.isalpha())    # 返回值:對的True/錯的False
    # isalnum   判斷字串中是全是字母或全是數字或數字和字母組合
    print(xnt2.isalnum())    # 返回值:對的True/錯的False
    # istitle  判斷首個字母是否大寫必須是隻有首個字元大小,其他字母為小寫
    print(xnt2.istitle())    # 返回值:對的True/錯的False
    # islower 判斷是不是都小寫
    print(xnt.islower())   # 返回值:對的True/錯的False
    # isupper 判斷是不是都大寫
    print(xnt.isupper())   # 返回值:對的True/錯的False
    # set  去重
    list = [1, 3, 6, 9, 1, 8]
    qc=set(list)
    print(qc)    返回值:{1, 3, 6, 8, 9}

    列表

    型別:<class 'list'>
    符號:[]
    定義:列表list 是一組有序儲存的資料,也是python常見的序列值一、序列中的每個元素都分配一個索引,第一個元素的索引是0,第二個元素的索引是1,依次類推,序列都可以進行操作包括索引,切片
    定義列表的方法有兩種:
    方法一:list1=[1,2,3,4] #直接透過[]進行定義
    方法二:list2=list('12345) #直接透過list轉換

    透過索引新增值(覆蓋原有值

    # 列表資料
    list1=[1,2,3,4,5]
    # 替換單個
    list1[2]='a'
    print(list1)   #返回值:[1, 2, 'a', 4, 5]
    # 替換多個
    list1[1:]='好好學習天天向上'
    print(list1)  #返回值:[1, '好', '好', '學', '習', '天', '天', '向', '上']

    列表中的函式

    append 新增元素 預設新增在最後一位
    list1=[1,2,3,4,5]
    list2=[6,7,8,9,0]
    list1.append('name')
    print(list1) #返回值:[1, 2, 3, 4, 5, 'name']
    extend :連線兩個列表
    list1=[1,2,3,4,5]
    list2=[6,7,8,9,0]
    list1.extend(list2)
    print(list1)  #返回值:[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
    insert() 在指定字元後插入資料
    list1=[1,2,3,4,5]
    list1.insert(2,'r')
    print(list1) #返回值:[1, 2, 'r', 3, 4, 5]
    remove刪除列表中指定的值,從左開始刪除,只刪除第一個
    ist1=[1,2,3,4,5]
    list1.remove(3)
    print(list1) #返回值;[1, 2, 4, 5]
    del 透過 索引刪除指定的值
    list1=[1,2,3,4,5]
    del list1[3]
    print(list1) #返回值:[1, 2, 3, 5]
    index 檢視在列表中字符集的索引值
    list1=[1,2,3,4,5]
    print(list1.index(4)) #返回值:3
    sort 實現列表的升序排列
    ist1=[2,3,6,7,4,1,9,8]
    list1.sort()
    print(list1) # 返回值;[1, 2, 3, 4, 6, 7, 8, 9]
    sorted 排序字母和數字都可以排序
    list1=[2,3,6,7,4,1,9,8]
    print(sorted(list1,reverse=True)) #返回值:降序[9, 8, 7, 6, 4, 3, 2, 1]
    print(sorted(list1,reverse=False)) #返回值:升序[1, 2, 3, 4, 6, 7, 8, 9]
    list1=['a','c','d','b','e','f','g']
    print(sorted(list1,reverse=True))  #返回值:降序['g', 'f', 'e', 'd', 'c', 'b', 'a']
    print(sorted(list1,reverse=False))  #返回值:升序['a', 'b', 'c', 'd', 'e', 'f', 'g']
    reverse 列表中所有元素反轉
    list1=[2,3,6,7,4,1,9,8]
    list1.reverse()
    print(list1)  #返回值:[8, 9, 1, 4, 7, 6, 3, 2]
    pop 預設移除列表中最後一個元素,括號內可以選擇要移除的值
    list1=[1,2,3,4,5]
    list1.pop()
    print(list1) #返回值:[1, 2, 4, 5]

    元組 tuople

    元組不可變
    定義:元組是python中一種資料結構,元組由不同的元素組成,每個元素可儲存不同型別的資料;如字串,數字,甚至元組,
    元組是“防寫”的,即元組中元素作為一個整體,建立後不能做任何修改操作。
    當出現一個字元時,加上逗號,(就變成了元組)
    xnt=(1,2,3,4,5,'a','b','c')
    print(type(xnt))  #返回值:<class 'tuple'>
    print(xnt)

    元組函式運用

    (1)index 索引
    xnt=(1,2,3,4,5)
    print(xnt.index(5)) #返回值:4
    (2)元組需要修改,只能將元組轉換成列表,使用列表的函式操作,列表操作完在轉換成元組
    xnt=(1,2,3,4,5,'a''b','c')   # 數值
    print(type(xnt))              # 檢視型別為tuple元組型別
    xnt1=list(xnt)                # 重新命名並轉換成列表型別
    print(type(xnt1))             # 檢視型別為list
    print(xnt1)                   # 打  印
    xnt1.insert(2,'s')            # 對列表進行操作
    print(xnt1)                   # 列印
    xnt2=tuple(xnt1)              # 重新命名並將列表轉回元組
    print(type(xnt2))             # 檢視型別為tuple元組型別
    print(xnt2)                   # 列印

    元組和列表的區別:

    相同:
    1、都是有序,
    2、都支切片、迭代等操作
    不同:
    1、list是可變物件,元組tuple是不可變物件
    2、tuple不可變,使用tuple編寫的程式碼更安全
    3、列表是[],元組是()
    4、列表的字元型別:list ,元組的字元型別:tuple

    字典

    字典的字元型別 <class 'dict'>
    符號:{}
    1、字典(dict)是一種可變容器模型,且可儲存任意型別物件
    2、字典的每個鍵,值 key,value 鍵值對形式
    3、鍵值用:分割,每個鍵值對之間用逗號分隔
    4、整個字典用{}包含
    5、字典鍵唯一,值不是唯一的

    定義字典的方法

    方法一:透過{}定義字典
    xnt={'name':'wangfugui','age':'88',}
    print(type(xnt))  #返回值:<class 'dict'>
    方法二:透過dict來轉換成字典
    xnt=[('aa',1),('bb',2),('cc',3)]  # 數值
    xnt1=dict(xnt)         # 重新命名並轉換成dict字典
    print(type(xnt1))      # 檢視型別 返回值:<class 'dict'>
    print(xnt1)            # {'aa': 1, 'bb': 2, 'cc': 3}

    字典中常見的函式:

    1.新增新的鍵和值
    s={'a': 1, 'b': 2, 'c': 3}   # 字典
    s["d"]=4     # 要新增的鍵和值,'d'是鍵,4是值
    print(s)     # 返回值:{'a': 1, 'b': 2, 'c': 3, 'd': 4}

相關文章