【python】基礎學習心得總結(一)


  本文將簡單闡述一些基本的python知識點,大多是本人在學習過程中的心得體會。簡單常用的編程概念和思想將不再描述。若有理解錯誤,還望指正。

 

一、python運行,調試

  python和相關軟件可以在官網下載。本文采用的版本是:Python 3.7.0 + PyCharm 2019.2

在這里推薦Notepad++文本編輯器可用於編寫程序,轉換編碼,很多txt文件如若使用windows自帶的文本編輯器打開會出現一些錯誤。

python的運行有兩種方式:命令行模式+python交互模式。

①命令行模式:win+r快捷鍵,輸入cmd,可以進入電腦命令行模式---->輸入相應文件名進行執行(可以在notepad中編寫好再執行.py文件)

C:\> python hello.py

②python交互模式:win+r快捷鍵,輸入cmd,可以進入電腦命令行模式---->輸入python回車,即可進行編輯

>>> ... ... (這時是直接進行程序編寫)

輸入exit()回車即可退出

當然利用PyCharm也可以進行編寫,這就如同我們在VS中編寫C項目一樣。大家根據實際情況進行使用。 可以打斷點,一 一進行調試。

快捷鍵:查找ctrl+F,替換ctrl+R

二、基本語法學習

(1)命名規則:

命名有大小寫區分,由大小寫字母、數字、下划線_ 混合組成。數字不可開頭,其余可。

由兩個及以上單詞組成時:

①first_name 全小寫,中間用下划線連接

②FirstName/firstName 各單詞首字母大寫/除首字母外,各單詞首字母大寫

(2)基本規則

  • 縮進:python中的縮進是tab或者4個空格,同一個py文件中兩者不能混用。PyCharm中選中需要調整縮進的行,按tab可向右縮進,shift+tab可以向左縮進
  • 注釋:
  1. 行代碼注釋,在該行代碼后打空格再使用#即可 標准的使用方法是代碼后兩個空格,#號后一個空格再進行編寫注釋。

例如:

print('這是一個例句')  # 符號前兩個空格,符號后一個空格  

    2.段代碼注釋使用/*  ... ... */

  • 一般計數從0開始。

(3)IF語句的學習:

if 語句的格式是:

  if   條件

    滿足條件執行語句①

  執行完①或者沒有滿足條件時執行語句②

或者

  if   條件:

    滿足條件執行語句①

  else:

    不滿足條件執行語句②

或者

  if   條件①:

    滿足條件①執行語句①

  elif   條件②:

    滿足條件②執行語句②

  ... ...

  else:

    都不滿足條件則執行語句

一個需要注意的點:

假如兩個條件:if A==0 or 1:

是錯誤的!應該寫成

if A==0 or A==1:

否則理解成兩個條件“A==0”或者“1”

舉例一:

name = input("請輸入您的姓名:")  #input函數的使用,先輸出字符串(可沒有),再將用戶輸入的數據存入name字符串

age = input("請輸入您的年齡:")

age = int(age) #因為input得到的是str,所以需要轉換為int

if age >= 18:  #if語句的使用,冒號非常重要,不可遺漏 比較運算符:== !=  /=  //整除  %取余... 邏輯運算:not、and、or

  print("%s,您%d歲了,已經成年了!" % (name,age))  #注意print的使用方法,%d、%s等都是其他語言里常用的占位符,但此處不用逗號分隔,而是使用%

else:

  print("您還未成年!")

輸出結果:

  請輸入您的姓名:**
  請輸入您的年齡:20
  **,您20歲了,已經成年了!

 if 后的條件如果滿足,則執行其冒號后的代碼塊。此代碼塊是指此冒號后有縮進的那一部分。否則執行else / elseif / 沒有縮進的代碼塊。

如果需要嵌套if語句,只有縮進變化,其余不變,與其他語言編碼相似。

Tips: 如果條件很長影響閱讀可以換行操作

例如:

