書名: Python入門很輕松(微課超值版)作者名: 云尚科技本章字數: 604字更新時間: 2020-09-01 15:58:02
3.5 新手疑難問題解答
疑問1:通過下面的代碼求圓面積時報錯怎么辦?
>>> a=input("請輸入半徑: ") 請輸入半徑: 12.2 >>> b=3.1416*a*a Traceback (most recent call last): File "<pyshell#17>", line 1, in <module> b=a*a TypeError: can't multiply sequence by non-int of type 'str'
解答:因為input()函數輸入的是字符串格式,所以在鍵盤輸入的浮點數并不是真正的浮點數,而是字符串形式。因為radius是字符串形式,不可以相乘,所以在執行語句b=3.1416*a*a時會報錯。這里使用float()函數強制將輸入的半徑值轉換為浮點數。
修改代碼如下即可解決問題。
>>> a= float(input("請輸入半徑: "))
疑問2:如何使用range()函數?
解答:range()函數可創建一個整數列表,一般用在for循環中。語法格式如下:
range(start, stop[, step])
各個參數的含義如下:
start:計數從start開始。默認是從0開始。例如,range(5)等價于range(0, 5)。
stop:計數到stop結束,但不包括stop。例如,range(0, 5)是[0, 1, 2, 3, 4]沒有5。
step:步長,默認為1。例如,range(0, 5)等價于range(0, 5, 1)。
☆大牛提醒☆
在使用range()函數時,如果只有一個參數,那么表示指定的stop;如果有兩個參數,則表示指定的start和stop;如果三個參數都存在時,最后一個參數是step。
如果需要遍歷數字序列,通常會用到range()函數,結合循環控制語句,將起到事半功倍的作用。
使用range()函數可以生成數列。例如:
>>> for a in range( 5): print (a) 1 2 3 4
使用range()函數也可以指定區間的值。例如:
>>> for n in range(5,9): print (n) 5 6 7 8
使用range()函數還可以指定數字開始并指定不同的增量。例如:
>>> for n in range(0,10,2): print (n) 0 2 4 6 8
從結果可以看出,增量為2。增量也可以使用負值。例如:
>>>for n in range(0,-10,-2): print (n) 0 -2 -4 -6 -8
推薦閱讀