python語法元素分析

2021-08-13 17:05:17 字數 4532 閱讀 6276

程式元素包括:

注釋  縮排   常量  變數   輸入  輸出     分支   迴圈    表示式

常量與變數都需要乙個名字,命名就是給程式元素關聯乙個識別符號,保證唯一性。識別符號對大小寫敏感,不能與33個保留字相同。首字母只能是字母或下劃線。

表示式:程式中產生或計算新資料數值的一行**。python的33個保留字或操作符可以產生符合語法的表示式。

輸入函式input():使用方法如下:

《變數》=input(《提示性文字》)

使用者輸入以字串形式儲存,字串第乙個位元組為0或-l,最後乙個位元組為l-1或-1,以區間形式獲得的子字串[1:-2],它表示乙個從[1:-2)區間的的子串。

python3裡面input預設接收到的事str型別,而python2裡面卻認為是int型別

a=input("please enter a number:")

b=input("please enter a number:")

print(a+b)

執行結果:

please enter a number:23.5

please enter a number:24.6

23.524.6

分支語句的基本過程:

if 《條件1成立》:

《表示式組1>

elif《條件2成立》:

《表示式組2>

elif《條件n-1成立》:

《表示式組n-1>

else《表示式組n>

if可與其他if重複執行,但if執行後elif不執行(即使elif成立)。結尾必須以else結尾。

輸出函式

print()函式用來輸出字元資訊,或以字元形式輸出變數的值,通過%來選擇要輸出的變數。不換行輸出print(i,end='')

《python基礎程式設計》中對格式化輸出的總結:

(1). %字元:標記轉換說明符的開始

(2). 轉換標誌:-表示左對齊;+表示在轉換值之前要加上正負號;「」(空白字元)表示正數之前保留空格;0表示轉換值若位數不夠則用0填充

(3). 最小字段寬度:轉換後的字串至少應該具有該值指定的寬度。如果是*,則寬度會從值元組中讀出。

(4). 點(.)後跟精度值:如果轉換的是實數,精度值就表示出現在小數點後的位數。如果轉換的是字串,那麼該數字就表示最大字段寬度。如果是*,那麼精度將從元組中讀出

(5).字串格式化轉換型別

轉換型別          含義

d,i                 帶符號的十進位制整數

o                   不帶符號的八進位制

u                   不帶符號的十進位制

x                    不帶符號的十六進製制(小寫)

x                   不帶符號的十六進製制(大寫)

e                   科學計數法表示的浮點數(小寫)

e                   科學計數法表示的浮點數(大寫)

f,f                 十進位制浮點數

g                   如果指數大於-4或者小於精度值則和e相同,其他情況和f相同

g                  如果指數大於-4或者小於精度值則和e相同,其他情況和f相同

c                  單字元(接受整數或者單字元字串)

r                    字串(使用repr轉換任意python物件)

s                   字串(使用str轉換任意python物件)

[python]

view plain

copy

>>> pi = 

3.141592653

>>> print

('%10.3f'

% pi) 

#欄位寬10,精度3

3.142

>>> print

("pi = %.*f"

% (3

,pi)) 

#用*從後面的元組中讀取字段寬度或精度

pi = 3.142

>>> print

('%010.3f'

% pi) 

#用0填充空白

000003.142

>>> print

('%-10.3f'

% pi) 

#左對齊

3.142

>>> print

('%+f'

% pi) 

#顯示正負號

+3.141593

4.如何讓 print 不換行

在python中總是預設換行的

[python]

view plain

copy

>>> 

forx 

inrange(0,

10):  

print

(x)  01

2345

6789

如果想要不換行,之前的 2.x 版本可以這樣 print x, 在末尾加上 ,

但在 3.x 中這樣不起任何作用

要想換行你應該寫成 print(x,end = '' )

[python]

view plain

copy

>>> 

forx 

inrange(0,

10):  

print

(x,end = 

'')  

0123456789

拼接字串:

[python]

view plain

copy

>>> 

"hello"

"world"

'helloworld'

>>> x = "hello"

>>> y = "world"

>>> xy  

traceback (most recent call last):  

file ""

, line 1, 

inxy  

nameerror: name 'xy'

isnot

defined  

>>> x+y  

'helloworld'

pow函式:

[python]

view plain

copy

# 2**3%5(2的3次冪對5取模)

>>> pow(2,3

,5)  3

部分函式:

abs(number),返回數字的絕對值

cmath.sqrt(number),返回平方根,也可以應用於負數

float(object),把字串和數字轉換為浮點數

help(),提供互動式幫助

input(prompt),獲取使用者輸入

int(object),把字串和數字轉換為整數

math.ceil(number),返回數的上入整數,返回值的型別為浮點數

math.floor(number),返回數的下舍整數,返回值的型別為浮點數

math.sqrt(number),返回平方根不適用於負數

pow(x,y[.z]),返回x的y次冪(有z則對z取模)

repr(object),返回值的字串標示形式

round(number[.ndigits]),根據給定的精度對數字進行四捨五入

str(object),把值轉換為字串

for i in range(3):

val=input("請輸入帶溫度表示符號的溫度值(例如:32c):")

if val[-1] in ['c','c']:

f=1.8*float(val[0:-1])+32

print("轉換後的溫度為:%.2ff"%f)

elif val[-1] in ['f','f']:

c=(float(val[0:-1])-32)/1.8

print("轉換後的溫度為:%.2fc"%c)

else:

print("輸入有錯誤")

若將上句中elif改為if,則在執行時輸入56c,在輸出正式結果後,繼續輸出''輸入有錯誤'';若輸入56f,則正常?

b=5c=10

d=15

for i in range(5):

a=int(input())

if a1

a is less than b

a is less than c

a is less than d

5a is less than c

a is less than d

10a is less than d

15a is king

Python語法元素分析

1 1個縮排 4個空格。2 用以在python中標明 的層次關係。3 縮排式python語言中表明程式框架的唯一手段。1 注釋 程式設計師在 中加入的說明資訊,不被計算機執行。2 注釋的兩種方法 1 單行注釋以 開頭 here are the comments 2 多行注釋以 開頭和結尾。this ...

Python程式語法元素分析

程式的格式框架 注釋命名與保留字 字串賦值語句 input 函式 分支語句 eval 函式 print 函式 迴圈語句 函式1.程式的格式框架 python語言採用嚴格的縮進來表明程式的格式框架。縮排表達所屬關係。注 不是所有的 都可以通過縮排包含其他的 如print 這樣簡單語句不表達包含關係,不...

Python程式語法元素分析

目錄命名與保留字 語句與函式 python程式的輸入輸出 下面是一段溫度轉換的 示例 tempconvert.py tempstr input 請輸入帶有符號的溫度值 if tempstr 1 in f f c eval tempstr 0 1 32 1.8 print 轉換後的溫度是f forma...