質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

2回答

4267閲覧

python3でのtime.sleepについての

monzyaa

総合スコア12

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/01/17 08:56

time.sleepの精度は低く、ms帯と聞いたのですが、もっと精度よくプログラムを止める方法などはないでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tiitoi

2019/01/17 09:06 編集

OS に依存する話なので、質問欄にお使いの OS を追記できますか? Windows ですと、精度はおそらく 10ms ぐらいでしょうね。
monzyaa

2019/01/17 09:12

申し訳ありませんでした、ラズベリーパイでいろいろといじってみてる感じです...
tiitoi

2019/01/17 09:23

すいません、ラズベリーパイは持っていないのでどのぐらいの精度なのかわかりませんが、time.sleep() で可能な精度より高精度の sleep 方法はないと思います。
guest

回答2

0

ベストアンサー

ビジーループでのスリープが一番いい精度が出せます。

コードの引用元

python

1from time import perf_counter 2 3wait_sec = 10 4print("%d秒待ちます" % wait_sec) 5until = perf_counter() + wait_sec 6while perf_counter() < until: 7 pass 8print("%d秒待ちました" % wait_sec)

投稿2019/01/17 09:24

YouheiSakurai

総合スコア6149

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

monzyaa

2019/01/17 10:42

ありがとうございます!
guest

0

参考情報

  • time.time()は精度があまりよくない?

https://qiita.com/takeopy/items/170d0e1ddbf02ef9fbb9

  • Python3で一定間隔で処理を行う

https://qiita.com/miminashi/items/50a4f0906ab8f18b105d

...
100msec間隔で関数を呼び出したい。どうしたらいいのか。
システムコールとシグナルを使って、OSに一定間隔で呼び出してもらうことにした。
...

投稿2019/01/17 22:29

編集2019/01/17 22:29
katoy

総合スコア22328

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問