-1
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Đã thử cài đặt Sherlock để cài đặt Sherlock Python 3.6 trở lên, tôi đã cài đặt Python 3.8.2. Nhưng phiên bản mặc định không được thay đổi, nó vẫn còn như Python 2.7.17.
Hỏi ngày 4 tháng 4 năm 2020 lúc 15:13Apr 4, 2020 at 15:13
1
Đây là một liên kết có thể giúp. Kiểm tra nó ra! Về cơ bản:
Kiểm tra phiên bản Python hiện tại của bạn bằng cách chạy:
Python -V
hoặc
Python --Version
Liệt kê tất cả các mục có sẵn bằng cách chạy:
ls/usr/bin/python
Bây giờ, hãy đặt các ưu tiên phiên bản của bạn bằng cách ban hành các lệnh sau:
Update-Alternative-install/usr/bin/python python /usr/bin/python2.7 1
Update-Alternative-install/usr/bin/python python /usr/bin/python3.8 2
Sau đó, bạn có thể liệt kê các ưu tiên của Python bằng cách:
Cập nhật-thay đổi-Config Python
Cuối cùng, hãy kiểm tra phiên bản Python mặc định của bạn để xác nhận bằng cách lặp lại bước đầu tiên!
Tôi đã bao gồm một ảnh chụp màn hình giống nhau. Kiểm tra nó ra. Thay đổi phiên bản python mặc định ưu tiên.png
Đã trả lời ngày 30 tháng 4 năm 2020 lúc 21:53Apr 30, 2020 at 21:53
0
Chỉ lấy phần cần thiết từ câu trả lời của @George Oyosa
update-alternatives --install /usr/bin/python python /usr/bin/python3.8 2
Chỉ cần thực hiện nó và các giao dịch cập nhật lệnh sẽ xử lý phần còn lại cho bạn.update-alternatives will handle the rest for you.
Đã trả lời ngày 21 tháng 11 năm 2020 lúc 19:32Nov 21, 2020 at 19:32
Đơn giản chỉ cần mở thiết bị đầu cuối và chạy "bí danh python = python3" [không có trích dẫn] sau đó chạy "python -v" để kiểm tra
Đã trả lời ngày 3 tháng 12 năm 2020 lúc 5:56Dec 3, 2020 at 5:56
Về quá trình chuyển đổi
Kali Linux hoàn toàn chuyển sang Python 3. Điều này có nghĩa là bất kỳ công cụ nào được đóng gói bởi Kali đang sử dụng Python 2 đều bị bỏ hoặc chuyển đổi để sử dụng Python 3. Bất kỳ công cụ nào được chuyển đổi thành Python 3 chỉ chứa các tập lệnh với /usr/bin/python3
làm shebang của họ.
Liên quan đến các gói đến trực tiếp từ Debian, chúng đã làm tương tự trên hầu hết các gói, nhưng có một vài ngoại lệ trong đó các gói được phép tiếp tục dựa vào Python 2. Tuy nhiên Shebang và để họ phụ thuộc vào gói nhị phân python2
[thay vì python
trước đây].
Nhờ những thay đổi đó, Debian không còn cần cung cấp ____10 và các nâng cấp gần đây sẽ loại bỏ hiệu quả sự liên kết đó.
Thật không may, khi bạn tải xuống một tập lệnh Python trên web, nó có thể sẽ có ____10 như shebang của nó. Nếu bạn cố gắng thực thi nó mà không cần sửa dòng Shebang, bạn sẽ có lỗi như thế này:
zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
Trong Debian, bạn có thể khôi phục Symlink
zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
0 bằng cách cài đặt:
3 Nếu bạn muốn có nó chỉ vàozsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
python2
5 Nếu bạn muốn có nó chỉ vàozsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
6zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
Giữ khả năng tương thích ngược trong Kali
Với số lượng lớn người dùng không biết cách tránh lỗi trên, chúng tôi đã quyết định rằng Kali sẽ tiếp tục gửi Python 2 theo mặc định [miễn là Debian vẫn cung cấp nó] và ____10 sẽ chỉ ra nó. Chúng tôi cũng đang giữ một vài mô -đun bên ngoài phổ biến [như
zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
8] để các tập lệnh khai thác ngẫu nhiên có cơ hội hợp lý để chạy thành công.Howewer, PIP cho Python2 [còn gọi là Python-PIP] đã biến mất,
zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
9 giống như ┏━[Message from Kali developers]
┃
┃ We have kept /usr/bin/python pointing to Python 2 for backwards
┃ compatibility. Learn how to change this and avoid this message:
┃ ⇒ //www.kali.org/docs/general-use/python3-transition/
┃
┗━[Run “touch ~/.hushlogin” to hide this message]
0 và nó sẽ cài đặt các mô-đun cho Python 3. Xem Câu hỏi thường gặp dưới đây để biết thêm thông tin.Khả năng tương thích này đã được thực hiện bằng cách có
┏━[Message from Kali developers]
┃
┃ We have kept /usr/bin/python pointing to Python 2 for backwards
┃ compatibility. Learn how to change this and avoid this message:
┃ ⇒ //www.kali.org/docs/general-use/python3-transition/
┃
┗━[Run “touch ~/.hushlogin” to hide this message]
1 khuyến nghị python2
, zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
3 và ┏━[Message from Kali developers]
┃
┃ We have kept /usr/bin/python pointing to Python 2 for backwards
┃ compatibility. Learn how to change this and avoid this message:
┃ ⇒ //www.kali.org/docs/general-use/python3-transition/
┃
┗━[Run “touch ~/.hushlogin” to hide this message]
4 để chúng được cài đặt theo mặc định trong khi có thể tháo rời bởi người dùng muốn loại bỏ chúng.Để làm cho người dùng nhận thức được tình huống này, chúng tôi đang hiển thị một thông báo hứa hẹn khi đăng nhập:
┏━[Message from Kali developers]
┃
┃ We have kept /usr/bin/python pointing to Python 2 for backwards
┃ compatibility. Learn how to change this and avoid this message:
┃ ⇒ //www.kali.org/docs/general-use/python3-transition/
┃
┗━[Run “touch ~/.hushlogin” to hide this message]
Hy vọng là họ sẽ đọc bài viết này và biết làm thế nào để giải quyết các vấn đề khác nhau mà họ sẽ gặp phải.
Các câu hỏi thường gặp
Tôi đã tải xuống một kịch bản Python, tôi nên làm gì?
Bạn cần kiểm tra dòng shebang của nó. Dòng Shebang là dòng đầu tiên của một tập lệnh và nó bắt đầu bằng
┏━[Message from Kali developers]
┃
┃ We have kept /usr/bin/python pointing to Python 2 for backwards
┃ compatibility. Learn how to change this and avoid this message:
┃ ⇒ //www.kali.org/docs/general-use/python3-transition/
┃
┗━[Run “touch ~/.hushlogin” to hide this message]
5 theo sau là đường dẫn của trình thông dịch sẽ được sử dụng để thực thi tập lệnh.Nếu trình thông dịch là
zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
0, bạn nên đọc tài liệu để xem liệu tập lệnh có thể chạy với Python 3. Nếu có, thì bạn nên cập nhật dòng Shebang để trỏ đến /usr/bin/python3
. Nếu không, bạn nên cập nhật nó để trỏ đến /usr/bin/python2
.Các dòng Shebang tốt có thể được giữ:
9┏━[Message from Kali developers] ┃ ┃ We have kept /usr/bin/python pointing to Python 2 for backwards ┃ compatibility. Learn how to change this and avoid this message: ┃ ⇒ //www.kali.org/docs/general-use/python3-transition/ ┃ ┗━[Run “touch ~/.hushlogin” to hide this message]
0[email protected]:~$ sudo apt remove python-is-python2
1[email protected]:~$ sudo apt remove python-is-python2
2[email protected]:~$ sudo apt remove python-is-python2
Các dòng Shebang xấu cần được cập nhật:
3[email protected]:~$ sudo apt remove python-is-python2
4[email protected]:~$ sudo apt remove python-is-python2
Làm thế nào tôi có thể thoát khỏi thông báo đăng nhập?
Thông báo sẽ chỉ được hiển thị miễn là
zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
0 điểm vào Python không dùng nữa 2. Bây giờ bạn đã biết về tình huống này và bạn biết cách sửa dòng các kịch bản cũ Shebang, bạn có thể loại bỏ zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
0:[email protected]:~$ sudo apt remove python-is-python2
Hoặc bạn có thể quyết định làm cho nó chỉ vào Python 3:
[email protected]:~$ sudo apt install -y python-is-python3
Một trong những hành động đó sẽ thoát khỏi thông báo đăng nhập.
Ngoài ra, nếu bạn muốn giữ
zsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
0 chỉ vào python2
và bạn vẫn muốn vô hiệu hóa tin nhắn, bạn có thể làm điều này:[email protected]:~$ mkdir -p ~/.local/share/kali-motd
[email protected]:~$ touch ~/.local/share/kali-motd/disable-old-python-warning
Tôi có một kịch bản Python 2 không chạy, tôi nên làm gì?
Nếu tập lệnh Python 2 của bạn sử dụng các mô -đun không nằm trong số những mô -đun mà chúng tôi gửi trong gói tương thích
┏━[Message from Kali developers]
┃
┃ We have kept /usr/bin/python pointing to Python 2 for backwards
┃ compatibility. Learn how to change this and avoid this message:
┃ ⇒ //www.kali.org/docs/general-use/python3-transition/
┃
┗━[Run “touch ~/.hushlogin” to hide this message]
4 [xem danh sách tại đây], thì bạn có thể thử [email protected]:~$ sudo apt install -y python-is-python3
0 để thiết lập môi trường Python 2 bị cô lập hoàn toàn nơi bạn có thể sử dụng PIP để cài đặt các mô -đun bổ sung. Xem chúng tôi bằng cách sử dụng các phiên bản EOL Python trên bài viết của Kali.Tôi muốn Pip cho Python 2, làm thế nào tôi có thể lấy lại được?
Hãy thử
[email protected]:~$ sudo apt install -y python-is-python3
0. Xem chúng tôi bằng cách sử dụng các phiên bản EOL Python trên bài viết của Kali.Tôi đã viết một kịch bản Python, tôi nên làm gì?
Tốt với người dùng cuối:
- Tài liệu rõ ràng liệu mã của bạn có chạy với Python 3 hay Python 2
- Sử dụng
/usr/bin/python3
hoặc/usr/bin/python2
làm dòng Shebang, nó có thể biểu cảm hơn
0 và có nhiều khả năng có kết quả mong muốnzsh: /home/kali/test.py: bad interpreter: /usr/bin/python: no such file or directory
- Cập nhật nó cho khả năng tương thích của Python 3 nếu điều đó chưa xảy ra