Tôi vừa cài đặt phiên bản beta của Python 3.10
, mở mã vs, thay đổi trình thông dịch Python thành Python 3.10 64 bit [PC của tôi hoạt động với 64 bit] và quản lý để tiếp tục làm việc trong dự án Pygame của tôi.
Tuy nhiên, khi tôi chạy mã, tôi phải đối mặt với ModuleNotFoundError
nói rằng: Không có mô -đun tên Pygame. [mặc dù mô -đun pygame đã được cài đặt hoàn hảo]
Vì vậy, đó là vì phiên bản beta của Python? Nếu có, không có một số cách để làm việc với Pygame và Python3.10 cùng một lúc?
hỏi ngày 13 tháng 6 năm 2021 lúc 9:45Jun 13, 2021 at 9:45
Phát triển phát triểnDevelopeeer
1101 Huy hiệu vàng1 Huy hiệu bạc10 Huy hiệu đồng1 gold badge1 silver badge10 bronze badges
10
Tôi mỏng nó có thể là một vấn đề tương thích.
pip3.9 install pygame
hoạt động tốt.
pip3.10 install pygame
trả về một loạt các lỗi. Một số trong số chúng là lỗi PIP/Pygame phải làm với bánh xe và phụ thuộc. Vì vậy, tôi đã nhân bản kho lưu trữ nguồn pygame cục bộ và cố gắng xây dựng nó từ nguồn.
python3.9 setup.py build;
python3.9 setup.py install
hoạt động như mong đợi.
python3.10 setup.py build;
python3.10 setup.py install
đạt đến giới hạn nghiêm trọng của 20 lỗi và quyết định nó đã được thực hiện. Tôi đã thử nhiều cách giải quyết và giải pháp hoạt động cho các phiên bản cũ của cả pygame và python nhưng không may là không có gì hoạt động, vì vậy tôi nghĩ rằng nó thực sự chỉ là vấn đề tương thích và chúng tôi sẽ phải chờ pygame cập nhật để hoạt động Python 3.10.
Đã trả lời ngày 17 tháng 6 năm 2021 lúc 4:15Jun 17, 2021 at 4:15
Cho người dùng Mac
Trình cài đặt Python 3.10 là phổ quát, có nghĩa là nó chạy phiên bản ARM64 của Python 3.10 theo mặc định. Vì pygame chưa được cập nhật để chạy trên ARM64, bạn cần chạy Python 3.10 ở Rosetta, để thực hiện điều này từ lệnh sử dụng shell: Python3-Intel64
Nhập pygame sau đó sẽ hoạt động tốt với Python 3.10
Để sử dụng mã này trong mã VS, bạn sẽ cần thay đổi tệp setS.json thành:
"python.defaultinterpreterpath": "/usr/local/bin/python3-intel64"
Sau đó chọn phiên dịch từ trình soạn thảo.
Đã trả lời ngày 21 tháng 10 năm 2021 lúc 16:04Oct 21, 2021 at 16:04
EdsteredsterEdster
1132 Huy hiệu bạc8 Huy hiệu Đồng2 silver badges8 bronze badges
Nếu pip install pygame
với Python 3.10 tạo ra lỗi, bạn luôn có thể thử lại bằng cách cài đặt với tệp .whl từ trang web này: //www.lfd.uci.edu/~gohlke/pythonlibs/#pygame
Cài đặt có thể trông như thế này:
pip install {path-to-whl-file}/pygame-2.0.1-cp310-cp310-win_amd64.whl
Đã trả lời ngày 27 tháng 9 năm 2021 lúc 21:25Sep 27, 2021 at 21:25
Tôi đã phải đối mặt với vấn đề tương tự và VSCode thực sự giải thích những gì đang diễn ra và nhờ @edster tôi có thể giải quyết nó.
TL: DR: Đặt defaultInterpreterPath
thành một giá trị khác và đặt lại thành python
Set defaultInterpreterPath
to a different value and reset it to python
Mô tả cho tùy chọn Edster đã đề cập là:
Đường dẫn đến Python mặc định để sử dụng khi phần mở rộng tải lên lần đầu tiên, không còn được sử dụng khi trình thông dịch được chọn cho không gian làm việc. Xem //aka.ms/aafekmf để hiểu khi nào nó được sử dụng
Và khi bạn đi đến liên kết, thông tin quan trọng là:
Các thay đổi đối với python.defaultinterpreterpet sẽ không được chọn bởi tiện ích mở rộng Python một khi người dùng chọn rõ ràng một trình thông dịch khác cho không gian làm việc. Phần mở rộng cũng sẽ không đặt cũng như không thay đổi giá trị của cài đặt này, nó sẽ chỉ đọc từ nó.
Trong trường hợp của tôi, dự án đã được tải bằng cách sử dụng python symlink không được chuyển tiếp vào 3.9 và sau đó tôi đã tải xuống 3.10 và cập nhật đường dẫn của mình để có python
chỉ vào 3.10, nhưng khi tôi làm điều đó vì giá trị của defaultInterpreterPath
không thay đổi trên mã vs mã vs Nó không cố gắng nhặt nó một lần nữa.
Các giả định của tôi là defaultInterpreterPath
không lưu trữ bản symlink mà là nơi nó chỉ ra.
- Thay đổi nó thành một giá trị khác và đặt lại giá trị thành
python
Đã khắc phục sự cố cho tôi, nhưng tôi giả sử nếu bạn chỉ tắt/bật tiện ích mở rộng Python trên VSCode mà nó sẽ hoạt động.
Tuyên bố miễn trừ trách nhiệm: Đây chỉ là những giả định và tôi đã không thử chúng ở cuối, vui lòng bình luận ở đây kết quả nếu bạn thử hoặc nếu bạn có bất cứ điều gì để thêm.
Đã trả lời ngày 29 tháng 7 lúc 12:36Jul 29 at 12:36