两个基本的Python编程问题

时间:2012-06-15 19:25:01

标签: python

你可能会惊讶于这些问题的基本原理,但请耐心等待!如果有更好的地方可以提问,我会非常感谢您的迁移。

我正在研究两个Python教程,其中一个是“艰难学习Python”。我没有条件评估教程的质量,所以我有几个问题。 (我刚开始LPTHW,所以如果答案有20个练习,我会道歉。)

  1. 在LPTHW中,到目前为止的练习已编码到Notepad ++中并从命令行执行txt文档。在另一个中,它是“逐个输入命令到Python”教程。问题:哪个对学习者更实用? “两者”都是可以接受的答案。

  2. 在LPTHW中,首先使用变量解释,格式字符命令%s%d和%r。该练习说“在网上搜索所有这些内容。”我做了一个网络搜索,发现有人说“不要使用那些,使用新的。”问题:LPTHW是这样过时的,我应该使用“新的”吗?

7 个答案:

答案 0 :(得分:3)

  1. 我会说“两个”。当您编写“真实程序”时,您将在文本文件中编辑它们并从命令行运行它们,但交互式环境是学习,探索和测试的好方法。我正在编写一个交互式python会话,因为我正在编写一个检查我的假设的地方。
  2. 您应该完全学习旧的格式化语法。它基于C语言的格式化打印设备,许多编程语言都采用了类似的系统,因此了解它非常重要。学习新东西也不会有什么坏处,尝试在新旧风格中编写相同的格式化功能是一个很好的练习。

答案 1 :(得分:1)

这是我的看法:

  1. 新学员可能更喜欢首先将命令逐一输入Python,因为它们获得即时反馈并且仅限于小程序。编码到编辑器或IDE中是为了更高级的用户。 “两者”是最终的长期答案。
  2. 可能是LPTHW是为早期版本的Python编写的(例如2.6)。我想现在我们已经3.2了。我会说,如果你根本不了解Python,并且刚刚第一次了解它,即使是一个不在前沿的教程也会对你有帮助。可能会有一些细节在这里和那里发生变化,但基本语言仍然会很好。

答案 2 :(得分:1)

1)两者。创建脚本是您大规模使用Python的方法。使用Python shell也很好地向您展示您可以通过命令行使用大量选项进行简单的脚本编写,而不需要像在其他语言中那样构建/编译整个程序等。

2)格式改变,但这不是什么大问题。许多人仍然使用Python 2.x,因为Python3引入了一些不必要的更改。看看吧。

答案 3 :(得分:1)

  1. Python repl非常适合测试内置函数,但是只要编写健壮,复杂的程序,就必须写入文件。

  2. 虽然我们使用的是Python 3.x,但Python 2.x仍然被广泛使用。 %s是字符串的占位符,%d是整数的占位符,%r是某些python命令的占位符。

  3. 例如:

    a = "hello world"
    b = "%s"
    b%a == "hello world"
    a = 10
    b = "%d"
    b%a == "10"
    a = "%r"
    a%range(10) == "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]" #since range(10) is a python function
                                                    #which returns the list of numbers 
                                                    #from 0 to 10
    

答案 4 :(得分:1)

我在过去的几个月里一直在使用LPTHW,目前我在ex50。我的简短回答是:认真对待Shaw并通过LPTHW破坏你的屁股!您将看到您将同时使用文本编辑器和交互式会话,因此这不是真正的问题。 Shaw并不是在开玩笑,#34;但是那是因为如果你花费几个月的时间,并采取额外的信用"说真的,你要学到很多东西。

当他说,"去读关于等等,"是的,这很难。但我很快意识到"去了解"是一项必要的技能(我想我已经知道了)。此外,它允许上网冲浪,并且忘记了在作业中没有的python内容:)

我的一些提示:

  • 首先做这本书(比LPTH容易得多):command line crash course。认真对待他,制作闪存卡。我很幸运,有两台笔记本电脑并排,一台Windows 7,一台Ubuntu linux。在这一点上,我已经倾向于在linux中编写所有代码,而且我对命令行的东西非常好,我实际上想要学习Vim(对我来说是个大惊喜)

    < / LI>
  • 如果你可以在linux和windows之间做出选择,那么你最终可能会更乐意使用linux。我认为Windows上支持所有内容,但大多数帮助都是针对Linux的。我有一个并排学习的目标,但就像我上面说的那样,此时我在我的Windows机器上阅读LPTHW,而我在Ubuntu机器上编码

  • 做所有额外的功劳。但如果你感到困惑,请不要担心。我发现,以后,也许是第二天,也许是下周,我会回去,最后了解上一次练习的额外功劳。

  • 到目前为止的所有练习中,&#34;练习46:项目骨架&#34;对我来说是最具变革性的。在书的这一点上,我开始陷入困境,感到无能。但是我一直在挣扎,经过一两个星期(可能是10到20个小时的工作),突然之间点了点什么,&#34;我现在觉得我知道一些事情。我建议你做一下所需的测验&#34;反复提问3-6,直到你可以从内存中完成所有操作而不需要查找任何内容。在linux上,你可以用键盘完成所有这些问题,并且我意识到如果你不需要鼠标,事情会有多快。我认为这就是为什么我很想学习Vim。

  • 最后,当您通过LPTHW工作时,如果可能的话,将python用于小项目。这是一个很好的动力,你可以提前阅读以找出安装包等内容。我很早就发现了,我能够进入github,找到我需要的代码,并根据自己的目的进行调整。例如,即使大部分都是神秘的,如果__name__ =&#39; __ main __&#39;:我不知道这意味着什么,但这并没有阻止我使用python并希望了解更多信息。

好的,祝你好运!

答案 5 :(得分:0)

Idle会更快一点,或者eclipse的pydev插件(也会给代码完成等),你可以用这些方式从一个地方编写和运行你的代码,并且过时,真的取决于你的环境,你也不能错过youtube上的newboston教程

答案 6 :(得分:0)

  1. 将Python代码键入交互式解释器是一种很好的测试方法,特别是如果您不想为它创建文件。查看结果函数返回的结果以及尝试任何结果都很有用。但是你编写的任何程序当然都会存储在文件中。两者都是答案,因为它们都是在开发过程中使用的,仅用于不同目的。

  2. 格式化字符串的新方法是"thestring".format(...)",其中...是各种格式选项。这确实是新的做事方式,你应该使用它。旧的格式选项会降低代码的可读性(因为您必须知道其中包含%的缩写)并且编写"string with values: {0} and {1}".format(3, 4)要容易得多。