Python3과 Python2 스크립트 간의 변환을 1초 안에 완료할 수 있는 실용적인 방법이 있습니까?

PHPz
풀어 주다: 2023-04-15 09:31:02
앞으로
2063명이 탐색했습니다.

Python3과 Python2 스크립트 간의 변환을 1초 안에 완료할 수 있는 실용적인 방법이 있습니까?

Python2와 Python3 사이에는 구문과 모듈 사용에 약간의 차이가 있습니다(여기에서는 자세히 설명하지 않습니다). 초보자는 코드 작성에 Python3을 직접 사용하는 것이 좋습니다. 실제 작업에서는 여전히 python2를 사용하여 지속적으로 실행되는 운영 및 유지 관리 또는 테스트 스크립트가 많이 있는데, python3을 python2로 변환(또는 python2를 python3으로 변환)해야 하는 일괄 작업이 발생하면 어떻게 처리해야 할까요? 한 줄씩 코드를 수동으로 수정하는 것은 어떻습니까? 이 기사에서는 구체적인 구현 계획을 소개합니다.

python 2를 python 3으로

Python3.7(변환 도구 C와 함께 제공: Python37Toolsscripts2to3) cmd 명령줄에서 직접 사용할 수 있습니다:

python 2to3.py -w D:/test.py #python2 test 변환 중 .py를 python3

test.py 파일로 변환하는 것은 매우 간단합니다.

print "hello.py"
로그인 후 복사
C:Python37Toolsscripts>python 2to3.py -w D:/test.py

RefactoringTool: Skipping optional fixer: buffer

RefactoringTool: Skipping optional fixer: idioms

RefactoringTool: Skipping optional fixer: set_literal

RefactoringTool: Skipping optional fixer: ws_comma

RefactoringTool: Refactored D:/test.py

--- D:/test.py (original)

+++ D:/test.py (refactored)

@@ -1 +1 @@

-print "hello.py"

+print("hello.py")

RefactoringTool: Files that were modified:

RefactoringTool: D:/test.py
로그인 후 복사

문을 인쇄하면 됩니다. 실행 후 test.py를 확인하면 변환된 코드는 다음과 같습니다.

print("hello.py")
로그인 후 복사

매개변수 -w는 이전 파일을 다음으로 덮어씁니다. 추가하지 않고 새 파일 - w는 콘솔 창에 수정된 위치만 표시합니다(파일의 내용은 수정되지 않음). 파일은 기본적으로 .bak에 백업됩니다(예: test.py.bak). ) bak 파일을 생성할 필요가 없으면 매개변수를 추가하세요. n이면 충분합니다.

드라이브 D의 테스트 폴더에 있는 모든 파일 등 특정 폴더에 있는 모든 파일을 변환해야 하는 경우 명령줄에 다음을 입력하세요.

python 2to3.py -w D:/test/
로그인 후 복사

python 3 to python 2

먼저 Python 패키지 lib3to2를 설치합니다. pip install 3to2

설치가 성공적으로 완료되면 C:Python37Scripts 디렉터리에 3to2

라는 파일이 생성됩니다(예: 드라이브 D의 루트 디렉터리에 있는 test.py). :

명령줄에서 python 3to2 -w D:/test.py #Convert test.py of python3 to python2

test 폴더의 모든 파일 등 특정 폴더의 모든 파일을 변환해야 하는 경우 D 드라이브에서 명령줄에

python 3to2 -w D:/test/
로그인 후 복사

를 입력하세요. python 3를 python 2로 변환하는 방법은 python 2를 python 3으로 변환하는 방법과 매우 유사하다는 것을 알 수 있습니다!

위 내용은 Python3과 Python2 스크립트 간의 변환을 1초 안에 완료할 수 있는 실용적인 방법이 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:51cto.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