Python 程式練習題(二)

2022-08-22 21:00:09 字數 3334 閱讀 8039

2.1溫度轉換程式。

**如下:

t=input("

請輸入帶符號的溫度值(如:32c):")

if t[-1] in ["

c","c"

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

print("

轉換後的溫度為:%.0ff

"%f)

elif t[-1] in ["

f","f"

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

print("

轉換後的溫度為:%.0fc

"%c)

else

:

print("

輸入錯誤!

")

知識點整理:

1.t[-1]表示取輸入值的倒數第乙個元素,此處是取最後乙個字元(

c/c/f/f

)。2.t[0:-1]表示第乙個元素到倒數第二個元素的切片,簡單的說,就是表示除最後乙個字元以外的字串。

3.%.0f表示取整,

%f指輸出變數

f。執行結果:

上面可以看到,只輸入數字會顯示錯誤,而只輸入符號會怎麼樣呢?讓我們試著輸入乙個符號,結果顯示如下。

出錯的原因是無法將字元型變數轉換為浮點型float,因此無法進行計算。

現修改例項2.1,採用

eval(input(<

提示內容

>))

替換現有輸入部分,並使輸出的溫度值為整數。

**如下:

t = eval(input('

請輸入溫度值(無單位):'))

d = input('

請輸入單位:')

if d in ['

f', 'f'

]: c = (t - 32)/1.8

print('

轉換後的溫度為:c

'.format(c))

elif d in ['

c', 'c'

]: f = 1.8*t + 32

print('

轉換後的溫度為:f

'.format(f))

else

:

print('

輸入錯誤!

')

執行結果:

2.2匯率兌換程式。按照溫度轉換程式的設計思路,按照1美元

=6人民幣匯率編寫乙個美元和人民幣的雙向兌換程式。

**如下:

t=input("

請輸入帶單位的金錢數(如30¥):")

if t[-1] in ["¥"

]: m=eval(t[:-1])/6

print("

兌換後為:$

".format(m))

elif t[-1] in ["$"

]: r=6*eval(t[:-1])

print("

兌換後為:¥

".format(r))

else

:

print("

輸入錯誤!

")

知識點整理:

1.eval(字串

>)

函式能夠以

python

表示式的方式解析並執行字串,並將返回結果輸出。

2.python語言中,字串通過

format()

方法進行格式化處理。

format方法的基本使用格式如下:

.format(<

逗號分隔的引數

>)

print("{}".format(m)),其中{}輸出的是

m的值。

執行結果:

4.4猜數遊戲。

**如下:

import

random

w=0#

定義w並初始化

p=random.randint(0,100)

n=0while w!=p:

n+=1

#這句不能單獨拿出while迴圈外,否則會無限迴圈

w=int(input('

請輸入乙個0-100之間的整數:'))

if w>p:

print('

遺憾,太大了!

')

elif w

print('

遺憾,太小了!')

else

:

print('

**'+str(n)+'

次,你猜中了!')

break

知識點整理:

1.random庫採用梅森旋轉演算法生成偽隨機數序列,提供了不同型別的隨機數函式,所有函式都是基於最基本的

random.random()

函式擴充套件實現。

2.randint(a,b)是

random

庫的常用函式之一,用於生成乙個

[a,b]

之間的整數。

3.str(n)是將

n的資料型別轉換為

string

型別,因為

python

拼接字串比較特殊,無法自動轉換資料型別。

4.break用來跳出最內層

for或

while

迴圈,脫離該迴圈後程式從迴圈**後繼續執行。

執行結果:

python練習題(二)

1.企業發放的獎金根據利潤提成。利潤 i 低於或等於10萬元時,獎金可提10 利潤高 於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可可提 成7.5 20萬到40萬之間時,高於20萬元的部分,可提成5 40萬到60萬之間時高於 40萬元的部分,可提成3 60萬到10...

Python練習題(二)

1.python 裡 match 與 search 的區別?match 函式只檢測 re 是不是在 string 的開始位置匹配,search 會掃瞄整個 string 查詢匹配 也就是說 match 只有在 0 位置匹配成功的話才有返回,如果不是開始位置匹配成功的話,match 就返回 none。...

python書中練習題 python練習題

1 定義乙個空列表,接收從鍵盤輸入的整數,把列表傳給乙個從大到小排序的函式,再輸出排序後的列表的值 listex b 0 a int input 請輸入列表長度 while b a num int input 請輸入字元 b 1 print listex sum 0 for i in range 0...