Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Dado que dedica gran parte del tiempo de desarrollo en el editor de código, la compatibilidad con Python en Visual Studio proporciona funcionalidad para ayudarle a ser más productivo. Entre las características se incluyen el resaltado de sintaxis de IntelliSense, la autocompletación, la ayuda de firma, las sobrescrituras de métodos, la búsqueda y la navegación.
El editor de código se integra con la ventana interactiva en Visual Studio. A medida que trabaje, es fácil intercambiar código entre las dos ventanas. Para obtener más información, consulte Paso 3 del tutorial: Usa la ventana interactiva REPL y Usa la ventana interactiva - Enviar al comando interactivo.
La esquematización le ayuda a centrarse en secciones concretas del código. Para obtener documentación general sobre la edición de código en Visual Studio, vea Características del editor de código.
El Explorador de objetos de Visual Studio permite inspeccionar las clases de Python definidas en cada módulo y las funciones definidas en esas clases. Puede acceder a esta característica en el menú Ver o mediante el método abreviado de teclado Ctrl+Alt+J.
Uso de características de IntelliSense
IntelliSense proporciona finalizaciones, ayuda de firma, información rápida y coloreado de código. Las versiones 15.7 y posteriores de Visual Studio 2017 también admiten sugerencias de tipo.
Para mejorar el rendimiento, IntelliSense en Visual Studio 2017 versión 15.5 y versiones anteriores depende de una base de datos de finalización generada para cada entorno de Python del proyecto. Es posible que tenga que actualizar la base de datos si agrega, quita o actualiza paquetes. El estado de la base de datos se muestra en la ventana Entornos de Python (un complemento del Explorador de soluciones) en la pestaña IntelliSense . Para obtener más información, consulte Referencia de la ventana Entornos.
Visual Studio 2017, versión 15.6 y versiones posteriores, usa un medio diferente para proporcionar finalizaciones de IntelliSense que no dependen de la base de datos.
Terminaciones
Las finalizaciones aparecen como instrucciones, identificadores y otras palabras que se pueden escribir adecuadamente en la ubicación actual del editor. IntelliSense rellena la lista de opciones en función del contexto y filtra elementos incorrectos o distraídos. Las finalizaciones a menudo se desencadenan escribiendo instrucciones diferentes (como import) y operadores (incluido un punto), pero pueden aparecer en cualquier momento seleccionando el método abreviado de teclado Ctrl+J +Space.
Cuando se abre una lista de finalización, puede buscar la finalización que desee mediante las teclas de dirección, el mouse o si continúa escribiendo. A medida que escribe más letras, la lista se filtra aún más para mostrar las finalizaciones probables. También puede usar accesos directos como:
- Escriba letras que no estén al principio del nombre, como "parse" para buscar "argparse".
- Escriba solo letras que estén al principio de palabras, como "abc" para buscar "AbstractBaseClass" o "air" para buscar "as_integer_ratio".
- Omitir letras, como "b64" para buscar "base64"
Estos son algunos ejemplos:
Las finalizaciones de miembros aparecen automáticamente cuando se escribe un punto después de una variable o valor, junto con los métodos y atributos de los tipos potenciales. Si una variable puede ser más de un tipo, la lista incluye todas las posibilidades de todos los tipos. Se presenta información adicional para indicar qué tipos son compatibles con cada finalización. Cuando todos los tipos posibles admiten una finalización, no se muestra ninguna anotación.
De forma predeterminada, no se muestran los miembros "dunder" (miembros que comienzan y terminan con un doble carácter de subrayado). En general, no se debería acceder directamente a estos miembros. Si necesita usar un dunder, escriba el carácter de subrayado doble inicial para agregar estas finalizaciones a la lista:
Las import instrucciones y from ... import muestran una lista de módulos que se pueden importar. La from ... import instrucción genera una lista que incluye miembros que se pueden importar desde el módulo especificado.
Las instrucciones raise y except muestran listas de clases que probablemente se consideren tipos de error. Es posible que la lista no incluya todas las excepciones definidas por el usuario, pero le ayuda a encontrar rápidamente excepciones integradas adecuadas:
@ Al seleccionar símbolo (en) se inicia un decorador y se muestran los posibles decoradores. Muchos de estos elementos no se pueden usar como decoradores. Compruebe la documentación de la biblioteca para determinar qué decorador se va a usar.
Para obtener más información, vea Opciones: resultados de finalización.
Sugerencias de tipo
Las sugerencias de tipo están disponibles en Visual Studio 2017, versión 15.7 y posteriores.
"Sugerencias de tipo" en Python 3.5+ (PEP 484 (python.org) es una sintaxis de anotación para funciones y clases que indican los tipos de argumentos, valores devueltos y atributos de clase. IntelliSense muestra sugerencias de tipo cuando pasas el puntero sobre llamadas a funciones, argumentos y variables que tienen esas anotaciones.
En el ejemplo siguiente, la clase Vector se declara como el tipo List[float], y la función scale contiene sugerencias de tipo para sus argumentos y el valor devuelto. Al mantener el puntero sobre una llamada a esa función se muestran las sugerencias de tipo:
En el ejemplo siguiente, puede ver cómo los atributos anotados de la clase Employee aparecen en la ventana emergente de finalización de IntelliSense para un atributo.
También resulta útil validar las indicaciones de tipo a lo largo del proyecto porque los errores, por lo general, no aparecen hasta el tiempo de ejecución. Para ello, Visual Studio integra la herramienta Mypy estándar del sector mediante el comando de menú contextual Python>Run Mypy in Solution Explorer:
Si es necesario, al ejecutar el comando se le pedirá que instale el paquete Mypy. A continuación, Visual Studio ejecuta Mypy para validar sugerencias de tipo en todos los archivos de Python del proyecto. Los errores aparecen en la ventana Lista de errores de Visual Studio. Al seleccionar un elemento en la ventana, se desplaza a la línea adecuada del código.
Como ejemplo sencillo, la siguiente definición de función contiene una sugerencia de tipo para indicar que el input argumento es de tipo str, mientras que la llamada a esa función intenta pasar un entero:
def commas_to_colons(input: str):
items = input.split(',')
items = [x.strip() for x in items]
return ':'.join(items)
commas_to_colons(1)
El uso del comando Ejecutar Mypy en este código genera el siguiente error:
Nota:
Para las versiones de Python anteriores a la versión 3.5, Visual Studio también muestra sugerencias de tipo que se proporcionan a través de archivos de código auxiliar con tipos (.pyi). Puede usar archivos de código auxiliar cuando no desee incluir sugerencias de tipo directamente en el código o para crear sugerencias de tipo para una biblioteca que no las use directamente. Para obtener más información, consulte Creación de códigos auxiliares para módulos de Python en la wiki del proyecto mypy.
Visual Studio no admite en este momento sugerencias de tipo en los comentarios.
Ayuda para firmas
Al escribir código que llama a una función, la asistencia para la firma aparece al escribir el paréntesis de apertura (. Muestra la documentación y la información de parámetros disponibles. Puede acceder a la ayuda de firma con el método abreviado de teclado Ctrl+Mayús+Espacio dentro de una llamada de función. La información mostrada depende de las cadenas de documentación del código fuente de la función, pero incluye los valores predeterminados.
Sugerencia
Para deshabilitar la ayuda de firma,vaya a >>>>General. Desactive la casilla finalización de instrucciones>Información de parámetro.
Información rápida
Al mantener el puntero del ratón sobre un identificador se muestra una descripción rápida. En función del identificador, Información Rápida puede mostrar los posibles valores o tipos, cualquier documentación disponible, tipos de retorno, y ubicaciones de definición.
Coloración de código
El coloreado de código utiliza información del análisis de código para colorear variables, declaraciones y otras partes de su código. Las variables que hacen referencia a módulos o clases pueden mostrarse en un color diferente de las funciones u otros valores. Los nombres de parámetro pueden aparecer en un color diferente al de las variables locales o globales. De forma predeterminada, las funciones no se muestran en negrita.
Para personalizar los colores, vaya a Herramientas>Opciones>fuentes y colores del>. En la lista Mostrar elementos , modifique las entradas de Python deseadas:
Insertar fragmentos de código
Los fragmentos de código son trozos de código que se pueden insertar en los archivos mediante un método abreviado de teclado y seleccionando Tab. También puede usar los comandos Editar>Insertar fragmento de código de>, y Rodear con, seleccione Python y, a continuación, seleccione el fragmento deseado.
Por ejemplo, class es un acceso directo para un fragmento de código que inserta una definición de clase. Verá que el fragmento de código aparece en la lista de autocompletar al escribir class:
Al seleccionar Tab , se genera el resto de la clase . A continuación, puede sobrescribir el nombre y la lista de bases, desplazarse entre los campos resaltados con Tab y presionar Intro para empezar a escribir el cuerpo.
Comandos de menú
Al usar el comando de menú Editar>IntelliSense> Insertar fragmento de código, primero seleccione Python y, a continuación, seleccione el fragmento de código deseado:
El comando Edit>IntelliSense>Surround With coloca la selección actual en el editor de texto dentro de un elemento estructural elegido. Supongamos que tenía un fragmento de código como el ejemplo siguiente:
sum = 0
for x in range(1, 100):
sum = sum + x
Al seleccionar este código y elegir el comando Envolver con se muestra una lista de fragmentos de código disponibles. Al elegir def en la lista de fragmentos de código se coloca el código seleccionado dentro de una definición de función. Puede usar la tecla Tab para navegar entre el nombre de función resaltado y los argumentos:
Examen de fragmentos de código disponibles
Puede ver los fragmentos de código disponibles en el Administrador de fragmentos de código. Acceda a esta característica desde elAdministrador de fragmentos de código> y seleccione Python como lenguaje:
Para crear sus propios fragmentos de código, consulte Tutorial: Creación de un fragmento de código.
Si escribe un fragmento de código excelente que le gustaría compartir, no dude en publicarlo en un gist y háganoslo saber. Es posible que podamos incluirlo en una versión futura de Visual Studio.
Navegar por el código
La compatibilidad con Python en Visual Studio proporciona varias maneras de navegar rápidamente dentro del código, incluidas las bibliotecas para las que está disponible el código fuente. Puede encontrar bibliotecas con código fuente para la Barra de Navegación, Ir a Definición, Ir a y Buscar Todas las Referencias comandos. También puede usar el Explorador de objetos de Visual Studio.
Barra de navegación
La barra de navegación se muestra en la parte superior de cada ventana del editor e incluye una lista de dos niveles de definiciones. La lista desplegable izquierda contiene definiciones de funciones y clases de nivel superior en el archivo actual. La lista desplegable derecha muestra una lista de definiciones dentro del ámbito que se muestra a la izquierda. A medida que se mueve en el editor, las listas se actualizan para mostrar el contexto actual y también puede seleccionar una entrada de estas listas para saltar directamente.
Sugerencia
Para ocultarla barra de navegación, vaya a >>>>General y desactive labarra de navegación>.
Ir a definición
El comando Ir a definición salta rápidamente del uso de un identificador (como un nombre de función, una clase o una variable) a la ubicación de la definición de código fuente. Para invocar el comando, haga clic con el botón derecho en un identificador y seleccione Ir a definición o coloque el símbolo de intercalación en el identificador y seleccione F12. El comando funciona en el código y en las bibliotecas externas en las que el código fuente está disponible. Si el código fuente de la biblioteca no está disponible, Ir a definición salta a la instrucción pertinente import para una referencia de módulo o muestra un error.
Ir a
El comando Editar>ir a (Ctrl+), muestra un cuadro de búsqueda en el editor donde puede escribir cualquier cadena y ver posibles coincidencias en el código que define una función, clase o variable que contiene esa cadena. Esta característica proporciona una funcionalidad similar a Ir a definición , pero sin tener que buscar un uso de un identificador.
Para ir a la definición de ese identificador, haga doble clic en cualquier nombre o seleccione el nombre con las teclas de dirección seguidos de Entrar.
Buscar todas las referencias
La característica Buscar todas las referencias es una manera útil de detectar dónde se define y usa cualquier identificador determinado, incluidas las importaciones y las asignaciones. Para invocar el comando, haga clic con el botón derecho en un identificador y seleccione Buscar todas las referencias, o coloque el cursor en el identificador y seleccione Mayús+F12. Al hacer doble clic en un elemento de la lista, se desplaza a su ubicación.