一、 程式設計題
1、 結合turtle庫使用手冊,讀懂下列程式碼,並在jupyter編譯器中執行觀察結果:
依次分析下程式碼:
第一行 通過保留字import引用了Python中用於繪製圖形的turtle庫,as是作為別名之用。
(使用import引用函式庫有兩種方式,但其對函式的使用方式略有不同 import <庫名> | from <庫名> import *)
第二行 使用了turtle.setup()函式.turtle。setup(width,height,startx,starty).作用:設定主窗體的大小和位置。
引數如下:width:視窗寬度,如果值為整數,表示畫素值,如果為小數,表示視窗寬度與螢幕的比例。
height:視窗高度,如果值為整數,表示畫素值,如果為小數,表示視窗高度與螢幕的比例。
startx:視窗左側與螢幕左側的畫素距離,如果值為None,視窗位於螢幕水平中央。
starty:視窗頂部與螢幕頂部的畫素距離,如果值為None,視窗位於螢幕垂直中央。
第三行
第四行 使用了turtle.penup()和turtle.pendown()函式.它們分別表示抬起畫筆和落下畫筆。
turtle.penup()
別名 turtle.pu(),turtle.up()
作用:抬起畫筆,之後移動畫筆不繪製形狀。 引數:無
turtle.pendown()
別名 turtle.pd(),turtle.down()
作用:落下畫筆,之後移動畫筆將繪製形狀。 引數:無
第五行 使用了turtle.pensize()函式.用於設定畫筆尺寸.
turtle.pensize(width)
別名 turtle.width()
作用:設定畫筆寬度,當無引數輸入時返回當前畫筆寬度。
引數如下:
width:設定的畫筆線條寬度,如果為None或者為空,則函式返回當前畫筆寬度。
第六行 使用了turtle.color()函式.用於給畫筆設定顏色。可以用英文名,也可以採用(r,g,b)形式直接輸入顏色值。
第九行 使用了turtle.circle()函式.用來繪製一個弧形.
第十一行 使用了turtle.done()函式.用來停止畫筆繪製,但繪圖窗體不關閉.沒有引數.
2、 垂直輸出“Hello World”,所有程式碼不超過兩行。
3、 編寫一個程式,計算輸入數字N的0次方到5次方結果,並依次輸出這6個結果,輸出結果間用空格分隔。其中:N是一個整數或浮點數。
4、 溫度轉換: 請編寫程式將使用者輸入華氏度轉換為攝氏度,或將輸入的攝氏度轉換為華氏度。轉換演算法如下:(C表示攝氏度、F表示華氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
(1) 輸入輸出的攝氏度採用大寫字母C開頭,溫度可以是整數或小數,如:C12.34指攝氏度12.34度;
(2) 輸入輸出的華氏度採用大寫字母F開頭,溫度可以是整數或小數,如:F87.65指攝氏度87.65度;
(3) 不考慮異常輸入的問題,輸出保留小數點後兩位;
(4) 使用input()獲得測試用例輸入時,不要增加提示字串。
5、貨幣轉換:
人民幣和美元是世界上通用的兩種貨幣之一,寫一個程式進行貨幣間幣值轉換,其中:
人民幣和美元間匯率固定為:1美元 = 6.78人民幣。
程式可以接受人民幣或美元輸入,轉換為美元或人民幣輸出。人民幣採用RMB表示,美元USD表示,符號和數值之間沒有空格。
注意: 獲得輸入請使用input()
#第二題 for each in "Hello World": print(each) print("以下為第二種解法") print("\n".join("Hello World")) print("---------------") #第三題 num = eval(input("請輸入一個數字:")) #如果使用者希望輸入一個數字(小數或負數),並用程式對這個數字進行計算,可以採用eval(input(<輸入提示字串>))的組合. #eval()的作用是將輸入的字串轉變為Pyhon語句,並執行該語句。 #在這裡是將使用者輸入的字串轉換為數字 for each in range(6): print(num**each,end=" ") print() print("---------------") #第四題 while 1: TempStr = input("請輸入帶有符號(F/f/C/c)的溫度值:") #輸出純字元資訊,可以直接將待輸入內容傳遞給input函式. if TempStr[-1] in ['F','f']: C = (eval(TempStr[0:-1])-32)/1.8 print("轉換後的溫度是{:.2f}C".format(C)) #當輸出變數值時,需採用格式化輸出方式,通過format()方法將待輸出變數整理成期望輸出的格式. #這裡print()函式採用槽格式和format()方法將變數和字串結合在一起輸出。 break elif TempStr[-1] in ['C','c']: F = 1.8*eval(TempStr[0:-1])+32 print("轉換後的溫度是{:.2f}F".format(F)) #大括號{}表示一個槽的位置,其中內容有字串後面緊跟的format()方法中的引數C填充 #大括號{:.2f}中的內容表示變數C的輸出格式,具體表示輸出數值取兩位小數值. break else: print("輸入格式有誤!",end="") print() print("---------------") #第五題 money = input("請輸入帶符號的貨幣值(RMB/USD):") if money[-3:] == "USD": U = eval(money[0:-3])*6.78 print("轉換後的貨幣值為:{:.2f}RMB".format(U)) elif money[-3:] == "RMB": R = eval(money[0:-3])/6.78 print("轉換後的貨幣值為:{:.2f}USD".format(R)) else: print("輸入格式有誤")