Hướng dẫn is python installed by default on rhel? - python có được cài đặt theo mặc định trên rhel không?

Mười năm trước, các nhà phát triển ngôn ngữ lập trình Python đã quyết định làm sạch mọi thứ và phát hành phiên bản không tương thích ngược, Python 3. Ban đầu họ đã đánh giá thấp tác động của những thay đổi và sự phổ biến của ngôn ngữ. Tuy nhiên, trong thập kỷ qua, đại đa số các dự án cộng đồng đã di chuyển sang phiên bản mới và các dự án lớn hiện đang giảm hỗ trợ cho Python 2.

Trong Red Hat Enterprise Linux 8, Python 3.6 là mặc định. Nhưng Python 2 vẫn có sẵn trong Rhel 8.

Sử dụng Python trong Rhel 8

Để cài đặt Python, nhập yum install python3.

Để chạy Python, gõ python3.

Nếu điều đó không hiệu quả với bạn, hoặc bạn cần thêm chi tiết, hãy đọc tiếp!

Python 3

Trong Rhel 8, Python 3.6 là phiên bản Python được hỗ trợ đầy đủ, được hỗ trợ đầy đủ. Tuy nhiên, nó không phải lúc nào cũng được cài đặt. Tương tự như bất kỳ công cụ có sẵn nào khác, sử dụng yum install python3 để có được nó.

Tên gói bổ trợ thường có tiền tố python3. Sử dụng yum install python3-requests để cài đặt thư viện phổ biến để tạo kết nối HTTP.

Python 2

Không phải tất cả các phần mềm hiện có đã sẵn sàng để chạy trên Python 3. Và đó là OK! Rhel 8 vẫn chứa ngăn xếp Python 2, có thể được cài đặt song song với Python 3. Nhận nó bằng cách sử dụng yum install python2 và chạy với python2.

Tại sao không chỉ là Python Python?

Được rồi, được rồi, vì vậy có python3python2. Nhưng nếu tôi chỉ sử dụng

alternatives --set python /usr/bin/python3
1 thì sao? Tốt…

$ python
-bash: python: command not found

Không có lệnh

alternatives --set python /usr/bin/python3
1 theo mặc định.

Tại sao? Thành thật mà nói, chúng tôi không thể đồng ý những gì

alternatives --set python /usr/bin/python3
1 nên làm. Có hai nhóm nhà phát triển. Người ta mong đợi
alternatives --set python /usr/bin/python3
1 có nghĩa là Python 2 và Python còn lại 3. Cả hai không phải lúc nào cũng nói chuyện với nhau, vì vậy bạn có thể là thành viên của một trại và không biết ai từ người kia - nhưng họ tồn tại.

Ngày nay, vào năm 2018, phía

alternatives --set python /usr/bin/python3
5 phổ biến hơn, ngay cả trong số những người thích Python 3 (mà họ đánh vần là python3). Phía này cũng được hỗ trợ bởi một khuyến nghị chính thức, PEP 394. Tuy nhiên, chúng tôi hy vọng rằng quan điểm này sẽ trở nên ít phổ biến hơn nhiều trong vòng đời của RHEL 8. Bằng cách làm cho
alternatives --set python /usr/bin/python3
1 luôn có nghĩa là Python 2, Red Hat sẽ được vẽ vào một góc .

Lệnh Python không được chuyển động

Điều đó nói rằng, có những ứng dụng mong đợi một lệnh

alternatives --set python /usr/bin/python3
1 sẽ tồn tại và giả định đó có thể khó thay đổi. Đó là lý do tại sao bạn có thể sử dụng cơ chế thay thế để cho phép hệ thống lệnh
alternatives --set python /usr/bin/python3
1 không được giải thích và đặt nó thành một phiên bản cụ thể:

alternatives --set python /usr/bin/python3

Đối với Python 2, hãy sử dụng yum install python30 thay thế. Để biết chi tiết về cách hoàn nguyên các thay đổi hoặc thực hiện thiết lập tương tác, xem yum install python31.

Lưu ý, chúng tôi không đề xuất phương pháp này. Chúng tôi khuyên bạn nên tham khảo rõ ràng & nbsp; ________ 3 & nbsp; hoặc python2. Bằng cách đó, các tập lệnh và lệnh của bạn sẽ hoạt động trên bất kỳ máy nào có phiên bản Python phù hợp được cài đặt.not recommend this approach. We recommend you explicitly refer to python3 or python2. That way, your scripts and commands will work on any machine that has the right version of Python installed.

Lưu ý rằng điều này chỉ hoạt động cho chính lệnh

alternatives --set python /usr/bin/python3
1. Các gói và các lệnh khác không có các biến thể không được cấu hình. Ngay cả khi bạn định cấu hình
alternatives --set python /usr/bin/python3
1, các lệnh yum install python36 hoặc yum install python37 sẽ không hoạt động.

