1. 程式人生 > >【python測試開發棧】python基礎語法大盤點

【python測試開發棧】python基礎語法大盤點

周邊很多同學在用python,但是偶爾會發現有人對python的基礎語法還不是特別瞭解,所以幫大家梳理了python的基礎語法(文中的介紹以python3為例)。如果你已然是python大牛,可以跳過這篇文章。

編碼

python3的預設編碼格式是:UTF-8 ,換句話說也就是:如果不在檔案頭部宣告編碼格式,python直譯器預設以UTF-8的方式來讀取python檔案。作為對比,我們知道python2的預設編碼格式是ascii,所以假如在python2檔案中使用了中文,必須在檔案頭部宣告gbk編碼:

# 修改編碼格式
#coding=gbk

# hello world
print ("Hello, Python!")

這會告訴python直譯器,以gbk的方式來讀取python檔案,這樣python直譯器就能正確的處理中文字元了。關於python編碼這一塊涉及的內容挺多,我會單獨再寫一篇文章來講解。

識別符號

通俗的講識別符號就是:給計算機程式裡面的資料,起的名字,就好比現實世界中,每個人都有名字一樣。在程式中比較常見的變數名、方法名、類名都屬於識別符號,識別符號有一些通用的規定:

  • 不能和關鍵字同名。(下一小節會提到關鍵字)
  • 識別符號不能重名。(不過這個有一定的作用範圍,不同型別的識別符號,作用範圍也不同。就好比,在你家裡,不可能有人和你重名吧!)
  • 只能由字母、數字、下劃線組成。但是不能以數字作為開頭,同時字母大小寫是有區別的。
  • 命名規則:
    • 在java語言中,常見的是駝峰命名法 ,也就是所有單詞的首字母需要大寫,比如:宣告一個變數:firstCounter。需要注意的是對於 變數和方法,名稱的首個字母需要小寫。
    • 在python語言中,因其完全遵循PEP8編碼格式,所以其命名方式是:對於變數用_來連線,比如:first_counter。需要注意的是Python中的類還是使用的駝峰命名法。個人感覺PEP8的命名方式不如駝峰命名法直觀,但是還是建議大家遵循官方的命名建議。

python關鍵字

在python中預留了很多關鍵字,這些關鍵字是python直譯器的約定,比如:True和False,當我們在使用關鍵字時,python直譯器就能知道具體的含義是什麼。關鍵字比較多,完全沒必要記憶,平時工作中會經常用到,另外使用python內建的一個keyword模組,也能打印出python所有的關鍵字。

