社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Aea

Aea 最近创建的主题
Aea 最近回复了

这真的取决于他们知道多少编程,但是我已经看到R成功地介绍给那些完全不了解编程的人。我想他们对编程没有太多的了解。

这听起来可能很明显,但只教他们解决问题所需的语言,不要太深入地使用“合适的”和高效的编码风格,一旦你的学生有了一些理解,例如对风格的评论,但不要太严格,你就可以慢慢地开始这项工作。

要解决一个问题,你必须至少理解语言的一些基本部分。我假设您所做的一切都可能包含在一行中,而名称间距、模块、性能等并不是首要任务。

首先让他们在开发环境中进行设置,然后创建一个简单的程序让他们运行。确保他们有一个拥有他们所需要的一切的环境(如果他们需要numpy,引导他们完成安装),引导他们从命令行启动程序,当然还有一个易于使用的编辑器(例如eclipse+pydev,可能太复杂)。最让人沮丧的是当你找不到工作环境的时候。祈祷你不需要支持Windows或者没有很多库来应对。

一旦你掌握了这些,就把他们介绍给通用语言。封面类型和可能遇到的微妙问题,例如:

>>> 1/2
0
>>> 1./2
0.5

我甚至会养成让一切漂浮的习惯。引入输出字符串,以及如果希望输出在同一行上,如何转换该输出。包括运算和逻辑,然后介绍“函数”,确保在数学等价物之间建立区别。我认为命令流结构应该相当简单,包括简单的结构(if,else,elif,可能while)。

此时,他们应该能够创建一个简单的程序来解决一个简单的问题。在此基础上开始构建,引入更复杂的命令流、更复杂的数据类型(列表、集合、dict)、可能的迭代器和生成器(注意这些,它们可能很麻烦,您可能不需要它们)。

编辑:

我忘了触摸输入和输出。我将提供一个简单的框架,如果你愿意的话,你的学生可以使用它。命令行应该足够了,除非您想跟踪正在发生的事情,在这种情况下,文件输出更加合理。或者,管道输出到文件也可以。

我认为集合在数学上更相关(也更有用!)然后是听写,并将首先介绍它们。