![업데이트 및 업그레이드 후 구문 오류 python3이 발생합니다.](https://linux55.com/image/206376/%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8%20%EB%B0%8F%20%EC%97%85%EA%B7%B8%EB%A0%88%EC%9D%B4%EB%93%9C%20%ED%9B%84%20%EA%B5%AC%EB%AC%B8%20%EC%98%A4%EB%A5%98%20python3%EC%9D%B4%20%EB%B0%9C%EC%83%9D%ED%95%A9%EB%8B%88%EB%8B%A4..png)
명령을 실행하면
sudo apt update && sudo apt upgrade
모든 것이 평소처럼 에스컬레이션되지만 결국에는 오류가 발생합니다.
/usr/lib/python3/dist-packages/pyVNC/Client.py:61: SyntaxWarning: "is" with a literal. Did you mean "=="?
if event is "Left":
/usr/lib/python3/dist-packages/pyVNC/Client.py:63: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif event is "Middle":
/usr/lib/python3/dist-packages/pyVNC/Client.py:65: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif event is "Right":
/usr/lib/python3/dist-packages/pyVNC/Client.py:61: SyntaxWarning: "is" with a literal. Did you mean "=="?
if event is "Left":
/usr/lib/python3/dist-packages/pyVNC/Client.py:63: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif event is "Middle":
/usr/lib/python3/dist-packages/pyVNC/Client.py:65: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif event is "Right"
코드를 보려고 했지만 아무것도 생각나지 않았습니다. 문제를 해결하는 방법에 대한 아이디어가 있습니까?
답변1
우선, 그렇습니다. 이것은 오류가 아니라 경고입니다. 아마도 이 라이브러리를 사용하고 있기 때문일 것입니다.https://github.com/cair/pyVNC
그리고 이 부분(/usr/lib/python3/dist-packages/pyVNC/Client.py:61) 경고:
if event is "Left":
button_id = 1
elif event is "Middle":
button_id = 2
elif event is "Right":
button_id = 4
메시지에 명시된 대로 'is' 대신 '=="를 사용해야 합니다. 자세한 내용은 이 문서를 참조하세요.https://adamj.eu/tech/2020/01/21/why-does-python-3-8-syntaxwarning-for-is-literal/
또 다른 문제는 OS를 업데이트할 때 이 문제가 발생하는 이유입니다. 아마도 Python 스크립트에 virtualenv를 사용하지 않기 때문일 수 있습니다. 그래서 나는 이렇게 하라고 제안합니다:https://docs.python.org/3/library/venv.html