2010-08-19 13 views
7

¿Cuál es más adecuado como plataforma para un primer curso de informática: Python 2 o Python 3? Motivo de preguntar su opinión: Python 2 se usa en la gran mayoría de las instalaciones en todo el mundo, pero Python 3 es lo que está por venir.Python 2 o Python 3 como primer idioma del alumno

+1

Duplicado de todas las preguntas de Python 2 vs. Python 3 ya hechas. http://stackoverflow.com/search?q=%5Bpython%5D+%5Bpython-3.x%5D+learning para obtener una lista. –

+0

posible duplicado de [¿Qué versión de Python debo usar si soy nuevo en Python?] (Http://stackoverflow.com/questions/2090820/what-version-of-python-should-i-use-if -im-a-new-to-python) –

+0

Enseñe C++ en su lugar – Falmarri

Respuesta

6

Enseñarles a ambos (imho).

Enseñar al 2 Python (de la manera más Pythonic) y de presentar sus estudiantes los cambios 2to3, y su significado (impresión "cadena" => print ("cadena") ¿por qué?)

Por cierto , si usa 2.7 http://docs.python.org/dev/library/stdtypes.html#memoryview, ¡es una nueva característica interesante!

+0

En mi humilde opinión - enseñanza 2 y 3 y sobre 2to3 es un poco demasiado para el primer lenguaje de programación de un estudiante. Seguir con una sola versión sería mejor enseñar lo básico. –

+0

En mi humilde opinión, enseñar programación a los estudiantes no pretende que sean desarrolladores, sino comprender el desarrollo, y muchos cambios para un lenguaje de programación se deben a optimizaciones/mejoras que pueden ser útiles para comprender. –

+0

+1 para enseñar ambos. Pero si se debe elegir uno, enseña Python 3. Es realmente mejor, más limpio. Además, lleva algún tiempo hasta que utilicen Python para el código de producción, si es que lo hacen alguna vez. En ese momento, Python 3 será el ganador. – pepr

4

Yo diría que depende de su plan de estudios. Si vas a usar/mostrar algunas bibliotecas de código abierto, es posible que tengas problemas con algunas de ellas trabajando en 3, así que en ese caso ve con 2. Si solo muestras el idioma y haces que tus alumnos escriban todo desde cero sin el uso de ninguna biblioteca externa, diría que vaya con 3.

0

Python 2. Lamentablemente, el soporte de biblioteca para Python 3 es pésimo.

0

Para un estudiante, mi recomendación es python 2.x, porque es más antiguo, es más fácil encontrar examplios de código y el uso de funciones pythonic. Si elige estudiar Python 3, puede tener problemas para encontrar ejemplos de códigos y ayuda.

También hay mucho más experto de python 2.x que 3.0.

0

Yo diría que enseña Python 2. *, mientras que Python 3 es el nuevo hotness, todavía hay muy pocas bibliotecas compatibles, y la gran mayoría de los recursos en la web son para versiones anteriores de Python.

0

id decir python 2, python 2 ha existido por un tiempo y es muy maduro, con muchas bibliotecas y módulos y grandes frameworks disponibles para él. Python 3 es muy nuevo y aún no tiene muchas bibliotecas. Supongo que este será el escenario durante un par de años.

3

Francamente, creo que tiene una gran oportunidad para enseñar a sus alumnos una lección valiosa: mantener sus habilidades actualizadas mientras lidian diariamente con el código "antiguo". Esta es una realidad simple en la vida que tendrán que entender si quieren ser programadores exitosos (diablos, es probable que sea cierto para la mayoría de los trabajos).

Así es como abordaría esto: enséñeles 2.x como el idioma principal del curso. La mayoría de las bibliotecas de Python no serán compatibles con 3.x y los conceptos de programación no son terriblemente diferentes entre las dos versiones principales. Durante el curso, sin embargo, déles asignaciones que los obliguen a investigar Python 3, aprendiendo qué es diferente y por qué. Tómese un poco de tiempo para enseñarles sobre las herramientas de migración y algunos de los conceptos básicos para actualizar una base de código anterior. Para una clase de nivel inicial, también podría considerar darles un programa básico de 2.5 y hacer que lo actualicen manualmente a 3.1.