編碼非常新穎。我想通過做一個我想出來的小項目來學習自己的Python。我意識到這將是一個緩慢的過程,但我只是有一個關於循環的問題。如何更改函數內的值
這就是我想要做的事:
- 用戶輸入號碼的清單,如果在列表中的數大於360,則函數將減去360從它,直到它低於360.
- 一旦它是低於360:
- 如果它高於270,它將從360
- 減去數量如果它高於180,它將減去180從數。
- 如果是超過90,將減去180
的號碼,然後 - 它應該打印值。如果這個過程聽起來很熟悉,我試圖將方位角轉換爲方位角。現在我只是專注於獲取數值,然後我會添加方向。
這是我的代碼:
def bearing(x):
for i in range(len(x)):
while x[i]>=360:
x[i]-=360
if x[i]>270:
x[i]==360-x[i]
elif x[i]>180:
x[i]-=180
elif x[i]>90:
x[i]==180-x[i]
print (x)
while循環工作正常,但它停在那裏。我不確定如果我的縮進是錯誤的,或者我使用了錯誤的命令,但任何幫助將不勝感激。
double等於'=='用於檢查值。賦值是單個等於'='的。所以'x [i] == 360-x [i]'應該是'x [i] = 360-x [i]' –
不要減去它,直到它低於360,使用模數運算符'%' –
嘗試添加其他條件最後並在該塊中打印某些內容。我相信沒有一個條件得到滿足。 – faadi