Estou lendo a documentação do Python em https://docs.python.org/3/library/concurrent.futures.html e quero usar esse recurso, mas não posso.
Falha na primeira etapa: importar o módulo. Pois
import concurrent.futures
eu consigo
File "<stdin>", line 1, in <module>
File "/home/kevin/concurrent.py", line 3, in <module>
import concurrent.futures
ModuleNotFoundError: No module named 'concurrent.futures'; 'concurrent' is not a package
E também não consigo fazer com que o pip o encontre ou instale, seja como 'concurrent.futures' ou apenas como 'concurrent'.
Atualmente estou no Xubuntu 22.04 LTS, executando Python 3.
Seu arquivo é nomeado
concurrent.py
, o que significa que ele define implicitamente um módulo chamadoconcurrent
, sombreando oconcurrent
pacote interno.Nunca nomeie seu arquivo de forma idêntica ao nome de um pacote. Python segue uma certa ordem de bloqueio ao tentar importar módulos. As ordens iniciam por padrão no diretório atual de onde o programa foi iniciado. Se um arquivo Python com o mesmo nome for encontrado lá, ele será importado.
Então o que você está fazendo aqui é basicamente importar seu próprio script. O que funciona como o nome é
concurrent
, mas a exceção aparece porque não há objeto no seu arquivo chamadofutures
.