Python是初学程序员的最好语言吗?(13)Python语言(常见问题)(参考资料)
是的。
使用过程和静态类型语言(如Pascal,C或C ++或Java的子集)启动学生仍然很常见。学习Python作为他们的第一语言可以更好地为学生服务。Python有一个非常简单和一致的语法和一个大型标准库,最重要的是,在开始编程课程中使用Python可以让学生专注于重要的编程技能,如问题分解和数据类型设计。使用Python,学生可以快速学习基本概念,例如循环和过程。他们甚至可以在第一个课程中使用用户定义的对象。
对于以前从未编程的学生来说,使用静态类型语言似乎不自然。它提供了学生必须掌握的额外复杂性,并减缓了课程的进度。学生们正在努力学习像计算机一样思考,分解问题,设计一致的界面和封装数据。虽然学习使用静态类型语言从长远来看很重要,但它并不一定是学生第一次编程课程中最好的主题。
Python的许多其他方面使它成为一种优秀的第一语言。像Java,Python有一个庞大的标准库,使学生可以在课程很早就分配编程项目做什么。分配不限于标准的四功能计算器和检查平衡程序。通过使用标准库,学生在学习编程的基础知识时可以获得对实际应用程序的满意度。使用标准库还可以向学生讲授代码重用。PyGame等第三方模块也有助于扩大学生的学习范围。
Python的交互式解释器使学生能够在编程时测试语言功能。当他们在另一个窗口中输入程序的源时,他们可以保持一个窗口与解释器一起运行。如果他们不记得列表的方法,他们可以这样做:
>>>
>>> L = []
>>> dir(L)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__',
'__dir__', '__doc__', '__eq__', '__format__', '__ge__',
'__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__',
'__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__',
'__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__',
'__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__',
'__sizeof__', '__str__', '__subclasshook__', 'append', 'clear',
'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove',
'reverse', 'sort']
>>> [d for d in dir(L) if '__' not in d]
['append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>> help(L.append)
Help on built-in function append:
append(...)
L.append(object) -> None -- append object to end
>>> L.append(1)
>>> L
[1]
通过翻译,文档在学生编程时从不远离学生。
Python也有很好的IDE。IDLE是Python的跨平台IDE,使用Tkinter用Python编写。PythonWin是一个特定于Windows的IDE。Emacs用户将很高兴知道Emacs有一个非常好的Python模式。所有这些编程环境都提供语法突出显示,自动缩进以及在编码时访问交互式解释器。有关Python编辑环境的完整列表,请 参阅Python wiki。