介紹
??本篇文章主要針對于計算機二級考試的崽崽,當然想了解Python和學習Python的崽崽也是可以看本篇文章的;畢竟,手機和電腦都可以運行Python;本篇我文章雖然是筆記,但是也純靠手打,希望關注和點贊一下,期待我的其他隨筆和文章;文章作者由博客園狐小妖用戶撰寫,非來自于博客園且不帶轉載注明,均為盜文章的用戶,這種人最可恥;建議沒有經過系統學習的用戶一步一步來,如果經過系統學習的用戶酌情跳著看;
目錄
- python語言基本語法元素
- 程式的框架格式
- 縮進
- 注釋
- 續航符
- 語法元素的名稱
- 變數
- 保留字
- 識別符號
- 資料型別
- 數值型別
- 字串型別
- 程式的陳述句元素
- 運算式
- 參考
- 其他陳述句
- 基本輸入輸出函式
- input函式
- eval()函式
- print函式
- 練習寫代碼
- 第二階段考核測驗
- 選擇題
- 編程題
- 程式的框架格式
python語言基本語法元素
程式的框架格式
??程式的框架格式,就是它的段落格式,是python語言的一部分,可以提高代碼的可讀性與維護性,當然,也是你必須遵守的python代碼的撰寫方法;
縮進
??python語言采用嚴格的‘縮進’來表示程式的邏輯,也就是我們說的python程式表示包含與層次關系,一般代碼不要求縮進,頂格撰寫不能留空白;在if、while、for、def、class等保留關鍵字所在的完整陳述句后面要添加英文的‘:’符號結尾,并在之后進行縮進,表明后續代碼與緊鄰無縮進陳述句之間的所屬關系;
??縮進可以通過tab鍵實作,也可以通過空格實作(一般是四個空格),但是兩者不能混用,如果使用IDLE撰寫代碼,建議采用四個空格鍵撰寫,如果是pycharm撰寫建議采用tab鍵;


??當使用IDLE執行代碼時出現‘unindent does not match any outer indentation level’或者‘SyntaxError: unexpected indent’則說明出現縮進錯誤,如圖:


注釋
??注釋是代碼中的輔助性文字,會被編譯器或解釋器略去,不被計算機執行,一般用于程式員對代碼的說明;python使用‘# 單行注釋'、''' 多行注釋'''
??單行注釋:‘#’符號,表示一行注釋的開始,注釋可以在一行的任意位置通過‘#’開始,其符號后面的一行內容中全部會被當成注釋,而前面的內容依舊會被當成代碼執行;
??多行注釋:'''多行注釋''',位于三對單引號中的內容,無論是否換行,都是注釋,不會被python解釋器所執行;
注釋的作用:
??注釋一般用于在代碼中標注作者和著作權資訊;
??解釋代碼原理和用途;
??通過注釋單行代碼輔助程式除錯;

續航符
??python程式是逐行撰寫的,每行代碼并無限制,但是從程式員的角度,單行代碼太長并不方便閱讀,這個時候就可以采用續航符將單行代碼分割為多行表達,
??python中的續航符為‘\’,續航符之后不允許再空格,也就是說續航符之后直接換行;

語法元素的名稱
??python語言的基本單位是‘單詞’,少部分單詞是由python語言規定的,被稱為保留字,大部分單詞是由用戶自己定義的,通過命名程序形成變數或函式,用來代表資料或代碼,稱為識別符號,
變數
??變數是保存和表示資料值的一種語法元素,變數的值是可以改變的,通過賦值運算子‘=’方式被修改,python中變數可以隨時命名、隨時使用、隨時賦值;


保留字
??保留字也叫keyword關鍵字,被編程語言內部定義并保留使用的,每種程式設計語言都有一套保留字,保留字一般用來構成程式的整體框架,python3.x中一共有35個保留字;
| python3.x中的35個保留字 | ||||||
| and | as | assert | async | await | break | class |
| continue | def | del | elif | else | except | False |
| finally | for | from | global | if | import | in |
| is | lambda | None | nonlocal | not | or | pass |
| raise | return | True | try | while | with | yield |
python二級考試中涉及到的保留字一共有22,選學5個:None、finally、lambda、pass、with;
python中的保留字也是大小寫敏感,舉例:True為保留字,而true不是保留字;
識別符號
??識別符號可以簡單理解為一個名字,主要用來標識變數、函式、類、模塊和其他物件的名稱;
識別符號的命名規則:
??字母、數字、下劃線;
??第一個字符不能是數字;
??不能是python中的保留字;
??只允許使用ISO-Latin(ISO-8859-1)字符集中的A-Z、a-z;
??允許使用中文,但不建議;
注意:識別符號對大小寫敏感,name和Name是兩個名字;