if ((player_int == 1 and computer_int == 2) 
     or(player_int == 3 and computer_int == 1)
     or(player_int == 2 and computer_int == 3)): #條件很長,為了便於觀看添加括號進行換行,其中換行后需要多添加一個tab,為了區分代碼塊內容
(4)循環的學習:
①while循環:
while 條件A: #滿足A則循環執行B
  執行代碼塊B

tips:可以添加斷點debug(shift+f9),單步調試f8進行學習。Pycharm運行快捷鍵:shift+f10 運行當前py :shift+ctrl+f10
一般計數器從0開始,條件中使用</>;從1開始,使用>= / <=
需要借助計數器。
②break和continue的使用:(只針對當前循環有用)
break:某一條件滿足時退出循環,不再執行后續重復的代碼塊
continue:某一條件滿足時,不再執行后續重復的代碼塊
③for循環:
迭代遍歷,按照順序進行數據提取。對每一個元素,執行相同的操作
迭代:順序的從列表中依次獲取數據
可以遍歷所有非數字型變量,如元組、列表、字符串、字典
舉例二:(涉及到后文的list知識)
name_list=['abc','def','ghi']
for my_name in name_list:
  print(my_name)

有想要實現循環數字:
for i in range(100): # i是從0到100的數字,包含0和100,想要從1:range(1,100)即可!
  pass
假如:
想要從1:range(1,100)即可,但是如此不行:
j = 1
for j in range(100):   # 這樣實際上j是個新的變量,還是從0開始的
  pass

(5)函數的使用:
①隨機數生成:
import random
random.randint(a,b) #可以得到[a,b]間的隨機整數,包括ab
②print函數的使用:
print("%s,您%d歲了,已經成年了!" % (name,age))  #注意print的使用方法,%d、%s等都是其他語言里常用的占位符,但此處不用逗號分隔,而是使用%
print函數默認輸出后進行換行
print('*',end='') #借助end可以將默認的換行符替換為自己所需要的符號或是空
若需要換行 :print('')

轉義字符 \ 的使用:
\t 制表符,用於文本垂直對齊 \n換行符 \" 轉義了“,可以輸出”

③函數的使用:
函數將具有獨立功能的代碼塊進行封裝,讓開發人員更方便的進行使用
定義函數:
def 函數名():
  函數內容
執行程序時,只有主動調用函數才會執行該定義函數的代碼塊,但是定義函數必須在調用之前。
程序是順序執行的,當讀到def就清楚了有這樣的一個定義,但實際內容並未執行。
可以用return進行函數返回值的輸出,return關鍵字后的函數內容不會被執行

函數注釋:

def 函數名():
  """注釋"""
   
函數內容
開發過程想要查看就將光標放在函數名上,然后ctrl+Q即可查看注釋

形參和實參:
形參:定義函數時,小括號中的參數,用於接收參數,在函數內部作為變量使用
實參:使用函數時,小括號中的參數,用於將數據傳入函數內部

