2019년 8월 27일 화요일

python2의 print 문을 python3 print()으로 변경하기

VSCODE python2의 print \"\" 문을 python3 print(\"\")으로 변경하기

python 업계(?) 에서는 이제 낡은 python2를 버리고 python3를 쓰는 것을 추천하고, 추천하고, 권장하고 있다.

그럼에도 불구하고 편했던 그 시절에 python2를 이용하여 만든 라이브러리들이 아직도 github에 가면 무수히 많다.

당연 python3에서는 설치도 안 되겠지만, 간혹 설치하다보면 유니코드 문제나, print 때문에 설치가 안될 때도 있다.

python2에서는 괄호 없는 print문이 있었다.

print "hello world"

그런데 python3에서는 아예 없앴다.

print("hello world")

자 근데 이걸 어떻게 하면 쉽게 바꿀 수 있을까? 여러 다양한 방법이 있겠으나..

정규식을 이용하면 쉽게 바꿀 수 있을 꺼 같았다.

https://regex101.com/

이 사이트는 정규식을 테스트 할 수 있는 곳이다.

다양한 버젼으로 정규식을 테스트 할 수 있다.

난 vscode에서 사용하기 위한 정규식은 javascript용을 써야 한다.

결론 부터 말하자면

찾기

print\s((\"|\')(._)(\"|\')($|._))

바꾸기

print($1)

테스트한 스트링

print "hello world" 
print '' 
print 'INTERRUPT BY USER.' 
print 'origin images on ' + input_directory + ' will be converted to ' + output_directory 
print "clear all env on " + output_directory

바뀐 것들

print("hello world" )
print('' )
print('INTERRUPT BY USER.' )
print('origin images on ' + input_directory + ' will be converted to ' + output_directory )
print("clear all env on " + output_directory)

이렇게 바뀐다.

댓글 없음:

댓글 쓰기