資料型別
??計算機對資料進行運算時需要明確資料的型別和含義,比如說:1001001到底表示的是十進制還是二進制,還是表示的是一個數字串,資料型別就是用來表達資料的含義,消除計算機對資料理解的二義性;
數值型別
??表示數字或數字的資料型別成為數值型別;
python提供3種數值型別:
??整數型別;與數學中的整數一致,包含正、負、0,一個整數有二進制、八進制、十進制、十六進制這4種表示方式;
??
??浮點數型別;與數學中的小數一致,沒有取值范圍限制,可正、可負,有兩種表達方式,一種是小數點表示形式,另一種是科學計數法;浮點數只有十進制形式;
??
??復數;與數學中的復數一致;采用a+bj的形式表示,存在實部和虛部;
字串型別
??計算機經常處理文本資訊,文本資訊在計算機中使用字串型別表示,在python中使用單引號或雙引號括起來的一個或多個字符來表示,單引號和雙引號作用相同;
??
字符序列有兩種序號體系:
??正向遞增序號:有效范圍為[0,N-1],其中N為字串中的字符的個數,最左側的字符序號為0,依次向右遞增,最右側字符序列號為N-1;
??反向遞減序號:有效范圍為[-1,-N],其中N為字串中的字符的個數,最右側字符序號為-1,依次向左遞減,最左側字符序號為-N;
??
??兩種索引可以同時使用,以下代碼為對單個字符進行的索引;
??
??還可以通過采用[N:M]格式獲取字串的子串,這種操作被稱為切片操作,[N,M]獲取字串中從N到M(但不包括M)的連續的子字串,N和M都表示的是索引序號,可以混合使用正向遞增和反向遞減序號;
??
??通過python默認提供的len()函式獲取字串的長度,一個中文字符和一個英文字符的長度都記為1;
??
程式的陳述句元素
運算式
??產生或計算新資料值的代碼片段成為運算式;類似于數學中的公式,一般由資料和運算子構成;
??
賦值陳述句
??對變數進行賦值的一行代碼叫賦值陳述句;在python中使用一個‘=’表示‘賦值’,也就是說把等號右邊的運算式運算之后的結果值賦給左邊的變數;
基本的賦值語法:
變數 = 運算式
例:
??
??同步賦值陳述句就是同時給多個變數進行賦值;
同步賦值語法:
變數1, 變數2, 變數n = 運算式1, 運算式2, 運算式n
例:
??
其實同步賦值用于最多的就是互換變數的值,也就是交換兩個變數存盤的值;
??
參考
??python程式會經常使用到當前程式以外的已有的功能代碼,這個程序叫參考,python語言使用import這個保留字參考當前程式以外的功能庫;
??參考功能庫之后功能庫.函式名()的方式呼叫基本功能,這種方式稱為‘A.B()’方式;
??
其他陳述句
??除了賦值陳述句以外,python還有分支陳述句和回圈陳述句,先簡單介紹一下使用,后面會詳細講解;
分支陳述句:根據判斷條件選擇程式執行路徑,一般包含單分支結構、雙分支結構和多分支結構;
單分支語法結構:
if 條件:
陳述句塊
??任何能夠產生True或Flase的陳述句都可以作為條件,當條件為True時,則執行陳述句塊;
??
雙分支語法結構:
if 條件:
陳述句塊1
else:
陳述句塊2
??當條件為True時,執行陳述句塊1,當條件為False時執行陳述句塊2,其中if……else都是保留字;
??
??回圈陳述句和分支結構一樣都是程式控制陳述句,它的作用是根據判斷條件確定一個程式是否再執行一次或多次;
條件回圈的語法結構:
while 條件:
陳述句塊1
陳述句塊2
??當條件為True時,執行陳述句塊1,然后再次判斷,當條件為False時,退出回圈,執行陳述句塊2;
??
基本輸入輸出函式
input()函式
??input函式是從控制臺獲取用戶的一行輸入,無論用戶輸入什么內容,input函式都以字串型別回傳;input函式可以包含一些提示性文字,用來提示用戶;
input語法格式:
變數 = input("提示性文字")
??無論用戶輸入的是數字還是字符,input函式統一按照字串型別輸出,為了后續能夠操作用戶輸入的資訊,需要添加一個變數進行存盤;
??
??input函式提示文字可寫可不寫,不是必須的;
eval()函式
??eval(str)函式將去掉字串最外側的引號,并按照python陳述句方式去執行去掉引號之后的字符內容,說白了就是一個可以將內容當成python語言執行的函式;作者:博客園-狐小妖
eval()語法格式:
變數 = eval("字串")
??變數用來存盤對字串內容進行python執行后的結果,如果沒有運算回傳的結果,只有執行,那么變數就為空;
??
??eval()函式去掉了str1最外層的引號,并當成python陳述句來執行之后(這步是運算),會回傳一個運算之后的結果:3.2,保存到str1,輸出他的型別就是float,str2中,eval函式將內容當做python陳述句來執行之后,并沒有回傳結果,但是有一個輸出,所以會輸出:博客園-狐小妖,而我們下面列印輸出str2自然是None;
??當你輸入一個錯誤格式的python陳述句進去后,他會將其當成變數,并查找相關變數的值,如果沒有查到,就會報錯,如果查到則執行;??????
??
??當eval函式處理str3時候發現str3變數中存盤的內容是abcd,去掉兩邊引號,發現這并不是一個python陳述句,那就當成變數執行,但是執行時發現沒有相關定義,所以報錯;如果定義abcd為變數,并存盤內容為python的陳述句或者變數,那么就會成功執行;
??eval函式經常用來和input函式一起使用,用來獲取用戶輸入資料;
eval()與input()函式一起使用的語法:
變數 = eval(input("提示性文字:"))
??用戶輸入的數字、小數、負數,input函式會決議成為字串,再由eval函式去掉字串引號,將被直接決議為數字保存到變數中;
??
(個人是學習安全的,這個函式我覺得盡量減少使用,如圖)

