¿Cuál es la diferencia entre "extender" y "añadir" en Python?
Las listas pueden contener elementos de cualquier tipo de datos, y los elementos de una sola lista no tienen por qué ser todos del mismo tipo.
El método append() añade un nuevo elemento al final de la lista.
Las listas se implementan como clases. "Crear" una lista es en realidad crear una instancia de una clase. Por tanto, existen múltiples formas de manipular listas. El método extend() simplemente toma una lista como parámetro y agrega cada elemento de ese parámetro a la lista original.
No leí mucho sobre la explicación de extender, solo lo pensé detenidamente
>>> myList = [1,2.0,'a']
>> > miLista
[1, 2.extend([123, 'abc'])
> > > & gt; >[1, 2.0, 'a', 'APP', 123, 'abc']
>>> > myList.append(1,2)
Rastreo (más reciente llamada última):
p>Archivo"& lt;pyshell#69>", línea 1, en
myList.extend([1],[2] )
Error de tipo: extend() solo acepta un parámetro (se proporcionan 2 parámetros)
>>
Los resultados son los siguientes:
añadir y extender sólo pueden aceptar un argumento, añade cualquier cosa (incluso primitivos) y expande una lista.
Estilo
Python sigue un diseño claro y consistente, lo que lo convierte en un lenguaje fácil de leer, mantenible y versátil favorecido por una gran cantidad de usuarios.
El principio rector general para el desarrollo de diseñadores es que sólo existe una mejor manera de resolver un problema determinado. Tim Peters expresa este sentimiento en su lema de Python (llamado Python Zen): Debería haber una, y preferiblemente sólo una, manera obvia. Esta es exactamente la misma idea que TMTOWTDI (TMTOWTDI), la idea central de Perl, otro lenguaje dinámico de alto nivel con características similares. Esto es completamente contrario a la idea central de TMTOWTDI en Perl (que hay varias formas de hacerlo).
Los autores de Python diseñaron intencionalmente la sintaxis para que fuera muy estricta, de modo que los malos hábitos de programación (como no sangrar la siguiente línea de una declaración if a la derecha) no se puedan compilar. Uno de los hábitos importantes son las reglas de sangría de Python.
A diferencia de la mayoría de los otros lenguajes (como C), los límites de un módulo están determinados completamente por la posición del primer carácter de cada línea en la línea (mientras que C usa un par de corchetes {} Definir claramente los límites del módulo, independientemente de la posición de los personajes). Esto ha sido controvertido. Separar el significado gramatical de un lenguaje de la forma en que están dispuestos los caracteres se consideró un avance importante en los lenguajes de programación desde los inicios de lenguajes como C. Pero es innegable que Python hace que los programas sean más claros y hermosos al obligar a los programadores a aplicar sangrías (incluidas las definiciones de funciones if, for y usando módulos).
Comparación con MATLAB
Cuando se trata de informática científica, la gente puede mencionar primero MATLAB. Sin embargo, además de algunos paquetes de herramientas altamente especializados de MATLAB que no se pueden reemplazar, MATLAB La mayoría de. Las funciones comúnmente utilizadas se pueden encontrar en el mundo de Python en forma de bibliotecas de extensión. En comparación con MATLAB, usar Python para computación científica tiene las siguientes ventajas:
● Primero, MATLAB es un programa comercial y costoso.
Python es completamente gratuito y muchas bibliotecas informáticas científicas de código abierto proporcionan interfaces Python. Los usuarios pueden instalar Python y la mayoría de sus bibliotecas de extensiones de forma gratuita en cualquier computadora.
● En segundo lugar, en comparación con MATLAB, Python es un lenguaje de programación más riguroso y más fácil de aprender. Permite a los usuarios escribir código más legible y mantenible.
● Finalmente, MATLAB se centra principalmente en ingeniería e informática científica. Sin embargo, incluso en el campo de la informática, a menudo existen diversas necesidades, como la gestión de archivos, el diseño de interfaces, la comunicación en red, etc. Python tiene una rica biblioteca de extensiones que puede realizar fácilmente diversas tareas avanzadas. Los desarrolladores pueden usar Python para implementar varias funciones necesarias para aplicaciones completas.