Перейти к содержимому

Как заменить переменную в pycharm

  • автор:

Есть ли в Pycharm сочетание клавиш для переименования определенной переменной?

Я использую Pycharm для кодирования Python, и я хочу изменить имя определенной переменной по всему коду. есть ли сочетание клавиш для этой операции? В Matlab я могу использовать ctrl + shift. Например:

old_name=5 x=old_name*123 
new_name=5 x=new_name*123 

без необходимости изменять обе ссылки old_name . Спасибо!
roishik 28 сен. 2016, в 14:32
Поделиться
Поделиться:
keyboard-shortcuts

2 ответа

Лучший ответ
Выделите old_name и нажмите Shift + F6
Moses Koledoye 28 сен. 2016, в 12:42
Поделиться

Я не знаю о ярлыке для этой специальной цели, но я просто использую Ctrl + R для замены старых имен переменных новыми. Вы также можете установить такие параметры, как Match case, Regex или In. Обратите внимание, что это не сработает, если у вас есть имя переменной, включая другое имя переменной:

var1 = 0 var1_s = "0" 

Замена var1 на xy приведет к:

xy = 0 xy_s = "0" 

Но это также заставляет вас делать последовательные и понятные имена переменных.
linusg 28 сен. 2016, в 11:49
Поделиться

Использование Ctrl + R может изменить некоторые нежелательные предложения. Как пример: если бы я заменил «var» на «xy», комментарий с предложением: «переменная, которая считает животных», стала бы: « xyiable, которая считает животных». и т.п.

roishik 21 нояб. 2018, в 15:21

@roishik Вы абсолютно правы, это очень наивный подход. Похоже, тогда я не знал ничего лучшего, но боюсь, что не смогу удалить свой ответ — я бы точно .

linusg 21 нояб. 2018, в 20:19

Ещё вопросы

  • 0 Функция загрузки blogger.com uncaught referenceerror $ не определена
  • 0 Независимые куки в разных папках
  • 1 Группа захвата Regex не распознает группу (1), несмотря на совпадения () true
  • 1 Неверное исключение в JavaScript. Вызов TypeError не является функцией [duplicate]
  • 0 Неразрешенный внешний символ, который пытается исправить
  • 1 Отключение событий JS
  • 1 Gradle, Вы не приняли лицензионные соглашения (Android SDK)
  • 0 c ++ редактировать определенное слово из строки в текстовом файле
  • 1 Форматировать строку даты в JavaScript
  • 0 почему изображение не занимает полную ширину в%?
  • 0 Ошибка «Не найден совместимый сервер» при установке mysql в Windows 7
  • 1 viewHolder.getAdapterPosition () в адаптере возвращает -1 позицию, и это вызвало IndexOutOfBoundException
  • 0 Конструктор копирования C ++ принимает неправильные значения
  • 0 Проблемы с Backbone.js и Require.js
  • 0 AngularFire & Ionic — форма данных не передается на сервер
  • 0 DatePicker отображать текущую дату по умолчанию и только для GET?
  • 1 Скачать холст в PNG на черном фоне
  • 1 Запустите кодированный тест пользовательского интерфейса с помощью агента тестирования
  • 1 LINQ — как отсортировать по дате
  • 1 Python не может найти это сгруппированное имя
  • 0 array_count_values рандомизировать совпадающие значения
  • 0 Выбор опций в angular-ui впереди не влияет
  • 0 Создать хлебную крошку с angularjs
  • 0 Утверждение рейтинга звезд jquery
  • 0 URL со ссылкой на объект из ответа HATEOAS REST в AngularJS
  • 1 Бревна переворачиваются слишком быстро [дубликаты]
  • 0 Получение списка имен файлов, уже загруженных в DOM?
  • 0 AngularJs обрабатывает несколько флажков
  • 1 Как использовать asp: BoundField в коде позади
  • 0 Освобождение памяти между циклами выполнения
  • 0 Сопоставить значения строки в таблице со значениями в столбце другой таблицы
  • 1 Как сгруппировать по дате с пандами?
  • 1 как посчитать количество слов в Android Kotlin?
  • 1 Как суммировать массивы текстовых полей на лету в Java
  • 1 Код Java Hangman, массив символов
  • 0 CSS3 переход в списке игнорируется
  • 0 Angular Выбранный по умолчанию не работает с объектом
  • 0 Почему файлы, загруженные с помощью createUploadUrl (), заполняют мое хранилище данных и хранилище больших двоичных объектов и как их удалить?
  • 1 Ожидается ошибка преобразования JSON: после ключа
  • 1 Сбой Chrome. Работает ли ноутбук Jupyter?
  • 0 Как создать пользовательский тип данных уровня байтов?
  • 0 Угловой сервис не инициализируется
  • 1 Pagedlistadapter не возвращает ни одного предмета в recyclerView
  • 0 Qt — Приложение Quick 2 из нового проекта (файл main.qml не найден)
  • 0 о removeClass из родительского элемента
  • 1 Узел JS Как отправить изображение вместе с запросом данных на другой сервер / API
  • 0 Центрирование растрового текста в прямоугольнике с помощью OpenGL
  • 1 чтение файла xml и переупорядочение элементов на основе схемы xsd
  • 0 Javascript не работает, когда echo’d по php
  • 1 Как найти приблизительные координаты из четырех разных списков и координат