print()函式
??print函式用于輸出運算結果;
print()函式的三種用法:
僅用于輸出字串或單個變數;
print("待輸出字串或變數")
對于字串,print函式輸出后將去掉兩側引號,對于其他型別,則直接輸出;
當print輸出字串時,字串統一使用單引號表達,在[ ]中的字串都使用了雙引號,但是在采用print輸出時,輸出結果都采用了單引號;

用于輸出一個變數或多個變數,輸出后的各變數之間用一個空格分隔;
print(變數1, 變數2, ……, 變數n)

用于混合輸出字串與變數的值,其中字串模板使用{ }表示一個槽位,每個槽位對應.format()中的一個變數;
print("輸出字符模板".format(變數1, 變數2, 變數3))

"本文發布的平臺:{}\n作者是:{}\n博客地址:{}"是字串模板,也就是混合字串輸出的樣式,大括號{}表示一個槽位,括號中的內容由后面緊跟著的format()方法中的引數按順序填充;
??print函式輸出文本時會默認在最后增加一個換行,如果不希望在最后增加這個換行,或者希望輸出文本后增加其他內容,可以對print函式的end引數進行賦值;
語法結構為:
??print("待輸出內容", end='增加的結尾')
??
練習寫代碼
撰寫一段程式,獲取用戶輸入,采用倒敘輸出用戶的內容;
舉例:
??輸入:123456
??輸出:654321
提示:
??采用input函式獲取輸入,輸出采用print,對于輸入字串s,采用回圈陳述句依次從后向前提取字符,并逐個列印輸出;在撰寫代碼時還將使用到獲取字串長度的函式len和print函式的end引數;
實作方式1:(正向遞增序號)
??
實作方式2:(反向遞減序號)
??
第二階段考核測驗
選擇題
- 以下哪個選項不是python語言的保留字?
- False
- and
- true
- if
- s='0123456789',以下哪個選項表示‘0123’
- s[1:5]
- s[0:4]
- s[0:3]
- s[-10:-5]
- x=2,y=3,執行x,y=y,x之后,x和y的值分別是什么?
- 2,3
- 3,2
- 2,2
- 3,3
- 以下不是python的注釋方式的是(??)
-
# 注釋第一行 -
# 注釋第一行 # 注釋第二行 -
// 注釋第一行 -
"""python檔案注釋"""
-
-
關于本篇文章的作者是(??)
- 該發布者
- CSDN當前發布者
- 博客園狐小妖
- 百度文庫當前發布者
- len('hello world!')的輸出結果為(??)
- 10
- 11
- 9
- 12
- 以下變數名不合法的是(??)
- for
- _my
- a_int
- c666
- 以下賦值陳述句中合法的是(??)
- x=2,y=3
- x=y=3
- x=2 y=3
- x=(y=3)
- "世界很大"+"人很渺小"的輸出結果是(??)
- 世界很大人很渺小
- "世界很大""人很渺小"
- "世界很大"+"人很渺小"
- 世界很大+人很渺小
- 與0xf2值相等的是(??)
- 342
- 0242
- 0b11010010
- o362
答案:CBBCC??DABAB
編程題
- 獲得用戶輸入的一個整數N,計算并輸出N的32次方;

本文來自博客園,作者:狐小妖,轉載請注明原文鏈接:https://www.cnblogs.com/huxiaoyao/p/16517169.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/500634.html
標籤:Python
上一篇:記一次 Windows 下 Python 3 的控制臺虛擬終端序列(控制臺顏色輸出, colorama / console 庫)的踩坑經歷
