answer 135 Bạn có một vài lựa chọn: Chạy chương trình từ một thiết bị đầu cuối đã mở. Mở một dấu nhắc lệnh và gõ: python myscript.py
Để làm việc đó, bạn cần python thực
thi trong đường dẫn của bạn. Chỉ cần kiểm tra cách chỉnh sửa các biến môi trường trên Windows và thêm C:\PYTHON26 (hoặc bất kỳ thư mục nào bạn đã cài đặt python vào). Khi chương trình kết thúc, nó sẽ đưa bạn
trở lại dấu nhắc cmd thay vì đóng cửa sổ. Thêm mã để chờ ở cuối tập lệnh của bạn. Đối với Python2, thêm ... raw_input()
... ở cuối đoạn script làm cho nó chờ Enterkhóa. Phương pháp đó gây khó chịu vì bạn phải sửa đổi tập lệnh và phải nhớ xóa nó khi hoàn tất. Đặc biệt khó chịu khi
kiểm tra tập lệnh của người khác. Đối với Python3, sử dụng input() . Sử dụng một trình soạn thảo tạm dừng cho bạn. Một số trình soạn thảo được chuẩn bị cho python sẽ tự động tạm dừng cho bạn sau khi thực hiện. Các trình soạn thảo khác cho phép bạn định cấu hình dòng lệnh mà nó sử dụng để chạy chương trình của bạn. Tôi thấy nó đặc biệt hữu ích khi cấu hình nó là "
python -i myscript.py " khi chạy. Điều đó đưa bạn đến một lớp vỏ trăn sau khi kết thúc chương trình, với môi trường chương trình được tải, do đó bạn có thể tiếp tục chơi với các biến và gọi các hàm và phương thức.
135 hữu ích 5 bình luận chia sẻ answer 43 cmd /k là cách điển hình để mở bất kỳ ứng dụng bảng điều khiển nào (không chỉ Python) với cửa sổ bàn điều khiển sẽ vẫn còn sau khi đóng ứng dụng. Cách dễ nhất tôi có thể nghĩ để làm điều đó, là nhấn Win + R, nhập
cmd /k và sau đó kéo và thả tập lệnh bạn muốn vào hộp thoại Run.
43 hữu ích 5 bình luận
chia sẻ answer 33 Bắt đầu tập lệnh từ cửa sổ cmd đã mở hoặc ở cuối tập lệnh thêm một cái gì đó như thế này, trong Python 2: raw_input("Press enter to exit ;)")
Hoặc, trong Python 3: input("Press enter to exit ;)")
33 hữu ích 3 bình luận chia sẻ answer 18 Để giữ cho cửa sổ của bạn mở trong trường hợp ngoại lệ (chưa, trong khi in ngoại lệ) Con trăn 2if __name__ == '__main__':
try:
## your code, typically one function call
except Exception:
import sys
print sys.exc_info()[0]
import traceback
print traceback.format_exc()
print "Press Enter to continue ..."
raw_input()
Để giữ cho cửa sổ mở trong mọi trường hợp: if __name__ == '__main__':
try:
## your code, typically one function call
except Exception:
import sys
print sys.exc_info()[0]
import traceback
print traceback.format_exc()
finally:
print "Press Enter to continue ..."
raw_input()
Con trăn 3Đối với Python3, bạn sẽ phải sử dụng input() thay thếraw_input() và dĩ nhiên điều chỉnh các print câu lệnh. if __name__ == '__main__':
try:
## your code, typically one function call
except BaseException:
import sys
print(sys.exc_info()[0])
import traceback
print(traceback.format_exc())
print("Press Enter to continue ...")
input()
Để giữ cho cửa sổ mở trong mọi trường hợp: if __name__ == '__main__':
try:
## your code, typically one function call
except BaseException:
import sys
print(sys.exc_info()[0])
import traceback
print(traceback.format_exc())
finally:
print("Press Enter to continue ...")
input()
18 hữu ích 1 bình luận chia sẻ answer 13 bạn có thể kết hợp các câu trả lời trước: (đối với người dùng Notepad ++) nhấn F5 để chạy tập lệnh hiện tại và gõ lệnh: cmd /k python -i "$(FULL_CURRENT_PATH)"
bằng cách này, bạn sẽ ở trong chế độ tương
tác sau khi thực thi tập lệnh python Notepad ++ của mình và bạn có thể chơi xung quanh với các biến của mình, v.v. 13 hữu ích 3 bình luận
chia sẻ answer 9 Tạo một tệp bó Windows với 2 dòng sau: python your-program.py
pause
9 hữu ích 4 bình luận chia sẻ answer 6 Trong python 2, bạn có thể làm điều đó với: raw_input () >>print("Hello World!")
>>raw_input('Waiting a key...')
Trong python 3 bạn có thể làm điều đó với: input () >>print("Hello world!")
>>input('Waiting a key...')
Ngoài ra, bạn có thể làm điều đó với
time.s ngủ (thời gian) >>import time
>>print("The program will close in 5 seconds")
>>time.sleep(5)
6 hữu ích 0 bình luận chia sẻ answer 6 Sử dụng atexit , bạn có thể tạm dừng chương trình ngay khi thoát. Nếu một lỗi / ngoại lệ là
lý do cho việc thoát, nó sẽ tạm dừng sau khi in stacktrace. import atexit
# Python 2 should use `raw_input` instead of `input`
atexit.register(input, 'Press Enter to continue...')
Trong chương trình của tôi, tôi đặt lệnh gọi atexit.register trong except mệnh đề, để nó sẽ chỉ tạm dừng nếu có sự cố. if __name__ == "__main__":
try:
something_that_may_fail()
except:
# Register the pause.
import atexit
atexit.register(input, 'Press Enter to continue...')
raise # Reraise the exception.
6 hữu ích 0 bình luận chia sẻ answer 5 Tôi đã có một vấn đề tương tự. Với Notepad ++, tôi thường sử dụng lệnh: C:\Python27\python.exe "$(FULL_CURRENT_PATH)" đóng cửa sổ cmd ngay sau khi mã kết thúc. Bây giờ tôi đang sử dụng
cmd /k c:\Python27\python.exe "$(FULL_CURRENT_PATH)" để giữ cho cửa sổ cmd mở. 5 hữu ích 1 bình luận
chia sẻ answer 4 Trên Python 3 input('Press Enter to Exit...')
Sẽ làm mánh khóe. 4 hữu ích 0 bình luận chia sẻ answer 2 Để giữ cho cửa sổ mở, tôi đồng ý với Anurag và đây là những gì tôi đã làm để giữ cho các cửa sổ của mình mở cho các chương trình loại tính toán ngắn. Điều này sẽ chỉ hiển thị một con trỏ không
có văn bản: raw_input()
Ví dụ tiếp theo này sẽ cung cấp cho bạn một thông báo rõ ràng rằng chương trình đã được thực hiện và không chờ đợi trên một dấu nhắc đầu vào khác trong chương trình: print('You have reached the end and the "raw_input()" function is keeping the window open')
raw_input()
Chú thích! (1) Trong python 3, không có raw_input () , chỉ có đầu vào
() . (2) Sử dụng dấu ngoặc đơn để chỉ chuỗi; mặt khác, nếu bạn gõ gấp đôi xung quanh bất cứ thứ gì, chẳng hạn như "raw_input ()", nó sẽ nghĩ rằng đó là một hàm, biến, v.v. và không phải là văn bản.
Trong ví dụ tiếp theo này, tôi sử dụng dấu ngoặc kép và nó sẽ không hoạt động vì nó nghĩ rằng có sự ngắt
quãng trong dấu ngoặc giữa "hàm" và "hàm" mặc dù khi bạn đọc nó, tâm trí của bạn có thể hiểu ý nghĩa hoàn hảo của nó: print("You have reached the end and the "input()" function is keeping the window open")
input()
Hy vọng rằng điều này sẽ giúp những người khác có thể bắt đầu và vẫn chưa biết máy tính nghĩ gì. Nó có thể mất một lúc. : o) 2 hữu ích 0 bình luận chia sẻ answer 2 Nếu bạn muốn chạy tập lệnh của mình từ lối tắt trên màn hình, nhấp chuột phải vào tệp python của bạn và chọn Send to|Desktop (create shortcut) . Sau đó nhấp chuột phải vào phím tắt và chọn Thuộc tính. Trên
tab Phím tắt, chọn hộp văn bản Target: và thêm cmd /k vào trước đường dẫn và bấm OK. Phím tắt bây giờ sẽ chạy tập lệnh của bạn mà không cần đóng và bạn không cầninput('Hit enter to close') Lưu ý, nếu bạn có nhiều phiên bản python trên máy của mình, hãy thêm tên của python cần thiết có thể thực thi được giữa cmd / k và đường dẫn scipt như thế này: cmd /k python3 "C:\Users\<yourname>\Documents\your_scipt.py"
2 hữu ích 1 bình luận chia sẻ answer 1 Ngoài input và raw_input , bạn cũng có thể sử dụng một while vòng lặp vô hạn , như thế này:
while True: pass (Python 2.5 + / 3) hoặc while 1: pass (tất cả các phiên bản của Python 2/3). Điều này có thể sử dụng sức mạnh tính toán, mặc dù. Bạn cũng có thể chạy chương trình từ dòng lệnh. Nhập python vào dòng lệnh (Mac OS X Terminal) và thông báo Python 3.?.? (Phiên bản Python của bạn) Nó không hiển thị phiên bản Python của bạn,
hoặc nói python: command not found , xem xét việc thay đổi giá trị PATH (giá trị enviromentl, được liệt kê ở trên) / type C:\(Python folder\python.exe . Nếu thành công, hãy nhập python hoặc C:\(Python installation)\python.exe và thư mục đầy đủ của chương trình của bạn. 1 hữu ích 1 bình luận chia sẻ answer 0 Một câu trả lời rất muộn màng, nhưng tôi đã tạo một tệp Windows Batch pythonbat.bat có tên như sau: python.exe %1
@echo off
echo.
pause
và sau đó được chỉ định pythonbat.bat làm trình xử
lý mặc định cho .py các tệp. Bây giờ, khi tôi bấm đúp vào một .py tệp trong File Explorer, nó sẽ mở một cửa sổ giao diện điều khiển mới, chạy tập lệnh Python và sau đó tạm dừng (vẫn mở), cho đến khi tôi nhấn bất kỳ phím nào ... Không có thay đổi cần thiết cho bất kỳ tập lệnh Python. Tôi vẫn có thể mở cửa sổ giao diện điều khiển và chỉ định
python myscript.py nếu tôi muốn ... (Tôi chỉ nhận thấy @maurizio đã đăng câu trả lời chính xác này) 0 hữu ích 0 bình
luận chia sẻ answer 1 - Tới đây và tải
xuống và cài đặt Notepad ++
- Tới đây và tải xuống và cài đặt Python 2.7 chứ không phải 3.
- Bắt đầu, chạy Powershell. Nhập theo chỉ dẫn.
[Environment]::SetEnvironmentVariable("Path", "$env:Path;C:\Python27", "User") - Đóng Powershell và mở lại nó.
- Tạo một thư mục cho các chương trình của
bạn. kịch bản mkdir
- Mở thư mục cd script
- Trong Notepad ++, trong một loại tệp mới:
print "hello world" - Lưu tệp dưới dạng hello.py
- Quay trở lại powershell và đảm bảo bạn đang ở đúng thư mục bằng cách gõ dir. Bạn sẽ thấy tập tin của bạn hello.py ở đó.
- Tại dấu nhắc Powershell:
python hello.py
1 hữu ích 0 bình luận chia sẻ answer 1 Một cách đơn giản để giữ cho cửa sổ mở: counter = 0
While (True):
If (counter == 0):
# Code goes here
counter += 1
Bộ đếm là mã sẽ không lặp lại. 1 hữu ích 0 bình luận chia sẻ answer 2 Trên windows 10 chèn lúc năn nỉ này: #!/usr/bin/env python
# -*- coding: utf-8 -*-
Lạ, nhưng nó hoạt động với tôi! (Tất nhiên là cùng với đầu vào () ở cuối) 2 hữu ích 1 bình luận chia sẻ |