回答編集履歴
2
補足
answer
CHANGED
@@ -5,6 +5,7 @@
|
|
5
5
|
|
6
6
|
```Python
|
7
7
|
import signal
|
8
|
+
import time
|
8
9
|
|
9
10
|
def foo(sig, frame):
|
10
11
|
x = input("""
|
@@ -14,6 +15,10 @@
|
|
14
15
|
exit(1)
|
15
16
|
|
16
17
|
signal.signal(signal.SIGINT,foo)
|
18
|
+
|
19
|
+
for i in range(1,20):
|
20
|
+
print(i)
|
21
|
+
time.sleep(1)
|
17
22
|
```
|
18
23
|
ですかね。マルチスレッドの場合どうなるかは調べてません.
|
19
24
|
|
1
補足を受けての追記
answer
CHANGED
@@ -1,1 +1,20 @@
|
|
1
|
-
`input()`で、キーボード入力待ちになり、Enterキーで続行します。
|
1
|
+
`input()`で、キーボード入力待ちになり、Enterキーで続行します。
|
2
|
+
|
3
|
+
#追記
|
4
|
+
> 「コード上の任意のタイミング」ではなくて、「ユーザーが好きなタイミングで」ですか。
|
5
|
+
|
6
|
+
```Python
|
7
|
+
import signal
|
8
|
+
|
9
|
+
def foo(sig, frame):
|
10
|
+
x = input("""
|
11
|
+
Ctrl-Cが押されました。一時停止中です。続行にはEnterを押してください。
|
12
|
+
プログラム終了する場合は、q を入力:""")
|
13
|
+
if x == "q":
|
14
|
+
exit(1)
|
15
|
+
|
16
|
+
signal.signal(signal.SIGINT,foo)
|
17
|
+
```
|
18
|
+
ですかね。マルチスレッドの場合どうなるかは調べてません.
|
19
|
+
|
20
|
+
Windowsに特化した別の方法があるかも知れません。
|