④模塊:
模塊就好比一個工具包,每一個py文件都是一個模塊,其中的變量和函數都是可以給外界使用(借助import關鍵字
注意:模塊名就是標識符名,所以也應該符合命名規則
import 包名
包名.變量/函數 即可調用
新項目包中從文件管理器中打開有__pycache__文件夾,其中保存了.pyc文件,代表的是已經被編譯過的文件,直接執行可以加速執行速度

⑤數據類型:列表list、字典dict、元組tuple
列表
即為其他語言常說的數組,用存儲一串數據,[ ]表示,兩項之間用‘ ,’分隔,序號從0開始

【有序】數據集合。本文的list是用於代表列表的,實際上是列表名。
盡管list可以存儲不同數據類型的數據,但是大多數情況,都是存儲相同的數據類型
取值: list[ index ]     即可取到序號為 index 的數據data
取索引: list.index(data)
類別 函數使用 解釋說明
增加 list.insert(index,data) 指定位置插入數據
  list.append(data) 末尾添加數據
  list.extend(list2) 將list2的數據添加到list后
修改 list[index]=data 修改指定索引數據
刪除 del list[index] 刪除指定索引數據
  list.remove[data] 刪除第一個出現的data數據
  list.pop 刪除末尾數據
  list.pop(index) 刪除指定索引數據
  list.clear 清除列表
統計 len(list) 統計列表長度
  list.count(data) 計算data在列表中出現次數
排序 list.sort() 升序排序
  list.sort(reverse=true) 降序排序
  list.reverse() 逆序、反轉
 Tips: 可以在命令行模式,輸入"list名."再按tab,可以得到能使用的方法名,在pycharm中光標放到方法名再按ctrl可以看出需填參數

關鍵字、函數和方法:
關鍵字使用時不需要小括號,例如前文的del
import keyword
print(keyword.kwlist) #可以查看python所提供的所有33個關鍵字
函數封裝了一些獨立功能,可以直接調用,使用時需要小括號。函數名需要記住。
方法和函數類似,也是封裝了獨立功能,但是方法需要通過對象來調用,是要對這個對象進行的操作。
調用方法:   對象.方法名() #方法名不用記住

元組
元組與列表類似,用()表示,但是元組的元素不能修改,定義完成后就不能修改。兩項之間用‘ ,’分隔,序號從0開始
元組會用來存儲不同的數據類型,因而對元組進行迭代循環的需求就不是很多
空元組:empty_tuple = ()
只含一個元素的元組: one_tuple = (1,) #必須添加一個逗號,若無的話就是int型
取值:            tuple[index]
取索引:           tuple.index(data)
數據在元組中出現的次數: tuple.count(data)
元組元素個數:        len(tuple)
元組應用場景:①格式化字符串中()即是一個元組,可以不用print直接用%連接字符串和元組②用於保存函數的參數和返回值③保護不能修改的列表

元組和列表的轉換: list(元組) / tuple(列表)

字典
【無序】的數據集合。本文的dict是用於代表字典的,實際上是字典名。
字典用{}表示,每個數據項是一個鍵值對,用逗號分隔。鍵值對的格式是key:value。為了便於觀看,最好可以一行放置一對鍵值對。
取值:dict[ key ]
增加/修改 : dict[ key ] = value2 #如果key不存在則新增項key:value2;如果存在則將原來的value值改為value2
刪除: dict.pop(key) 即可刪除對應鍵值對
取值

dict[key]

dict.get(key)

取出字典中key對應的value值
增加/修改

dict[key]=value

dict.setdefault(key,value)

若key存在則是修改鍵值,若不存在則是增加項
刪除項 dict.pop(key) 刪除key對應的鍵值對
統計鍵值對數 len(dict) 統計鍵值項數
合並字典 dict.update(dict2) 合並兩個字典,若有相同key,覆蓋dict原有的項
清空字典 dict.clear() 清空所有鍵值對
查看key值 dict.keys() 查看key值列表,value同理
 
        

 字典在迭代循環時,for item in dict: 中的item指的是鍵值對中的key

 字典和列表的結合:list=[dict1,dict2]

 字符串

“”或‘’定義。一般其他語言都用“”定義。若內容含有“”可以采用‘’;若內容含有‘’可以采用“”,也可以采用轉義字符

可以利用索引取字符串中的某一字符,索引從0開始。迭代循環時,循環的項是字符串中的各個字符

len(str)查看str長度、str.count(lstr)統計子字符串出現次數、str.index(lstr)返回lstr在str中所處的位置索引

python為字符串提供了很多方法:①判斷類型。例如是否只有數字,是否含有大小寫等。②查找和替換。③大小寫替換。④文本對齊。⑤去除空白字符。⑥字符串拆分和連接。

這些方法不再描述,使用時可以在命令行模式輸入str.再按tab鍵,根據方法名進行利用即可。

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM