2017-10-24 15 views
1

Sublime Text 3이 설치되어 있고 SublimeLinter 플러그인과 pyflakes linter가 있습니다. pyflakes 버전은 1.6.0입니다. OS win 7 x86.Pyflakes "유효하지 않은 구문"이며 중괄호로 함수의 변수를 인쇄합니다.

print("My name is {}.".format(my_name)) 

코드가 잘들이받은,하지만 왜 pyflakes하는 날이 오류를 제공한다 :이 건설에 내가 오류가없는, 또한

SublimeLinter: pyflakes output: 
ex3.py:9:30: invalid syntax 
print(f"My name is {my_name}.") 
          ^

: 여기

my_name = 'Name' 
print(f"My name is {my_name}.") 

그리고

오류입니다 그때? 그것은 pyflakes 문제 또는 무엇입니까?

+1

pyflakes가 Python 3.6으로 설정되어 있지 않습니다. – user2357112

답변

0

이 여기 알려진 문제를 참조한다 :

https://gitlab.com/pycqa/flake8/issues/296

현재 버전에서 수정 될 것으로 보인다

...

편집 : 최신 버전에 있기 때문에, 어쩌면 당신이 여기처럼, 숭고한-린터의 문제로 실행 :

https://forum.sublimetext.com/t/sublimelinter-pyflakes-not-matching-pyflakes-from-cli/31348/3

이를 테스트하려면 coul d 명령 행에서 pylakes 명령을 실행하여 그것이 작동하는지 확인하십시오.

편집자 2 : 묻는 사람의 설명에 따르면 SublimeLinter-pyflakes 대신 SublimeLinter-flake8을 사용하면 python 3.6+의 f-strings와 호환됩니다.

(또한, 이중 게시 답변 죄송합니다. 그리고 하나를 삭제하는 덕분에, @Andy는. 나는 거기에 무슨 일이 있었는지 모른다.)

+0

그래, cmd에서 pyflakes는 잘 동작하지만, linter의 문제처럼 보입니다. 그래서 나는 pyflakes 대신 flake8을 시도 할 것입니다. 정말 고마워. – IDK

0

그래서, 가장 좋은 방법은 SublimeLinter-flake8을 사용하는 것입니다대신 SublimeLinter-pyflakes파이썬 3.6+으로 바꾸면 pyflakes linter가 3.6과 호환되지 않습니다. 또한 flake8은 pyflakes와 같은 기능을합니다.