Luôn luôn sử dụng phiên bản rõ ràng trong những trường hợp này. Tốt hơn nữa, đừng dựa vào các tập lệnh trình bao bọc cho yum install python37, yum install python39 và các mô -đun Python khác mà bạn gọi từ dòng lệnh. & NBSP; Thay vào đó, hãy sử dụng ____ 30, & nbsp; ________ 31, python32.

Gói của bên thứ ba

Không phải tất cả phần mềm Python đều được vận chuyển với Rhel 8 - chỉ có rất nhiều điều mà Red Hat có thể xác minh, đóng gói và hỗ trợ.

Để cài đặt gói của bên thứ ba, nhiều nguồn trên Internet sẽ đề xuất sử dụng python33. Đừng làm điều này! Lệnh này dịch sang tải xuống một gói từ internet và chạy nó trên máy của tôi dưới dạng root để cài đặt nó.Do not do this! This command translates to “download a package from the internet, and run it on my machine as root to install it”.

Ngay cả khi gói là đáng tin cậy, đây là một ý tưởng tồi. Một phần lớn của Rhel 8 dựa vào Python 3.6. Nếu bạn ném vào một gói khác, không có gì đảm bảo rằng nó sẽ cùng tồn tại hòa bình với phần còn lại của hệ thống. Có một số biện pháp bảo vệ tại chỗ, nhưng bạn thường cho rằng python34 sẽ phá vỡ hệ thống của bạn.this is a bad idea. A large part of RHEL 8 relies on Python 3.6. If you throw in another package, there's no guarantee that it will co-exist peacefully with the rest of the system. There are some protections in place, but you should generally assume that python34 will break your system.

.

Nếu bạn muốn sử dụng các gói của bên thứ ba, hãy tạo môi trường ảo bằng cách sử dụng python37 (hoặc cho Python 2, cài đặt python38 và chạy python39). Sau đó, kích hoạt môi trường bằng cách sử dụng yum install python30 và cài đặt các gói vào nó bằng yum install python31. Các gói sau đó sẽ có sẵn miễn là môi trường được kích hoạt. Mặc dù điều này không bảo vệ bạn trước các gói độc hại, nhưng nó bảo vệ hệ thống khỏi sự phá vỡ bất ngờ.

Khi một môi trường ảo đang hoạt động, các lệnh không được chuyển tiếp như

alternatives --set python /usr/bin/python3
1 và yum install python37 sẽ đề cập đến phiên bản Python tạo ra môi trường ảo. Vì vậy, để cài đặt gói yêu cầu, Run & nbsp; ________ 44 (hoặc nếu bạn thích rõ ràng, yum install python35).

Công tắc yum install python36 làm cho môi trường sử dụng lại các thư viện được cài đặt trên toàn hệ thống. Để nó ra để có được một môi trường bị cô lập, nơi tất cả các thư viện bên ngoài thư viện tiêu chuẩn của Python cần được cài đặt rõ ràng.

Một khả năng khác là cài đặt các gói dành riêng cho người dùng với PIP PIP yum install python37. Lệnh yum install python38 sẽ làm cho yum install python39 linter có sẵn cho cá nhân bạn, để lại các công cụ hệ thống như python30 không bị ảnh hưởng.

Nếu bạn thực sự cần một cái gì đó được cài đặt trên toàn hệ thống, hãy xây dựng gói RPM và sử dụng python31.

Lưu ý bắt buộc: Các gói của bên thứ ba được cài đặt với yum install python37 không được xem xét hoặc hỗ trợ bởi Red Hat.

Nền tảng-Python: Python đằng sau bức màn

Người đọc cẩn thận có thể đã nhận thấy sự khác biệt ở đây: Python không được cài đặt theo mặc định, nhưng python30 là và python30 được viết bằng Python. Điều gì kỳ diệu làm cho điều đó có thể?

Hóa ra có một thông dịch viên Python nội bộ có tên là nền tảng của Pyplature Python. Đây là những gì công cụ hệ thống sử dụng. Nó chỉ bao gồm các phần của Python cần thiết cho hệ thống hoạt động và không có gì đảm bảo rằng bất kỳ tính năng cụ thể nào sẽ không bị xóa khỏi nó trong tương lai.

Tuy nhiên, các thư viện cho nền tảng python được chia sẻ với người dùng có thể nhìn thấy được của người dùng. Điều này bảo tồn không gian đĩa, và nó cũng có nghĩa là, ví dụ, các phần mở rộng python30 được xây dựng cho Python 3.6 sẽ hoạt động cho công cụ hệ thống.

Nếu bạn không xây dựng lại bản phân phối, không sử dụng trực tiếp python nền tảng. Cài đặt python3 và sử dụng điều đó.

Chuyển sang Python 3

Nó đã giành chiến thắng ở Rhel 8, nhưng sẽ đến một ngày khi sự hỗ trợ cho Python 2 sẽ kết thúc. Nếu bạn duy trì mã Python 2, bạn nên nghĩ về việc chuyển nó sang Python 3.

Python 3 được phát hành lần đầu tiên vào năm 2008. Trong hơn một thập kỷ, nó đã được cải thiện về các tính năng, hiệu suất và - trớ trêu thay - khả năng tương thích với Python 2. Bạn có thể đã nghe những câu chuyện kinh dị và truyền thuyết đô thị về việc chuyển mã sang Python 3.0 hoặc 3.2 sẽ là Ngày nay, ít đáng sợ hơn nhiều.

Tôi không nói rằng việc chuyển giao bây giờ là tầm thường, nhưng nó chắc chắn đã trở nên dễ dàng hơn. Như với bất kỳ thay đổi nào khác đối với một hệ thống, chuyển sang Python 3 chủ yếu yêu cầu kiến ​​thức về cơ sở mã của bạn, các bài kiểm tra tốt - và một số thời gian.

Những gì phần thưởng? Python 3 là một ngôn ngữ tốt hơn - sau tất cả, đó là ngôn ngữ Python 2 nhà phát triển chọn sử dụng! Đối với các ứng dụng doanh nghiệp, tính năng chính là giảm nguy cơ mắc các lỗi khó tính, phụ thuộc vào đầu vào khi xử lý văn bản không phải ASCII như tên của người dân (hoặc biểu tượng cảm xúc).

Có nhiều tài nguyên cộng đồng tài liệu và giúp chuyển sang Python 3.

Nếu bạn đang đọc blog này, có lẽ bạn đang làm việc trên một cơ sở mã lớn, bảo thủ. Chúng tôi đã chuyển một vài trong số đó, và chưng cất kinh nghiệm của chúng tôi trong Hướng dẫn chuyển bảo thủ, một hướng dẫn thực hành tập trung vào khả năng tương thích và tiếp tục mã hoạt động trong suốt quá trình chuyển. Hãy thử, và nếu bạn thấy rằng một cái gì đó không được bảo hiểm, hãy cho chúng tôi biết - hoặc thậm chí gửi một yêu cầu kéo đến nó!

Nếu bạn duy trì các phần mở rộng Python C, hướng dẫn tập trung tương tự là một phần của dự án PY3C.

Takeaways

Để cài đặt hoặc chạy Python trên RHEL 8, hãy sử dụng python3 - trừ khi bạn có một phiên bản khác trong tâm trí.

Không sử dụng & nbsp; ________ 34.

Không sử dụng nền tảng-python cho các ứng dụng của bạn. Tuy nhiên, sử dụng nền tảng-python nếu bạn đang viết mã hệ thống/quản trị viên cho RHEL 8.

Và nếu bạn có một số mã cho Python 2, bây giờ là thời điểm tuyệt vời để bắt đầu hiện đại hóa nó.

Thưởng thức Python trong Rhel 8!

Cập nhật lần cuối: 30 tháng 8 năm 2022

Red Hat Linux có đi kèm với Python không?

Thiết lập môi trường phát triển của bạn.Python 2.7 và một số mô -đun Python phổ biến được cài đặt theo mặc định trên Red Hat Enterprise Linux.Python 2.7 and a number of popular Python modules are installed by default on Red Hat Enterprise Linux.

Python có trên Linux theo mặc định không?

1. Trên Linux.Python được cài đặt sẵn trên hầu hết các bản phân phối Linux và có sẵn dưới dạng gói trên tất cả các bản khác.Python comes preinstalled on most Linux distributions, and is available as a package on all others.

Python có đi kèm với Rhel 7 không?

Với Rhel 7, chúng ta có Python 2.7 theo mặc định nhưng bây giờ với dự án Python 2 đã trở nên lỗi thời, chúng ta phải di chuyển các thiết lập từng cái một sang Python 3. but now with Python 2 project gone obsolete , we have to move the setups one by one to Python 3.

Python được cài đặt ở đâu trên redhat?

Phiên bản Python được cài đặt trong/usr/bin/python và/usr/bin/python2 là một phần của hệ điều hành.RHEL đã được thử nghiệm với một bản phát hành Python cụ thể (2.7. 5) sẽ được duy trì cho tuổi thọ hỗ trợ mười năm đầy đủ của HĐH.Nhiều công cụ quản trị tích hợp thực sự được viết bằng Python./usr/bin/python and /usr/bin/python2 is part of the operating system. RHEL was tested with a specific Python release (2.7. 5) that will be maintained for the full ten-year supported life of the OS. Many of the built-in administration tools are actually written in Python.