Find and replace in project

You can search for a text string within a project, use different scopes to narrow your search process, exclude certain items from your search, find usages and occurrences.

Find the search string in a project

Find in Files

  1. Go to Edit | Find | Find in Files Control+Shift+F .
  2. In the search field, type your search string. Alternatively, in the editor, highlight the string you want to find and press Control+Shift+F . PyCharm places the highlighted string into the search field. To see a list of your previous searches, press Alt ArrowDown . If you need, specify the additional options. PyCharm lists the search strings and the files that contain them. If the search string is found several times on the same line of code, PyCharm merges the results in one line. To do a multi-line search, click the icon to enter a new line, and press Control+Alt+ArrowDown / Control+Alt+ArrowUp to browse through occurrences.
  3. Check the results in the preview area of the dialog where you can replace the search string or select another string, press Control+Shift+F again and start a new search.
  4. To see the list of occurrences in a separate tool window, click Open in Find Window . Use this window and its options to group the results, preview them, and work with them further. If you want to see each new search result in a separate tab in the Find tool window, click on the bottom of the Find in Files dialog and select the Open Results in New Tab checkbox.

Copy paths or references of the found files

  1. In the list of search results, right-click the result for which you want to copy a path and click Copy/Reference .
  2. In the Copy window, select the path or reference you need.

Narrow your search

You can use different options in the Find in Files dialog to adjust your search process.

Search in class hierarchy

  • Select options such as Words () or Match case () to find the exact word in a project or match the letter case.
  • With selected, PyCharm automatically escapes special regex symbols with backslash \ when you search for a text string that contains them. Keep in mind that if you copy ( Control+C ) the string first and then paste ( Control+V ) it in the search field, the regex symbols will not be taken into account. For more information about regex , refer to the search with regex documentation.
  • Click the icon to filter your search. For example, you can filter the search to omit comments or search only in comments instead.
  • Select one of the displayed options such as Module or Directory to limit your search. Moreover, you can select the Scope option that offers you a list of predefined scopes for your search. For example, you can limit your search only to the open files in your project. If you work without tabs, the scope Recently Viewed Files or Recently Changed Files option might become quite useful. You can also create your own custom scope, click the Browse icon () to open the Scopes dialog.

Search in the specific file types

Use the File Mask option to narrow your search to a specific file type. You can select the existing file type from the list, add a new file type, or add an additional file mask syntax to search for file types with certain patterns.

File mask

  1. Go to Edit | Find | Find in Files Control+Shift+F .
  2. In the Find in Files dialog, select the File Mask checkbox and from the list of file types, select the one you need. PyCharm limits its search to the specified type.
  3. If you don’t find the file type you need in the list, enter your file type in the File Mask field. Besides * , other wildcards are supported. If necessary, specify several file types using commas as separators. You can manually add a file mask in the search field. If necessary, specify several file types separating them with commas.

Search for usages in a project

You can search for usages of a symbol in your whole project or in a scope that you set.

Click to open the Find Usages dialog.

  1. Go to Edit | Find | Find in Files Control+Shift+F .
  2. Select the symbol for which you want to find usages. Note that you can extend your search to file usages as well.
  3. From the main menu select Edit | Find | Find Usages Alt+F7 . To see usages of the selected symbol within a file, right-click the context menu in your file and select Find Usages Control+F7 .
  4. Check the results in the Find tool window. Click to open the Find Usages dialog. Find tool windowYou can also pull out the results from the previous Find Usages actions. Go to Edit | Find | Recent Find Usages and the usage query. While in the Find tool window, you can use the Preview area to check the places where the usages were found, to see a call hierarchy for methods, data flow for fields, and so on. Find tool window preview areaIf PyCharm doesn’t return any results, it will display a message suggesting to opt for more options. You can follow the link or press Control+Alt+Shift+F7 to open the Find Usages dialog where you can set a new scope for your search. Find usage dialogFor example, you can set your search scope to production files only or to only open files. To set a custom scope, click .
  5. When you are done setting a new scope, click Find .

If you want PyCharm to show you usages of the selected symbol in the separate window, press Control+Alt+F7 . You can use this window for quick navigation.

Find usage dialog

Press the same shortcut again to see the usages in the default scope.

To view the results of previous Find Usages actions, select Edit | Find | Recent Find Usages from the main menu, and then select the usage query.

Disable automatic highlighting of usages

When you place the caret at a symbol, the IDE highlights all usages of this symbol in the current file. Use the F3 and Shift+F3 shortcuts to navigate between highlighted symbols.

In the Power Save Mode, highlighting of usages is disabled.

If necessary, you can disable the automatic highlighting.

  • In the Settings dialog ( Control+Alt+S ), go to Editor | General , and clear the Highlight usages of element at caret checkbox.

When the automatic highlighting is disabled, place the caret at the necessary symbol and press Control+Shift+F7 . This will highlight all usages of the symbol in the current file.

Replace the search string in a project

Replace in path dialog

  1. Press Control+Shift+R ( Edit | Find | Replace in Path ) to open the Replace in Path dialog.
  2. In the top field, enter your search string. In the bottom field, enter your replacement string. For example, if you want to replace a variable name with a new name for a large project, use the Replace in path instead of the Rename refactoring since your variable can appear in the config files as well.
  3. Click one of the available Replace commands.

10 полезных сочетаний клавиш в PyCharm

Сегодня я хочу поделиться с вами своими лайфхаками касательно работы в PyCharm, ведь мы все хотим сократить время разрабатывая проект, а в этом нам помогут быстрые команды при помощи сочетаний клавиш. Так как я предпочитаю пользоваться операционной системой семейства Windows, сочетания клавиш будут заточены под нее. Перед тем как применять данные комбинации, проследите за тем чтобы у вас стояла английская раскладка, иначе, команды будут совсем другие.

Быстрое изменение регистра

Иногда полезно быстро изменить регистр слов с верхнего на нижний, или наоборот, в этом нам поможет сочетание клавиш Ctrl + Shift + U.

Верхний регистр. Нижний регистр.

Быстрое форматирование кода по стандарту PEP 8

Скопированный код с сайта чаще всего требует форматирования, особенно это касается отступов, вручную это делать долго и нудно, поэтому существует команда Ctrl + Alt + L, она в миг исправит все ошибки форматирования в коде и расставит все по своим местам.

До форматирования.После форматирования.

Закомментировать код

Очень полезное и всеми любимое сочетание клавиш быстрого закомментирования текста, выручает, когда закомментировать часть кода чтобы избежать его выполнения Ctrl + /.

Серым цветом обозначен закомментированный текст.

Табуляция

Некоторые конструкции, например такие как if, elif, else требуют обозначения вложенности (отступов), т.е. после условия нужно отступить от левого края нажав кнопку пробел на четыре раза. Такой ввод можно заменить, нажав один раз кнопку Tab. Обратная команда Shit + Tab, убирает отступ.

Пример табуляции на третьей строчке кода.

Дублирование строки

Быстро продублировать строку поможет сочетание клавиш Ctrl + D.

Пример дублирования строк.

Перемещение блоков

Для быстрого перемещения строк или блоков используйте сочетание клавиш Ctrl + Shift + Стрелка вверх – двигает выделенный блок или строку вверх, Ctrl + Shift + Стрелка вниз – двигает выделенный блок или строку вниз.

До перемещения.После перемещения.

Выделить текущий блок

При помощи сочетания клавиш Ctrl + W, можно выделить текущий блок, если нажимать это сочетание дальше, то будут выделяться родительские блоки.

До выделения.После выделения.

Посмотреть определение методов, функций, переменных и т.п.

Если зажать Ctrl и кликнуть например на переменную, то мы попадем в блок кода где эта переменная определена.

На данном примере кликнув с зажатой клавишей Ctrl на переменную value, мы попадаем в место где она определена.

Показ последних блоков кода с которыми работали

Весьма пригодная команда, для вызова ее используйте комбинацию клавиш Ctrl + Shift + E.

Недавние блоки кода с которыми работали.

Установка и управление закладками

Для того чтобы установить закладку на строке кода, используйте сочетание клавиш Ctrl + F11, откроется меню в котором можно будет выбрать в качестве имени закладки как цифру, так и букву. Быстро установить безымянную закладку поможет клавиша F11, открыть меню с закладками можно при помощи сочетания клавиш Alt + 2.

Установка закладок с открытым меню.

А какие горячие клавиши в PyCharm знаете вы? Поделитесь ими в комментариях.

Подскажите как PyCharm изменить имя переменой сразу в нескольких местах?

введите сюда описание изображения

Я хочу добавить self. ко все переменным man_calories, но прописывать для каждой это долго, можно ли как то изменить за раз все сразу переменны man_calories?

Отслеживать
26.1k 7 7 золотых знаков 31 31 серебряный знак 48 48 бронзовых знаков
задан 11 ноя 2021 в 6:41
310 1 1 золотой знак 3 3 серебряных знака 11 11 бронзовых знаков

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Shift + F6 (курсор должен быть на переменной)

или Top Menu -> Refactor -> Rename

Отслеживать
ответ дан 11 ноя 2021 в 7:27
31 2 2 бронзовых знака
Shift + f8 не сработал
11 ноя 2021 в 7:49

Для изменения связанных переменных выделите необходимую переменную и нажмите ctrl+shift+f6

Отслеживать
ответ дан 11 ноя 2021 в 7:22
Ян Морозов Ян Морозов
119 1 1 серебряный знак 5 5 бронзовых знаков

Если вы не меняли настроек по умолчанию, то:

  1. Найти и заменить в проекте ==> Ctrl + Shift + R
  2. Найти и заменить в локальном файле ==> Ctrl + R

Иногда вместо R нужно использовать H или F

Отслеживать
ответ дан 11 ноя 2021 в 6:54
481 2 2 серебряных знака 9 9 бронзовых знаков

Это можно конечно, у меня есть в файле еще переменная woman_calories и он изменяет ее тоже, а мне этого не нужно

11 ноя 2021 в 7:06

@Tesla Вы заменяете man_calories на self.man_calories? Если да, то woman_calories не должно затрагиваться)

11 ноя 2021 в 7:10

    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.12.7.2316

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *