学习Python —漂亮的魔鬼

学习python的人面临的障碍

从Java切换到python对我来说并不困难。 尽管我的代码不是pythonic,但我可以编写代码并使其正常运行。 当我在Focus信息技术公司工作时,我们曾经举办过构建聊天机器人的讲习班和研讨会,而python是必备条件。 在进行了一些动手研讨会之后,我注意到了大多数Python初学者反复遇到的一些问题。

我想将其编译为列表,因为我想向初学者发送一条消息,即在学习python时可以犯这些错误,而且您并不孤单。 对于教Python的人来说,在教Python来完成新手时,需要牢记一些关键点。

一点背景

我们的大多数学生都具备C类型语言的知识-C / C ++ / Java。 他们将这些语言的理论知识作为课程的一部分。 问题的模式在各个方面都是相似的。 这里列出了一些问题。

问题所在

哪个版本的python?

python版本范围从2.7到3.7会使初学者感到困惑。 他们没有选择哪一个的明确方向。 这是任何想学习python的人提出的第一个问题。

外壳与文件

大多数Python程序员都了解如何利用python shell以及如何切入和切出它。 但是对于新手来说,这非常令人困惑,主要是因为它们来自编译语言的背景。 他们不知道交互式外壳以及键入和执行小代码段的能力。 在实验期间,他们使用编辑器编写了一些代码,编译并修复了错误,并进行迭代,直到程序正常运行为止。

互动输入

外壳输入是另一个问题。 我们曾经向他们展示了一些简单的程序,它们可以接受来自控制台的输入并执行一些操作。 input()对他们来说尤其困难。 该程序正在等待他们提供一些输入,并且他们正在等待该程序执行某些操作。 从那时起,我意识到我们应该始终使用raw_input("Enter your name ::")这样的提示来教输入语句

冒号的使用

这些学生习惯于使用C / C ++ / Java的分号,以至于将冒号误认为分号。 看着屏幕上投射的程序并没有多大帮助,他们挠头寻找是冒号还是分号。 他们中的大多数人都使用分号,因为那是其他语言所做的。 幸运的是,我从未见过有人将分号用作所有行。

缩进

对于新的Python程序员来说,这是另一个噩梦。 大括号给代码块带来了视觉上的装饰。 尽管python严格的缩进使代码对于初学者来说看起来很整洁,但这是一个战场,他们从来不知道应该缩进还是缩进特定的块。

资料类型

Python的弱类型和动态类型使初学者感到困惑。 这很困难,因为代码无法让他们知道是整数,浮点数还是字符串。 他们看上去都一样。 导致许多问题。

印刷与运营

由于数据类型不明显,因此它们不知道如何打印这些变量或如何使用它们。 例如,在学习列表的同时,他们很高兴创建5个元素的列表并使用print语句进行打印。 但是,当您要求他们垂直打印列表中的项目时,他们感到恐慌,因为他们不知道如何将其与Python的for循环结合使用。

如何以及何时使用字典?

当他们发现字典时,情况会变得更糟,因为没有其他编程语言向他们介绍过这样的数据结构。 尽管Java具有HashMaps,但他们在所见过的Java编程示例中并未广泛使用它们。 我们意识到,引入像dicts这样的数据结构的最佳方法是显示一个表,并显示如何将其转换为字典表示形式。

还有其他问题。 像如何操作字典。 字典中提供了如何查找键/值,函数的返回类型等。

外卖

  1. 如果您的读者已经具有编程知识,那么最好先比较他们已经知道的知识,然后将其映射到Python中类似的编程结构。
  2. 如果他们从未见过生活中的编程,那么与“ hello world”程序相比,乌龟图形程序将引起更多的兴趣。
  3. Python并不是一门难学的语言,但是它需要高水平的视野和开放的思维来吸取所有内容,尤其是如果您来自Java或C ++世界。
   Bhavani Ravi | Techie By Profession | Everything else by passion. 

@geeky_bhavani

From: https://hackernoon.com/learning-python-the-pretty-devil-675e42da526a

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值