设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 26888|回复: 15
打印 上一主题 下一主题

【Python 第64课】python shell

[复制链接]

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
楼主
发表于 2014-4-14 17:37:55 |只看该作者 |倒序浏览


各位好久不见,我终于又更新了。今天抽空来讲点非常非常基础的东西,关于在哪里写 python。

如果你已经编写过自己的程序,相信对这些内容已经熟悉。但很多刚刚接触编程的人,对于在 python 里编写并运行代码,还时常有些疑问。

一般来说,有两种运行 python 代码的方法:
1. 使用交互式的带提示符的解释器
2. 使用源文件

第一种方法,所谓“交互式的带提示符的解释器”,也被称做 python shell。当你安装好 python,并正确配置系统变量 PATH 后(linux 和 mac 上通常都预装并配置好了 python),在命令行里输入 python,会看到诸如以下的提示:

$ python
Python 2.7.5 (default, Aug 25 2013, 00:04:04)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

这就是 python shell。三个右括号 >>> 是 python 输入的提示符,它表示 python 解释器已经准备好了,等待你的命令。
在这里输入 python 的命令,并输入回车,python 解释器将在下一行立刻给出运行的结果。

以最简单的 print 方法为例:

>>> print 'hello world'
hello world
>>>

当输入完并回车之后,python 会立刻在后面输出你指定的字符串。

python shell 可以非常方便的运行 python 语句,这一点对调试、快速组建和测试相当有用。当你在编写代码的过程中,对一些方法不确定的时候,可以通过 python shell 来进行试验。一(cheng)些(xu)人(yuan)甚至把 Python shell 当作计算器来使用:

>>> 1 + 1
2
>>> x = 1
>>> y = 2
>>> x + y
3
>>>

注意上面的例子中,我们在 python shell 中定义了变量。这些变量值在 python shell 打开时一直有效,关闭后变量值则会丢失,除非你通过其他的方式进行保存。

但 python shell 不足的地方是,当你写多行代码时很不方便。你可以尝试写一个 if 语句:

>>> if 2 > 1:
...     print 'right'
...
right
>>>

你需要在第二行开头加上空格,并用两个回车结束语句。当你发现前面某行有错误时,想要回去修改就很麻烦。

另外,python shell 里写好的代码也很难保存(至少我目前还不知道有什么可行的方法)。所以一般并不会用它来“真正地”写代码。当你需要写一个相对完整的 python 程序时,你需要写在一个“源文件”中。这就是运行 python 的第二种方法。

仍然以 print 为例:

用一个文本编辑器新建一个文件,在里面输入:

print "hello world"

保存这个文件为 hello.py。注意,有些同学可能会习惯命名为 print.py,请不要这么做。不要以任何 python 的内置方法或者你会使用到的模块名来命名你自己的代码文件。

然后在命令行中,进入到这个文件所在的文件夹,输入 python hello.py。你会看到:

$python hello.py
hello world
$

这时候不会进入 python shell,而是直接输出了程序的结果。换句话说,python 执行了我们写在源文件 hello.py 中的代码。


python 自带了一个叫做 IDLE 的编辑器。你可以在程序列表里找到并打开它,也可以通过命令行中输入 idle 打开。

打开后,你会看到一个默认的窗口,里面有我们前面说到的 >>> 提示符。这就是 IDLE 里的 python shell,和我们前面说的命令行中的效果是一样的,可以用来调试简单的命令。在这里,你还可以通过快捷键 alt + p(mac 上是 ctrl + p)来返回之前输入过的命令。

如果要编辑源文件,则需要在菜单栏中选择 File -> New Window。这时打开的新窗口就是源文件窗口。在里面写好你的 python 代码后,点击菜单栏上的 Run -> Run Module(或者按键盘上的F5),按提示保存后,就会运行这个源文件,输出结果将会在之前的 python shell 窗口中显示。对于初学者来说,这还是比较方便的开发方式。


当然,还有很多 python 的 IDE(集成开发环境)可供选择,在此我不一一介绍。但基本都包括 python shell 和源代码编辑这两块核心功能。选择合适的方式去写 python,会让你事半功倍。

------------------
最后说点题外话:最近工作上的事情比较忙,一心难以二用,因此耽搁了很久也没有更新文章。目前这种状况仍然没有改变,所以还是不能保证更新的频率,望诸位理解。好在 python 的入门知识已基本都讲到了,点击文章末尾的“阅读原文”可进入之前的文章目录。接下来,我会挑一些小技巧或者常见问题进行分享。同时,我依然会在微信、论坛和QQ群里出现,尽量回答大家的问题,欢迎来各种讨论。




#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

54

积分

注册会员

Rank: 2

沙发
发表于 2014-4-30 21:38:56 |只看该作者

回帖奖励 +10

下载了WORD版的,基础一共62节课,学到快50课感觉终于要把基础课程学完了,结果又来了个64课,弱弱的问一下,这基础课程,大概还有多少?学完了基础该学啥呢?
一个自由主义的堕落文艺男青年
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

板凳
发表于 2014-5-1 21:41:11 |只看该作者
珍妮晚上好 发表于 2014-4-30 21:38
下载了WORD版的,基础一共62节课,学到快50课感觉终于要把基础课程学完了,结果又来了个64课,弱弱的问一下 ...

到60课左右基本上入门知识都涉及到了。
接下来,可以去找本正规教程再系统地整理一下。然后再用python去解决一些实际中的问题,比如数据处理、网页抓取、个人网站之类。还可以去相关的开发者社区去跟其他人交流一下,
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

276

积分

中级会员

Rank: 3Rank: 3

地板
发表于 2014-5-10 13:10:52 |只看该作者

回帖奖励 +10

用的是pycharm,蛮好用啊
回复

使用道具 举报

0

主题

0

好友

558

积分

高级会员

Rank: 4

5#
发表于 2014-9-29 21:50:41 |只看该作者

回帖奖励 +10

看来到这里基础知识都学的差不多了。要找本书系统的整理一下了。
学习,纯粹。
回复

使用道具 举报

0

主题

1

好友

273

积分

中级会员

Rank: 3Rank: 3

6#
发表于 2016-2-21 15:15:57 |只看该作者

回帖奖励 +10

crossin先生 发表于 2014-5-1 21:41
到60课左右基本上入门知识都涉及到了。
接下来,可以去找本正规教程再系统地整理一下。然后再用python去 ...

crossin老师,能推荐基本正规的教程吗?
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

7#
发表于 2016-2-21 18:41:17 |只看该作者
catherinemic 发表于 2016-2-21 15:15
crossin老师,能推荐基本正规的教程吗?

http://crossin.me/forum.php?mod= ... d=585&fromuid=3
这里提到的几本
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

8#
发表于 2016-2-21 18:41:20 |只看该作者
catherinemic 发表于 2016-2-21 15:15
crossin老师,能推荐基本正规的教程吗?

http://crossin.me/forum.php?mod= ... d=585&fromuid=3
这里提到的几本
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

9#
发表于 2016-2-21 18:41:24 |只看该作者
catherinemic 发表于 2016-2-21 15:15
crossin老师,能推荐基本正规的教程吗?

http://crossin.me/forum.php?mod= ... d=585&fromuid=3
这里提到的几本
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

1

好友

273

积分

中级会员

Rank: 3Rank: 3

10#
发表于 2016-2-21 21:31:35 |只看该作者
crossin先生 发表于 2016-2-21 18:41
http://crossin.me/forum.php?mod=viewthread&tid=585&fromuid=3
这里提到的几本

谢谢crossin老师!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-23 15:59 , Processed in 0.030196 second(s), 34 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部