Khi tôi nhập os.system("whoami")
bằng Python, làm gốc, nó trả về root
, nhưng khi tôi cố gán nó cho biến x = os.system("whoami")
, giá trị của nó là x thành 0. Tại sao ? (:.Giá trị trả về của x = os.system (..)
Trả lời
os.system()
trả về (mã hóa) giá trị quá trình thoát 0
nghĩa với thành công:
Trên Unix, giá trị trả về là tình trạng thoát của quá trình mã hóa trong các định dạng cụ thể cho
wait()
Lưu ý POSIX đó. không xác định ý nghĩa của giá trị trả về của hệ thống C() chức năng, do đó giá trị trả về của hàm Python là hệ thống phụ thuộc vào.
Kết quả bạn nhìn thấy được ghi vào stdout
, vì vậy giao diện điều khiển hoặc thiết bị đầu cuối của bạn và không được trả lại cho Python người gọi.
Nếu bạn muốn chụp stdout
, sử dụng subprocess.check_output()
thay vì:
x = subprocess.check_output(['whoami'])
os.system ('lệnh') trả về một số 16 bit, trong đó có 8 bit đầu tiên từ trái (LSB) nói về tín hiệu được sử dụng bởi os để đóng lệnh, 8 bit tiếp theo nói về mã trả về của lệnh.
Tham khảo câu trả lời của tôi để biết thêm chi tiết trong What is the return value of os.system() in Python?
- 1. Giá trị trả về của toán tử ++
- 2. Lấy giá trị trả về của JOptionPane
- 3. giá trị trả về của copy_from_user()
- 4. Giá trị trả về Mybatis
- 5. Nhận giá trị trả về từ setTimeout
- 6. np.where nhiều giá trị trả về
- 7. Giá trị trả về của WPF Gọi giá trị trả lại luôn là số
- 8. Giá trị vô hạn của PHP trong Bitwise Operations trả về các giá trị lạ
- 9. SignalR hàm trả về giá trị
- 10. Giá trị trả về từ mã Java
- 11. Giá trị trả về Const trong Java
- 12. Giá trị trả về của toán tử "==" trong C
- 13. giá trị trả về của hệ thống() trong C
- 14. Giá trị trả về từ quy trình con của Python
- 15. Giá trị trả về của subprocess.call() là gì?
- 16. Giá trị trả về của hàm đệ quy là 'undefined'
- 17. Tối ưu hóa giá trị trả về của tuple/tie
- 18. Giá trị trả về của Socket.accept() trong python
- 19. Sử dụng giá trị trả về của phương thức baseclass?
- 20. Sử dụng giá trị trả về của khối trong JavaScript
- 21. Android menuitem onclick giá trị trả về xử lý của
- 22. Kênh của Go có trả về hai giá trị không?
- 23. PHP open_basedir - để trả về giá trị?
- 24. fread() trả về giá trị trong C
- 25. trả về hai giá trị từ webservice
- 26. Bitmap getWidth trả về giá trị sai
- 27. Trả về một giá trị với psycopg2
- 28. setInterval/setTimeout giá trị trả về
- 29. Bắt giá trị trả về từ Task.Run
- 30. Truy vấn SUM Chọn của tôi trả về giá trị rỗng. Nó sẽ trả về 0