簡體   English   中英

在我的代碼中沒有得到我需要的輸出,我不知道為什么。 Python

[英]Not getting the output I need in my code and I can't figure out why. Python

我正在做的練習應該顯示以下輸出:

 Enter name of data file: gps.txt --------------------------------------------------------------------------- Time Latitude Longitude Distance Pace (hh:mm:ss) (deg) (deg) (miles) (min/miles) --------------------------------------------------------------------------- 10:57:32 38.898556 -77.037852 ***** ***** 11:00:45 38.897147 -77.043934 0.341 9.421 11:03:28 38.896432 -77.052102 0.442 6.141 11:05:34 38.897411 -77.047212 0.272 7.730 11:08:58 38.898999 -77.040000 0.403 8.431 11:13:54 38.909032 -77.036894 0.713 6.915 11:19:24 38.920011 -77.029782 0.850 6.471 11:25:47 38.931111 -77.025432 0.802 7.957 --------------------------------------------------------------------------- Your fastest speed was 6 minutes and 9 seconds per mile.

當我在這里運行我的程序時,它被輸出:

 Enter name of data file: gps.txt --------------------------------------------------------------------------- Time Latitude Longitude Distance Pace (hh:mm:ss) (deg) (deg) (miles) (min/miles) --------------------------------------------------------------------------- 10:57:32 38.898556 -77.037852 ***** ***** 11:00:45 38.897147 -77.043934 0.341 1935.282 11:03:28 38.896432 -77.052102 0.442 1500.225 11:05:34 38.897411 -77.047212 0.272 2449.924 11:08:58 38.898999 -77.040000 0.403 1658.896 11:13:54 38.909032 -77.036894 0.713 944.564 11:19:24 38.920011 -77.029782 0.850 799.326 11:25:47 38.931111 -77.025432 0.802 854.834 --------------------------------------------------------------------------- Your fastest speed was 854

如您所見,除了速度和在底部的最快速度外,幾乎所有內容都是正確的。 我正在讀取的文件如下所示:

 10:57:32 38.898556 -77.037852 11:00:45 38.897147 -77.043934 11:03:28 38.896432 -77.052102 11:05:34 38.897411 -77.047212 11:08:58 38.898999 -77.040000 11:13:54 38.909032 -77.036894 11:19:24 38.920011 -77.029782 11:25:47 38.931111 -77.025432

主要問題似乎是您已將“this_pace”設置為“已用時間”,而沒有在計算中考慮距離。

將來,添加跟蹤打印語句來跟蹤執行流程和計算的數據。 例如,打印和檢查主計算循環中的每個變量,會立即顯示問題行。

此外,考慮增量開發:一次添加幾行或一個循環。 在添加更多之前調試它。

我還可以看到:

    current_dist = float(current_time - previous_time)
    time_elapsed = abs(((current_dist - previous_dist)/ 60) / distance)
    this_pace = time_elapsed

在我看來,前兩個是倒退的。 第一個計算經過的時間。 第二個計算步速; 它應該只計算距離,在 this_pace 線上計算速度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM