Arcmap 10.8 sử dụng phiên bản Python nào?

Mặc dù Python được cài đặt tự động với mỗi phiên bản trên ArcGIS Desktop 10, nhưng việc thiết lập môi trường python hoạt động để sử dụng gói trang web ArcPy có thể hơi cồng kềnh. Bài đăng trên blog này cung cấp một số trợ giúp về việc thiết lập môi trường phù hợp và kiểm tra kỹ xem mọi thứ có hoạt động bình thường không

ArcPy là gì và nó chứa những gì?

Được giới thiệu lần đầu trong ArcGIS 10, gói trang web ArcPy cho phép tích hợp chặt chẽ hơn giữa ArcGIS và Python. ArcPy cung cấp quyền truy cập vào các công cụ xử lý địa lý cũng như các chức năng, lớp và mô-đun bổ sung cho phép tạo các quy trình công việc đơn giản hoặc phức tạp một cách nhanh chóng và dễ dàng

ArcPy được tổ chức trong các công cụ, môi trường, hàm, lớp và mô-đun. Viết mã tốt yêu cầu kiến ​​thức về các thực thể này và cú pháp Python (có thể nói là các quy tắc ngữ pháp của nó). Tất cả các khái niệm này đều bắt nguồn từ các ngôn ngữ lập trình khác, vì vậy việc học các ngôn ngữ lập trình khác cũng sẽ tự động nâng cao hiểu biết của bạn về Python. Mặc dù bạn không biết tất cả các chi tiết trước khi bắt đầu, nhưng chúng sẽ giúp bạn viết mã tốt hơn khi bạn bắt đầu

Tôi có thể tìm ArcPy ở đâu trên máy tính của mình để kiểm tra xem nó có ở đó và hoạt động bình thường không?

Python được cài đặt tự động khi cài đặt ArcGIS Desktop kể từ phiên bản 10. Nếu bạn tò mò muốn biết phiên bản nào đi kèm với mỗi phiên bản ArcGIS, hãy xem liên kết bên dưới (1). Mặc dù các gói trang web được liệt kê trong một thư mục riêng (ví dụ trong C. \python27\arcgis10. 2\lib\site-packages), bạn sẽ không tìm thấy bất kỳ đề cập nào về ArcPy tại đây. Thay vào đó, trong thư mục này, bạn sẽ tìm thấy một tệp có tên. tiện ích mở rộng pth cho bạn biết nơi tìm gói trang web ArcPy, cụ thể là thư mục tệp chương trình. Bạn có thể kiểm tra xem ArcPy có hoạt động bình thường hay không bằng cách di chuyển đến thư mục nơi Python đã được cài đặt với ArcGIS (chẳng hạn như c. \python27\arcgis10. 2), mở con trăn. exe và nhập "nhập arcpy". Nếu không có thông báo lỗi, bạn đã sẵn sàng

Nếu bạn đang sử dụng và IDE chẳng hạn như PythonWin và không thể truy cập ArcPy ở đó, điều này có nghĩa là trình soạn thảo của bạn không thể truy cập đúng python. exe, nghĩa là tệp đi kèm với bản cài đặt ArcGIS. Giải pháp là chỉnh sửa thủ công Biến môi trường của bạn trong cài đặt hệ thống nâng cao và thêm đường dẫn đến cài đặt Python của bạn (ví dụ:. C. \Python27\ArcGIS10. 2). Trong PythonWin, bạn có thể chỉnh sửa thủ công đường dẫn đến phiên bản Python chính xác trong menu thả xuống 'Công cụ' nếu cần. Không khuyến khích cài đặt nhiều phiên bản Python trên máy tính của bạn để tránh các vấn đề nêu trên. Nói thì dễ hơn là làm. hãy tưởng tượng một chiếc máy được cài đặt cả ArcGIS Desktop và ArcGIS Pro. Cả hai đều sử dụng các phiên bản Python khác nhau (Python 2 và 3)

Sử dụng các ứng dụng ArcPy và Esri

ArcGIS và ArcPy được cài đặt cùng nhau trên cùng một máy vì ArcPy phụ thuộc vào phần mềm ArcGIS để chạy. Điều này có nghĩa là bạn không thể sử dụng ArcPy nếu bạn chưa cài đặt bất kỳ ứng dụng Esri nào. Ngoài ArcGIS Desktop, ArcPy được cài đặt với ArcGIS Server, ArcGIS Pro và ArcEngine, một tập hợp các thành phần GIS và tài nguyên dành cho nhà phát triển, là một phần của đăng ký hàng năm của Esri Developer Network (EDN). Nó cũng chạy trên Linux

Khi Python tiếp tục thống trị với tư cách là ngôn ngữ kịch bản chính thức cho phần mềm GIS, chúng tôi nhận thấy rằng một môi trường Python là không đủ. Ngay cả khi chúng tôi cố gắng giữ một hệ thống sạch sẽ, các ứng dụng ArcGIS vẫn cần cài đặt (các) phiên bản Python của chúng. ArcGIS Desktop chỉ có hai hương vị và một hương vị thứ ba nếu chúng tôi bao gồm ArcGIS Pro (có thể có nhiều hương vị riêng). Làm cách nào để người dùng Máy tính để bàn mở một. py trong phiên bản Python mong muốn?

Để mở đầu, bài viết này dành cho “người dùng thành thạo Máy tính để bàn GIS” với nhiều phiên bản ArcGIS Python muốn tạo/chạy tập lệnh trên máy cục bộ của họ. Nếu cài đặt Python độc lập, bài viết này không dành cho bạn. Các trình quản lý gói tuyệt vời như Conda (Anaconda/Miniconda) tồn tại cho những mục đích này. Conda làm cho việc quản lý nhiều môi trường trở nên dễ dàng - và đa nền tảng nữa. Nếu bạn là một nhà phát triển ArcGIS chuyên dụng hơn và sử dụng API ArcGIS cho Python, bạn vẫn có thể muốn xem xét Conda. Nếu bạn chỉ cần ArcGIS Desktop và/hoặc ArcGIS Pro và muốn mở/chỉnh sửa một phiên bản cụ thể của Python để chạy một số mã, hãy tiếp tục đọc

ArcGIS và Python

Phần mềm ArcGIS for Desktop (ArcMap và ArcCatalog) được gắn với Python v2. x. Lần cài đặt đầu tiên của Desktop sẽ cài đặt phiên bản 32-bit vì ArcGIS Desktop là… 32-bit. Desktop Background Geoprocessing cài đặt phiên bản 64-bit của Python. Cả 32/64-bit sẽ chạy 99% v2. x mà không gặp sự cố. Có một vài công cụ Esri bị lỗi nếu chạy sai phiên bản, đó là lý do tại sao tôi bắt đầu con đường này ngay từ đầu

Mặt khác, ArcGIS Pro dựa trên Python 3. x 64-bit. Nếu chỉ dùng bản Pro thì không vấn đề gì. Trong trường hợp này, bạn thậm chí có thể quản lý trực tiếp các môi trường Python bổ sung trong ArcGIS Pro. Yup, ArcGIS Pro được tích hợp Trình quản lý gói Python (ờ, bạn đoán vậy - Conda được tích hợp vào Pro). lưu ý bên lề. GDAL cũng được cài đặt với Pro - một chủ đề cho một thời điểm khác

Chọn đúng IDLE/IDE

Tại thời điểm này, chúng tôi đã cài đặt ba môi trường Python. Đặt mặc định có thể được thực hiện dưới dạng biến môi trường nhưng việc chuyển đổi giữa chúng không đơn giản. Nếu muốn chọn một môi trường cụ thể, chúng tôi có thể tận dụng một bản cập nhật sổ đăng ký nhỏ. Đối với ví dụ này, chúng tôi sẽ sử dụng ứng dụng IDLE đã cài đặt nhưng cách tiếp cận tương tự có thể được sử dụng cho trình chỉnh sửa/IDE mà bạn chọn

Đăng ký từ chối trách nhiệm

Đừng làm hỏng sổ đăng ký. Mày đã được cảnh báo. Nếu bạn không hiểu những gì bạn đang làm, đây không phải là hộp cát để tìm hiểu. Trước tiên hãy dùng thử trên máy ảo hoặc máy tính của bạn bè cũ

CÁC LỚP ĐĂNG KÝ

Để thêm tùy chọn cho menu chuột phải, chúng ta chỉ cần cập nhật thông tin sổ đăng ký LỚP và phần mở rộng tên tệp. Thông tin này được lưu trữ ở ba nơi

  • HKEY_LOCAL_MACHINE (HKLM)
  • HKEY_CURRENT_USER (HKCU)
  • HKEY_CLASSES_ROOT

Chúng ta không bao giờ nên chạm trực tiếp vào HKEY_CLASSES_ROOT vì nó cung cấp chế độ xem sổ đăng ký hợp nhất thông tin từ hai nguồn khác này. HKEY_CLASSES_ROOT cũng cung cấp chế độ xem hợp nhất này cho các ứng dụng được thiết kế cho các phiên bản cũ của Windows

Nơi chúng tôi cập nhật tùy thuộc vào người mà chúng tôi muốn điều này hoạt động. HKLM nếu chúng tôi muốn những thay đổi này hiển thị cho tất cả người dùng - hoặc HKCU chỉ cho người dùng hiện tại. Nếu bạn vô tình ghi giá trị vào một khóa trong HKEY_CLASSES_ROOT và khóa đó đã tồn tại trong HKCU\Software\Classes, hệ thống sẽ lưu trữ thông tin ở đó thay vì trong HKLM\Software\Classes

thay đổi sổ đăng ký

Đầu tiên, chúng ta nên xác nhận sự tồn tại của phần HKLM\SOFTWARE\Classes\Python.File\shell. Nó được tạo khi bạn cài đặt Python hoặc ArcGIS lần đầu tiên nhưng đáng để kiểm tra nhanh. Từ đó, chúng tôi sẽ thêm tất cả các tùy chọn chưa tồn tại và/hoặc có thể điều chỉnh cách đặt tên của các tùy chọn hiện có. Tên của các phím bên trong sẽ là tên được hiển thị trong menu ngữ cảnh (r-click). Đối với mỗi khóa, chúng tôi thêm một khóa con lệnh để cung cấp tham chiếu môi trường IDLE

Kết quả cuối cùng sẽ trông giống như thế này

Arcmap 10.8 sử dụng phiên bản Python nào?

Dưới đây là tất cả ba cài đặt môi trường ArcGIS IDLE cho Sổ đăng ký giả sử các thư mục cài đặt mặc định đã được sử dụng

Python v3 64-bit được cài đặt với ArcGIS Pro

[HKLM\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (ArcGIS Pro)]
[HKLM\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (ArcGIS Pro)\command] : @="\"C:\\Program Files\\ArcGIS\\Pro\\bin\\Python\\envs\\arcgispro-py3\\pythonw.exe\" \"C:\\Program Files\\ArcGIS\\Pro\\bin\\Python\\envs\\arcgispro-py3\\Lib\\idlelib\\idle.pyw\" -e \"%1\""

Python v2 32-bit được cài đặt với ArcGIS Desktop

[HKLM\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (v2 x32)]
[HKLM\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (v2 x32)\command] : @="\"C:\\Python27\\ArcGIS10.7\\pythonw.exe\" \"C:\\Python27\\ArcGIS10.7\\Lib\\idlelib\\idle.pyw\" -e \"%1\""

Python v2 64-bit được cài đặt với ArcGIS Desktop Background GP

[HKLM\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (v2 x64)]
[HKLM\SOFTWARE\Classes\Python.File\shell\Edit with IDLE (v2 x64)\command] : @="\"C:\\Python27\\ArcGISx6410.7\\pythonw.exe\" \"C:\\Python27\\ArcGISx6410.7\\Lib\\idlelib\\idle.pyw\" -e \"%1\""

Tại thời điểm này, chúng tôi có thể thêm nhiều tùy chọn hơn cho IDE/trình chỉnh sửa bổ sung (VSCode, PyCharm, Atom, NPP) hoặc bắt đầu viết kịch bản. Đừng quên sao lưu sổ đăng ký của bạn trước khi bạn bắt đầu đề phòng

Liên kết hữu ích

  • https. // chuyên nghiệp. vòng cung. com/en/pro-app/arcpy/get-started/what-is-conda. htm
  • https. //trung bình. com/analytics-vidhya/creating-cascading-context-menus-with-the-windows-10-registry-f1cf3cd8398f

ảnh bìa. Mã nguồn mở CC-BY-SA. com (https. //mã nguồn mở. com/article/19/5/python-3-default-mac) ngày 14 tháng 10 năm 2020

ArcMap sử dụng phiên bản Python nào?

Trăn 3. 5 trở lên bắt buộc phải sử dụng API ArcGIS cho Python.

ArcGIS có sử dụng Python 2 hoặc 3 không?

ArcGIS Pro sử dụng Python 3 . Đây là một thay đổi đáng kể so với các sản phẩm ArcGIS khác, bao gồm ArcGIS Desktop, ArcGIS Server và ArcGIS Engine, đã sử dụng (và sẽ tiếp tục sử dụng) các bản phát hành trong dòng Python 2. Bản phát hành Python 3 là một dòng khác không tương thích với dòng Python 2.

ArcPy có sử dụng Python 3 không?

Gói ArcPy là một phần của bản phân phối Python mặc định arcgispro-py3 được cung cấp cùng với ArcGIS Pro và ArcGIS Server. Không nên tùy chỉnh môi trường Python arcgispro-py3 thông qua việc bổ sung các gói Python hoặc các sửa đổi khác.

ArcGIS có cần Python không?

Các công cụ xử lý địa lý của ArcGIS Desktop yêu cầu Python 2. 7. 18 và Python số 1. 9 .

ArcGIS có được xây dựng bằng Python không?

Python là ngôn ngữ kịch bản được lựa chọn cho ArcGIS Pro . Nó có mô-đun riêng, ArcPy (nơi bạn sẽ tìm thấy bản dịch Python của tất cả các chức năng GIS yêu thích của mình). Bạn cũng có thể chạy mã trực tiếp trong dự án của mình bằng cửa sổ Python tích hợp sẵn của Pro và xem ngay kết quả trên bản đồ.