求任意時間之時針和分針間的角度
為了下面這段程式碼,折騰了一天,從Python開發環境IDE的選擇,到最終實現功能,歷盡艱辛啊,呵呵
1. IDE最終選擇了eclipse+python2.7,開始裝的python3.2,但是版本太新,很多document都是基於2.x的,而3.x和2.x差別有太大,所以最後還是換回了2.7
2. 在eclipse中程式碼有中文會報錯,解決辦法見上一篇blog
3. 將字串轉換為浮點數,因為python中數字變數,不用宣告其資料型別直接用就可以(list,tuple,dict還是需要宣告的),所以開始print出來的hour和minute其實都是字串,所以需要轉換成float,才能後面求模之類的計算
兩種辦法:
1)import string
minuteAngel = string.atof(minute)* 6
2)minuteAngel = float(minute)*6
4. 角度計算後會出現負值,所以要用求絕對值的方法abs()
5. 最重要的還是分析這道題的能力,有了清晰的思路,才能開始寫,coding過程的問題倒是相對容易解決了
===============================================================
#!/usr/bin/python
#coding=utf-8
'''
Created on 2012-2-20
'''
import string
hour = raw_input("請輸入時間:") ;
minute = raw_input("請輸入分鐘:");
print hour,minute
# 將字串轉為浮點數,兩種方法均可
#minuteAngel = string.atof(minute)* 6
#print minuteAngel
#hourAngel = (string.atof(hour)%12)*30 + string.atof(minute)*0.5
#print hourAngel
minuteAngel = float(minute)*6
print minuteAngel
hourAngel = (float(hour)%12)*30 + float(minute)*0.5
print hourAngel
angel = abs(hourAngel - minuteAngel)
print "該時間的角度為:%.2f" %angel