回答編集履歴

2

補足

2019/02/19 04:03

投稿

otn
otn

スコア84529

test CHANGED
@@ -11,6 +11,8 @@
11
11
  ```Python
12
12
 
13
13
  import signal
14
+
15
+ import time
14
16
 
15
17
 
16
18
 
@@ -30,6 +32,14 @@
30
32
 
31
33
  signal.signal(signal.SIGINT,foo)
32
34
 
35
+
36
+
37
+ for i in range(1,20):
38
+
39
+ print(i)
40
+
41
+ time.sleep(1)
42
+
33
43
  ```
34
44
 
35
45
  ですかね。マルチスレッドの場合どうなるかは調べてません.

1

補足を受けての追記

2019/02/19 04:03

投稿

otn
otn

スコア84529

test CHANGED
@@ -1 +1,39 @@
1
1
  `input()`で、キーボード入力待ちになり、Enterキーで続行します。
2
+
3
+
4
+
5
+ #追記
6
+
7
+ > 「コード上の任意のタイミング」ではなくて、「ユーザーが好きなタイミングで」ですか。
8
+
9
+
10
+
11
+ ```Python
12
+
13
+ import signal
14
+
15
+
16
+
17
+ def foo(sig, frame):
18
+
19
+ x = input("""
20
+
21
+ Ctrl-Cが押されました。一時停止中です。続行にはEnterを押してください。
22
+
23
+ プログラム終了する場合は、q を入力:""")
24
+
25
+ if x == "q":
26
+
27
+ exit(1)
28
+
29
+
30
+
31
+ signal.signal(signal.SIGINT,foo)
32
+
33
+ ```
34
+
35
+ ですかね。マルチスレッドの場合どうなるかは調べてません.
36
+
37
+
38
+
39
+ Windowsに特化した別の方法があるかも知れません。