>>> import keyword
>>> keyword.kwlist
['False', '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', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

註釋

python中單行註釋可以使用#,多行註釋可以使用''' 或者"""""",另外需要注意Python的方法註釋是寫在方法體裡面的,這和java語言有區別。我們來舉個例子:

def test_method():
    """
     todo something
    :return:
    """
    # 這裡放你需要放的邏輯

    '''
        這裡是單引號多行註釋
        這裡是單引號多行註釋
        這裡是單引號多行註釋
    '''
    """
        這裡是雙引好多行註釋
        這裡是雙引好多行註釋
        這裡是雙引好多行註釋
    """
    pass

程式碼行與縮排

上面也提到,因為python是遵循PEP8規範的,所以有嚴格的縮排要求,其用縮排來表示程式碼塊,不像java,用{}來表示一個程式碼塊。舉個例子:

def test_code():
    ok = False
    # 正確的程式碼縮排,同一級別的程式碼縮排必須一致
    if ok:
        print("True")
        print("Answer")
    else:
        print("False")
        print("Answer")

    # 錯誤的程式碼縮排,這樣相當於print("Answer")又在print("True")的下一級
    # 會丟擲異常 IndentationError: unexpected indent
    if ok:
        print("True")
            print("Answer")
    else:
        print("False")
            print("Answer")

所以建議大家平時在開發過程中,使用pycharm等IDE,因為它可以自動幫你檢查程式碼的格式是否正確。

import 與 from…import

在之前的文章裡我們也詳細介紹過python模組的匯入方式:,這裡就簡單提一下兩者的區別:

  • import一般是將整個module匯入到專案中。
  • from…import可以控制匯入的粒度:可以匯入某個module的某個方法、或者多個方法。

格式化與列印

在python中我們可以使用print來列印內容,同時可以使用'xxxx'.format()這種方法來格式化輸出內容,比如:

def test_print():
    # 1. 列印內容後不換行,不加end引數,預設是換行的
    print('this is a test', end="")

    # 2. 使用String.format
    print("{}.{}".format("hello", "world"))

    # 3. 將輸出的值轉為字串—str,將值轉化為適用於人閱讀的字串形式
    x = 1/7
    print(str(x))

    # 4. 將輸出的值轉為字串—repr(),將值轉換成直譯器讀取的字串形式
    x = 1/7
    print(repr(x))

總結

上面總結了python一些基礎的用法和概念,算是給初學者對python的一個初印象,後續會圍繞著python測試開發技術棧相關技術進行更深層次的介紹。

相關推薦

python測試開發python基礎語法盤點

周邊很多同學在用python,但是偶爾會發現有人對python的基礎語法還不是特別瞭解,所以幫大家梳理了python的基礎語法(文中的介紹以python3為例)。如果你已然是python大牛,可以跳過這篇文章。 編碼 python3的預設編碼格式是:UTF-8 ,換句話說也就是:如果不在檔案頭部宣告編碼格式,

python測試開發python記憶體管理機制(一)—引用計數

什麼是記憶體 在開始進入正題之前,我們先來回憶下,計算機基礎原理的知識,為什麼需要記憶體。我們都知道計算機的CPU相當於人類的大腦,其運算速度非常的快,而我們平時寫的資料,比如:文件、程式碼等都是儲存在磁碟上的。磁碟的存取速度完全不能匹配cpu的運算速度,因此就需要一箇中間層來適配兩者的不對等,記憶體由此而來

python測試開發python記憶體管理機制(二)—垃圾回收

在上一篇文章中(python 記憶體管理機制—引用計數)中,我們介紹了python記憶體管理機制中的引用計數,python正是通過它來有效的管理記憶體。今天來介紹python的垃圾回收,其主要策略是引用計數為主,標記-清除和分代回收為輔助的策略(熟悉java的同學回回憶下,其實這和JVM的策略是有類似之處的)

python測試開發帶你徹底搞明白python3編碼原理

在之前的文章中,我們介紹過編碼格式的發展史:[文章傳送門-todo]。今天我們通過幾個例子,來徹底搞清楚python3中的編碼格式原理,這樣你之後寫python指令碼時碰到編碼問題,才能有章可循。 我們先搞清楚幾個概念: 系統預設編碼:指python直譯器預設的編碼格式,在python檔案頭部沒有宣告其他編

python測試開發—理解python深拷貝與淺拷貝的區別

記憶體的淺拷貝和深拷貝是面試時經常被問到的問題,如果不能理解其本質原理,有可能會答非所問,給面試官留下不好的印象。另外,理解淺拷貝和深拷貝的原理,還可以幫助我們理解Python記憶體機制。這篇文章將會通過一些例子,來驗證記憶體拷貝的過程,幫助大家理解記憶體拷貝的原理。 Python3中的資料型別 我們首先得知

python測試開發—幫你總結Python os模組高頻使用的方法

Python中的os模組是主要和系統操作相關的模組,在平時的工作中會經常用到,花時間整理了os模組的高頻使用方法,同時整理出使用時需要注意的點。歸納來講,os模組的方法可以分為:目錄操作、檔案操作、路徑操作、系統操作等四大類,我們接下來依次進行介紹。 目錄操作相關 建立、刪除、重新命名目錄 # 當前目

Pta測試6.1基礎程式設計題目集

6-1 簡單輸出整數(10 分) 本題要求實現一個函式,對給定的正整數N,列印從1到N的全部正整數。 函式介面定義: void PrintN ( int N ); 其中N是使用者傳入的引數。該

vue 入坑指南 vue 基礎語法

【vue 入坑指南 一 】vue 基礎語法 1.模板語法 1.1 Mustache語法 {{msg}} //在html獲取data中msg變數的值 1.2 Html賦值 v-html="" //將內容當成html標籤輸出 .html()類似 1.

學習python 測試開發

ror 獲得 inf img get detail gpo pex 如果 https://ke.qq.com/course/263945#tuin=107a3c8a https://testerhome.com/topics/11327 python版本:2.7.* 第一節

python開發第十一篇Python常用模塊三(hashlib,configparser,logging)

錯誤 .config lte with open sha 警告 輸入 格式化 pass hashlib模塊 hashlib提供了常見的摘要算法,如md5和sha1等等。 那麽什麽是摘要算法呢?摘要算法又稱為哈希算法、散列算法。它通過一個函數,把任意長度的數據轉換為一個長度固

python開發第十二篇Python的模塊和包

提高 通過 color 操作 查看 綁定 packages 關系 搜索路徑 一、模塊 1.import.... 一個py文件就可以作為一個模塊 模塊的導入:直接導入文件的名字,不需要帶著後綴 模塊中的函數調用:模塊名.函數名() 導入模塊的時候做了三件事:1.首先開辟了一個

動態地圖開發日誌01:Python分析地圖中的區域

序:         幾年前,看到6H獵人在網上做的動態世界各國領土變化的視訊,被深深的吸引了,那個視訊也特別火,被各大知名媒體引入,本想向作者詢問視訊製作軟體,卻被告之是一幀幀畫出來的,作為一個資深地圖迷和程式設計師自然不能忍。其實看視訊的時候就已經在想這些演算法該怎

機器學習入門——1Python 開發環境的安裝 Python(x,y)及Pycharm

          在學習機器學習的過程中,我們必不可少的要敲寫一些程式碼。在機器學習領域中用到的語言主要有Matlab、Python、R等語言,由於自身接觸到的環境原因我主要選著Matlab及Pyt

微信開發系列1. python開發微信公眾號訊息回覆開發者模式

背景 最近申請了一個微信公眾號,想根據使用者的訊息進行智慧動態回覆。於是有了這篇文章。 公眾號申請:https://mp.weixin.qq.com。 想根據具體訊息進行智慧動態回覆,需要開啟開發者模式。 開發者模式需要進入開發者中心進行編碼認證。這裡面只講主要的程

python資料分析(一)Numpy基礎及基本應用

一.資料處理的一般流程: 資料收集—》資料預處理—》資料處理—》資料展示 資料收集:網路爬蟲,公開資料集,其他途徑收集的資料 資料預處理:歸一化,二值化,維度變換,去重,無效資料過濾 資料處理:資料排序,資料查詢,資料統計分析 展示:列表,圖表,動態互動圖形

強大的 Python IDE 開發工具PyCharm Pro 2019.1.1 for Mac

per djang 社區 book -o 開發框架 orien notebook 地址 【簡介】 今天在風雲社區和大家分享最新的PyCharm2019 for Mac 專業版本,增強了Jupyter Notebooks、Run and d

python系統學習16編碼基礎知識

編碼 計算機是怎麼傳輸和儲存資料的? 就是把人類認識的中英文字、其他國家語言、數字甚至運算子等符號轉成二進位制的0、1,並進行儲存和傳輸。 編碼 人類語言:中英文字、其他國家語言、數字甚至運算子等符號 計算機語言:二進位制的0、1【沒錯,計算機只認識0和1】 編碼:將人類語言轉換為計算機語言。 除了0、1這些

安全牛學習筆記python裝飾器

信息安全 python security+ 互聯網 python裝飾器 裝飾器本質上是一個函數,該函數用來處理其他函數,它可以讓其他函數在不需要修改代碼的前提 下增加額外的功能,裝飾器的返回值也是一個函數對象。它經常用於有切面需求的場景,比如:插 入日誌

安全牛學習筆記python實例

信息安全 python security+ 互聯網 閉包 什麽是閉包?簡單說,閉包就是根據不同的配置信息得到不同的結果 再來看看專業的解釋:閉包(Closure)是詞法閉包(Lexical Closure)的簡稱,是引用了自由變量 的函數。這個被引用的自

安全牛學習筆記python使用入門

信息安全 security+ python 第一講 python使用入門1.python版本可以分為2.x和3.xPython3.x缺點不向下兼容2.使用python的優點:語法簡潔,可讀性高,開發效率高,無需編譯,移植性好等等3.使用python可以做的事情系統編程,用戶圖形接口,interne