Pylance doesn't show suggestions for not-yet-imported definitions - python

According to the Pylance extension page, I should be able to write "g" in my python code, and then Pylance should suggest that I import the gc module (see screenshot below, or the gif from the docs itself). But I can't get this to work on my system.
This is what I expect to happen (screenshot from Pylance extension page):
This is what happens on my system:
Can someone please help me understand why Pylance isn't working as advertised on my system?

I wager you need to put the following in your user settings.json or workspace .vscode/settings.json:
`"python.analysis.autoImportCompletions": true`
(The default value of the setting if not specified is false)
You may also be interested in the related python.analysis.importFormat ("defines the default format for import module") and python.analysis.autoImportUserSymbols ("Offer user symbols in auto-import completions") settings.

Related

pycharm intelisense issue with builtin method

I use Pycharm 2020, already try to restart and invalidate cache, adding virtual environment and Pycharm still not able to show builtin method from Python interpreter
here is my sample code, when i type contents = response. Pycharm not showing read() method, however if I type manually there is no error and I can run my code.
How i can fix this? I have try many thing when searching in SO, including restart, create new project, adding venv, restart Pycharm etc.
Try using the below link.
Pycharm Troubleshhoting might help
PyCharm makes completion suggestions based on the type inferred for some particular variable or attribute.
Type of response could be checked by View - Type Info, inferred type is Any and that means that actual type is unknown.
It could be easily fixed using type hints:
from http.client import HTTPResponse
res = urlopen("http://google.com") # type: HTTPResponse
or
res: HTTPResponse = urlopen("http://google.com")

Why is Pycharm not highlighting TODO's?

In my settings, I have the TODO bound to highlight in yellow, yet in the actual code it does not highlight. Here is a screenshot of my settings: Editor -> TODO
Does anyone know how to fix this?
EDIT: I even tried re-installing Pycharm and I still have the issue.
EDIT 2: In the TODO Window, it is saying "0 TODO items found in 0 files". I believe this means it is looking in the wrong files to check for TODO items. However, when I try to find TODO items in "this file" it still doesn't work. Does anyone know why this is?
Go to Preferences (or Settings), Project Structure, and make sure the folder with your files is not in the "Excluded" tab's list.
Click the folder you want to include and click on the "Sources" tab. Click Apply, then OK!
It should work.
I recently updated PyCharm Professional and my TODOs no longer worked. I went into settings and changed the alert icon, then saved, and retyped them and they worked. I imagine for my case, there was a delay in the new version picking them up. Might just need to retype them to get them working again, though the reboot should have addressed this.
Not sure if your pattern is causing this, but mine is set up like so, with two separate patterns:
\btodo\b.*
\bfixme\b.*
Neither is case sensitive, BTW...
Perhaps try some other patterns to see if you can get those to work.
I think the problem for me was the same as explained by #theBrownCoder but I couldn't find the project structure settings.
Apart from not showing TODO's another symptom was impossibility to go to function definitions defined in other files and inability to rename python files with the error: "Selected element is used from non-project files. These usages won't be renamed."
Googling for this the solution that worked for me was to delete the .idea folder (make sure to back it up just in case, you will lose the configurations).
I had the exact same problem, and the solution suggested by theBrownCoder worked perfectly.
For those who cannot find which menu theBrownCoder is referring to, go to File > Settings > Project: "Title of Project" > Project Structure.
It is in the dropdown of Project in Settings where you can also select your Python interpreter.
It might be the file type.
Right click, Override File Type.
I had this issue with a text file and it's copy, only the first one would use #TODO

Python Visual Studio Code autoDocstring Configuration

Goal: generate docstring in vscode for Python automatically and format the generated docstring to my liking.
Solution: I installed the autoDocstring extension.
Problem: I don't know how to get the generated docstring to be formatted the way I want it. In the description under the "Extension Settings" heading, it seems to suggest that you can change the default format with the "autoDocstring.docstringFormat" setting. My question is, how does one configure that setting? I've looked around and cannot find a solution.
You have to go to:
File > Preferences > Settings in Windows/Linux
Code > Preferences > Settings in Mac
Then choose at the right side of the open document if you want to change the configuration for all the user sessions or only this workspace.
The workspace case would be:
{
"autoDocstring.docstringFormat": "sphinx"
}
When moving the mouse around the option, a little pencil appears that shows all the accepted values for the option.
This answer is almost the same as PyCharm generates on vscode with this shortcut
ctrl+sfhit+2
{
"autoDocstring.docstringFormat": "sphinx"
}

Pycharm change Identifier Name where ever it has been used automatically if i change it where it has been defined

I am using Pycharm professional edition for my Python and Django project.
Is there anything in pycharm so that whenever i change the Varibale name/Function name/class name where it has been defined in the middle of my project. It will automatically changes the name wherever it has been referenced in a project with multiple files.
So that i dont have to check manually where it is used and change it accordingly.
Any suggestion please suggest.
Right click -> refactor -> rename
Then you get a dialog that will preview the changes for you.
Very slick.

Navigate to a specific module in PyCharm

I use PyCharm as my IDE for working with Django. So far, it's navigation shortcuts have proven very useful. I can go to a specific (project) file with Ctrl+Shift+N, I can go to any class definition with Ctrl+N and can go to any symbol with Ctrl+Shift+Alt+N.
This is great, but lately I've seen that it would be very useful too to have a shortcut to move to a specific external (or project) module.
Is there any shortcut where I can pass for example: django.contrib and show the modules for inside django.contrib package or base64 and show me the modules match for base64, just as easy as I can go to a specific, symbol, class, file?
I feel your problem. All you have to do is Ctrl + CLICK on the definition. Please note, however that this does not provide the actual files. What I mean by this is that it does not re-direct you to the actual function, but rather a skeleton of the function.
If you want to go to the actual function, you will need to go it it my clicking on external libraries on your sidebar and do a search.

Categories

Resources