Estou usando o PyCharm para trabalhar em um projeto. O projeto é aberto e configurado com um intérprete e pode ser executado com sucesso. Os caminhos do interpretador remoto são mapeados corretamente. Essa parece ser a configuração correta, mas o PyCharm está destacando meu código válido com erros de "referência não resolvida", mesmo para funções internas do Python. Por que eles não parecem ser detectados, mesmo que o código seja executado? Existe alguma maneira de fazer com que o PyCharm os reconheça corretamente?
Essa instância específica do problema é com um intérprete remoto, mas o problema também aparece nos intérpretes locais.
Respostas:
Arquivo | Invalidar caches ... e reiniciar o PyCharm ajuda.
fonte
A resposta de Dmitry não funcionou para mim.
Comecei o meu indo a Project Interpreters, selecionando a aba "Paths" e pressionando o botão de atualização no submenu. Ele foi preenchido automaticamente com algo chamado "python-skeletons".
edit : captura de tela usando o PyCharm 3.4.1 (está muito bem oculto)
fonte
Settings > Project Settings > Project Interpreter > Project Interpreters (gear button > more) > --Select the interpreter-- > Interpreter Paths (Directory Tree button on the right) > Reload List of Paths (Blue refresh-like button)
Existem muitas soluções para isso, algumas mais convenientes que outras, e elas nem sempre funcionam.
Aqui está tudo o que você pode tentar, passando de 'rápido' para 'irritante':
File
->Invalidate Caches / Restart
e reinicie o PyCharm.Run
->Edit Configurations
->Configuration
->Python Interpreter
.File
->Settings
Project: [name]
->Project Interpreter
-> 'Project Interpreter': ícone de engrenagem ->More...
File
->Settings
Project: [name]
->Project Interpreter
-> 'Project Interpreter': ícone de engrenagem ->More...
.idea
pasta do seu projeto~/.PyCharm50
no Mac%homepath%/.PyCharm50
no Windowsfonte
No meu caso, foi a estrutura de diretórios. Meu projeto é assim:
Então, clique com o botão direito do mouse em dir_b> "marque o diretório como"> "raiz do projeto"
fonte
Encontro-me removendo e adicionando novamente o intérprete remoto para corrigir esse problema quando Invalidating Caches or Refreshing Paths não funciona.
Eu uso o vagrant e de vez em quando, se eu adicionar uma nova VM à minha instalação multi-vm, a porta encaminhada muda e isso parece confundir o PyCharm quando ele tenta usar a porta errada para o SSH. Alterar a porta não parece ajudar nas referências quebradas.
fonte
Se nenhuma das outras soluções funcionar para você, tente (fazer backup) e exclua a pasta ~ / .PyCharm40 e reabra o PyCharm. Isso matará todas as suas preferências também.
No Mac, você deseja excluir ~ / Library / Caches / Pycharm40 e ~ / Library / Preferences / PyCharm40.
E no Windows: C: \ Users \ $ USER.PyCharm40.
fonte
Testado com PyCharm 4.0.6 (OSX 10.10.3), seguindo estas etapas:
Problema resolvido!
fonte
muito fácil
você só precisa marcar seu diretório raiz como: SOURCE ROOT (vermelho) e seus aplicativos: EXCLUDED ROOT (azul),
a referência não resolvida desaparecerá.
fonte
Desculpe esbarrar nessa pergunta, mas tenho uma atualização importante a fazer.
Você também pode querer reverter o intérprete do projeto para o Python 2.7.6 se estiver usando outra versão além disso. Isso funcionou para mim na minha instalação do Ubuntu do PyCharm 4.04 professional depois que nenhuma das outras recomendações resolveu o meu problema.
fonte
Settings -> "Project Interpreters"
, cliquei na engrenagem e depois"More..."
. Escolha o interpretador python padrão (/usr/bin/python2.7
no meu caso), pressione"Ok"
e"Apply"
. Depois voltei e escolhi o virtualenv real que eu queria usar."Ok"
e"Apply"
novamente, e está consertado.FileNotFoundError
é uma coisa apenas em Python-3. Depois de definir o intérprete correto em File-Settings-Project-Interpreter e Run-Edit-Configurations, um deles fez o erro desaparecer.Você pode tentar fechar o Pycharm, excluir a
.idea
pasta do seu projeto, iniciar o Pycharm novamente e recriar o projeto. Isso funcionou para mim, enquanto a invalidação do cache não.fonte
Finalmente consegui isso depois que nenhuma das soluções propostas funcionou para mim. Eu estava brincando com um projeto de framework django rest e estava usando um virtualenv que eu tinha configurado com ele. Consegui consertar o Pycharm marcando a pasta raiz como raiz de origem, mas o servidor do django lançaria exceções de resolução. Então, um funcionaria quando o outro não e vice-versa.
Por fim, tive que marcar a subpasta como a origem do pycharm. Então minha estrutura era assim
Essa segunda pasta de playground é a que eu tive que marcar como a origem das raízes para que tudo funcione conforme o esperado. Isso não apresentou problemas para o meu cenário, por isso foi uma solução viável.
Só pensei em compartilhar caso outra pessoa possa usá-lo.
fonte
Também pode ser um problema de versão em python. Eu tive que escolher o caminho certo para fazê-lo funcionar.
fonte
Se você deseja ignorar apenas alguns erros de "referência não resolvida", também é possível explicá-lo explicitamente ao PyCharm colocando-o na frente de sua classe / método / função:
fonte
Fechei todos os outros projetos e executei meu projeto necessário isoladamente no Pycharm. Eu criei um virtualenv separado do pycharm e adicionei todos os módulos necessários usando pip. Eu adicionei esse ambiente virtual no intérprete do projeto. Isso resolveu meu problema.
fonte
Puxa, que pesadelo, minha amálgama de diferentes respostas do StackOVerflow:
fonte
Nenhuma das soluções acima funcionou para mim!
Se você estiver usando o ambiente virtual para o seu projeto, aplique o
python.exe
arquivo que está dentro do diretório do ambiente virtual como intérprete para o projeto,(Alt + Ctrl + Shift + S)
isso resolveu o problema para mim.fonte
No meu caso, o erro de inspeção aparece devido a um caso muito específico de código python. Uma função min que contém duas funções numpy e dois acessos à lista faz com que minha inspeção de código dê esse tipo de erro.
A remoção da linha 'd = 0' no exemplo a seguir gera um erro de referência não resolvido conforme o esperado, mas a leitura não faz com que o erro desapareça para o inspetor de código. Ainda posso executar o código sem problemas depois.
Limpar caches e recarregar a lista de caminhos não funciona. Apenas alterar o código com um dos seguintes patches de exemplo funciona:
fonte
Nenhuma das respostas resolveu meu problema.
O que isso fez comigo foi mudar de ambiente e voltar ao mesmo ambiente.
File->Settings->Project interpreter
Estou usando ambientes conda.
fonte
Trabalhou para mim com uma ação muito mais simples :
Lucro - Pycharm está atualizando esqueletos e está tudo bem.
fonte
Se você estiver usando
vagrant
o erro pode ser causado por um interpretador python errado. No nossovagrant
estamos usando,pyenv
então eu tive que mudar oPython Interpreter path
caminho de/usr/bin/python
para/home/vagrant/.pyenv/versions/vagrant/bin/python
fonte
Eu tenho um projeto em que um arquivo
src/
importa outro arquivo no mesmo diretório. Para que o PyCharm reconheça, tive que ir em Arquivo> Configurações> Projeto> Estrutura do projeto> selecione asrc
pasta e clique em "Marcar como: Fontes"Em https://www.jetbrains.com/help/pycharm/configuring-folders-within-a-content-root.html
fonte
Meu problema é que o Flask-WTF não é resolvido pelo PyCharm . Tentei reinstalar e instalar ou invalidar o cache e reiniciar o PyCharm, mas ele ainda não está funcionando.
Então, eu vim com essa solução e ela funciona perfeitamente para mim.
Agora, você verá que sua biblioteca foi resolvida.
fonte
Você está usando virtualenv?
Nesse caso, é necessário notificar o PyCharm para cada alteração no local do python.exe desejado (apenas ./activate não é suficiente para o PyCharm)
Verifique se o Pycharm aponta para o interpretador e os pacotes corretos: Arquivo -> Configurações -> Projeto -> Intérprete do projeto. Clique na engrenagem e escolha python.exe na pasta Scripts do virtualenv
fonte