Python基礎語法及變量
Python基礎語法及變量
-
基礎語法
-
變量類型
-
格式化輸出之百分號%
1.基礎語法
第一個Python程序
交互式編程:
交互式編程不需要創建腳本文件,是通過 Python 解釋器的交互模式進來編寫代碼。
linux上你只需要在命令行中輸入 Python 命令即可啟動交互式編程,提示窗口如下:
[root@bogon ~]# python Python 2.7.5 (default, Jun 17 2014, 18:11:42) [GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
Window 上安裝完python後可在cmd命令窗口運行,提示窗口如下:
C:\Users\Administrator>python Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:30) [MSC v.1500 32 bit (In tel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>>
在 python 提示符中輸入以下文本信息,然後按 Enter 鍵查看運行效果:
>>> print "Hello,Python" Hello,Python
腳本式編程:
通過腳本參數調用解釋器開始執行腳本,直到腳本執行完畢。當腳本執行完成後,解釋器不再有效。
[root@bogon tmp]# cat python.py #!/usr/bin/python # -*- coding:UTF-8 -*- print "Hello,Python!" [root@bogon tmp]# python python.py Hello,Python! [root@bogon tmp]# chmod +x python.py [root@bogon tmp]# ./python.py Hello,Python!
Python標識符
在 Python 裏,標識符由字母、數字、下劃線組成。
在 Python 中,所有標識符可以包括英文、數字以及下劃線(_),但不能以數字開頭。
Python 中的標識符是區分大小寫的。
以下劃線開頭的標識符是有特殊意義的。以單下劃線開頭 _foo 的代表不能直接訪問的類屬性,需通過類提供的接口進行訪問,不能用 from xxx import * 而導入;
以雙下劃線開頭的 __foo 代表類的私有成員;以雙下劃線開頭和結尾的 __foo__ 代表 Python 裏特殊方法專用的標識,如 __init__() 代表類的構造函數。
Python 可以同一行顯示多條語句,方法是用分號 ; 分開,如:
>>> print "123";print "456" 123 456
Python保留字符
下面的列表顯示了在Python中的保留字。這些保留字不能用作常數或變數,或任何其他標識符名稱。
所有 Python 的關鍵字只包含小寫字母。
|
行和縮進
Python 與其他語言最大的區別就是,Python 的代碼塊不使用大括號 {} 來控制類,函數以及其他邏輯判斷。python 最具特色的就是用縮進來寫模塊。縮進的空白數量是可變的,但是所有代碼塊語句必須包含相同的縮進空白數量,這個必須嚴格執行。
多行語句
Python語句中一般以新行作為語句的結束符。但是我們可以使用斜杠( \)將一行的語句分為多行顯示,如下所示:
print("zjkzjk123123456456") --------輸出結果----------- zjkzjk123123456456
語句中包含 [], {} 或 () 括號就不需要使用多行連接符。如下實例:
print([1,2,3, 4,5,6]) ---------輸出結果---------- [1, 2, 3, 4, 5, 6]
Python引號
Python 可以使用引號( ‘ )、雙引號( " )、三引號( ‘‘‘ 或 """ ) 來表示字符串,引號的開始與結束必須的相同類型的。其中三引號可以由多行組成,編寫多行文本的快捷語法,常用於文檔字符串,在文件的特定地點,被當做註釋。
word = ‘word‘ sentence = "這是一個句子。" paragraph = """這是一個段落。 包含了多個語句"""
Python註釋
python中單行註釋采用 # 開頭:
#這是一個python腳本 print("zjk")
---------輸出結果-------------
zjk
註釋可以在語句或表達式行末:
print("zjk") #這是一個註釋 ---------輸出結果------------ zjk
python 中多行註釋使用三個單引號(‘‘‘)或三個雙引號("""):
""" 這是多行註釋,使用的是雙引號; 這是多行註釋,使用的是雙引號; 這是多行註釋,使用的是雙引號; """ ‘‘‘ 這是多行註釋,使用的是單引號; 這是多行註釋,使用的是單引號; 這是多行註釋,使用的是單引號; ‘‘‘ print("zjk") ------------------輸出結果----------- zjk
Python空行
函數之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數入口之間也用一行空行分隔,以突出函數入口的開始。
空行與代碼縮進不同,空行並不是Python語法的一部分。書寫時不插入空行,Python解釋器運行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的代碼,便於日後代碼的維護或重構。
記住:空行也是程序代碼的一部分。
同一行顯示多條語句
Python可以在同一行中使用多條語句,語句之間使用分號(;)分割,以下是一個簡單的實例:
print("Hello");print("World") -------------輸出結果-------------- Hello World
2.變量類型
變量定義
變量存儲在內存中的值。這就意味著在創建變量時會在內存中開辟一個空間。基於變量的數據類型,解釋器會分配指定內存,並決定什麽數據可以被存儲在內存中。因此,變量可以指定不同的數據類型,這些變量可以存儲整數,小數或字符。
通過字面的意思理解為變化的量。具體解釋為:保存狀態(程序的運行本質是一系列狀態的變化,變量的目的就是用來保存狀態,變量的值得變化就鉤子程序運行的不同結果)
變量名命名規則
- 變量名稱由字母、數字、下劃線組成;
- 變量名稱不能是純數字或者數字開頭的;
- 變量名稱不能是python的關鍵字;
- 變量名稱區分大小寫;
- 變量名稱不能用中文;
- 變量名稱不能太長;
- 變量名稱要有意義;
- 變量名稱最好使用駝峰或下劃線格式;
變量賦值
Python 中的變量賦值不需要類型聲明。每個變量在內存中創建,都包括變量的標識,名稱和數據這些信息。每個變量在使用前都必須賦值,變量賦值以後該變量才會被創建。等號(=)用來給變量賦值。等號(=)運算符左邊是一個變量名,等號(=)運算符右邊是存儲在變量中的值。
多個變量賦值
python可以同時為多個變量賦值,例如:
a = b =c = 1
以上實例,創建一個整型對象,值為1,三個變量被分配到相同的內存空間上。
也可以為多個對象指定多個變量。例如:
a, b, c = 1, 2, "zjk"
以上實例,兩個整型對象1和2的分配給變量 a 和 b,字符串對象 "zjk" 分配給變量 c。
3.格式化輸出
在許多編程語言中都包含有格式化字符串的功能,比如C和Fortran語言中的格式化輸入輸出。python中內置有對字符串進行格式化的操作%
模板
格式化字符串時,Python使用一個字符串作為模板。模板中有格式符,這些格式符為真實值預留位置,並說明真實數值應該呈現的格式。Python用一個tuple將多個值傳遞給模板,每個值對應一個格式符。
例如:
print("My name is %s,I‘m %d year old" % ("張鋆康",23))
-----------------輸出結果-----------------------------
My name is 張鋆康,I‘m 23 year old
說明:
"My name is %s,I‘m %d year old"為模板,%s為第一個格式符,表示一個字符串。%d為第二個格式符,表示一個整數。("張鋆康",23)的兩個元素“張鋆康”和23為替換%s和%d的真實值。
在模板和tuple之間,有一個%號分隔,它代表了格式化操作。
整個"My name is %s,I‘m %d year old" % ("張鋆康",23)實際上構成一個字符串表達式。我們可以像一個正常的字符串那樣,將它賦值給某個變量。比如:
a = "My name is %s,I‘m %d year old" % ("張鋆康",23) print(a) ----------------輸出結果--------------------------- My name is 張鋆康,I‘m 23 year old
還可以用字典來傳遞真實值。如下:
print("My name is %(name)s,I‘m %(age)d year old" % ({"name":"張鋆康","age":23})) ---------------結果 如下----------------------------- My name is 張鋆康,I‘m 23 year old
可以看到,我們對兩個格式符進行了命名。命名使用()括起來。每個命名對應詞典的一個key。
格式符
格式符為真實值預留位置,並控制顯示的格式。格式符可以包含有一個類型碼,用以控制顯示的類型,如下:
%s 字符串 (采用str()的顯示)
%r 字符串 (采用repr()的顯示)
%c 單個字符
%b 二進制整數
%d 十進制整數
%i 十進制整數
%o 八進制整數
%x 十六進制整數
%e 指數 (基底寫為e)
%E 指數 (基底寫為E)
%f 浮點數
%F 浮點數,與上相同
%g 指數(e)或浮點數 (根據顯示長度)
%G 指數(E)或浮點數 (根據顯示長度)
%% 字符"%"
可以用如下的方式,對格式進行進一步的控制:
格式:%[(name)][flags][width].[precision]type
參數說明:
(name) 為命名
flags 可選值;+表示右對齊;-表示左對齊;‘ ‘為一個空格,表示在正數的左側填充一個空格,從而與負數對齊。0表示使用0填充。#表示八 進制時前面補充0,16進制數填充0x,二進制填充0b
width 表示顯示寬度
.precision 表示小數點後精度的位數,例如精確到2位: %.2f
type 輸入格式類型,請看上面
例子:
1.打印字符串;
print("%s歡迎你!" % "北京") ------------------輸出結果----------------------- 北京歡迎你!
2.打印整數;
print("今天最高溫度%d°" % 40) ------------------------輸出結果---------------------- 今天最高溫度40°
3.打印浮點數
print("他的身高是%f米" % (1.83)) -----------------------輸出結果---------------------- 他的身高是1.830000米
4.打印浮點數,指定保留小數點位數
print("他的身高是%.2f米" % (1.83)) --------------------輸出結果------------------------ 他的身高是1.83米
5.指定占位符寬度
print("Name:%5s Age:%5d Height:%8.2f" % ("ZJK",23,18.88)) -----------------------輸出結果--------------------------- Name: ZJK Age: 23 Height: 18.88
6.指定占位符寬度(左對齊)
print("Name:%-5s Age:%-5d Height:%-8.2f" % ("ZJK",23,18.88)) ----------------------輸出結果------------------------- Name:ZJK Age:23 Height:18.88
7.指定占位符(使用0填充)
print("Name:%05s Age:%05d Height:%08.2f" % ("ZJK",23,18.88))
--------------------------輸出結果------------------------------ Name: ZJK Age:00023 Height:00018.88
8.打印百分號;
print("下載已進行%s%%" % (80)) ------------------輸出結果---------------------- 下載已進行80%
Python基礎語法及變量