摘要:在学生时代,就羡慕实验室,老师在里面可以鼓捣各种有意思的东西。再后来,终于发现原来计算机是一个最好的实验室。通过实验,研究清楚了,才能在编程实践中使用。其实,这就是一个非常好的实验室。
在学生时代,就羡慕实验室,老师在里面可以鼓捣各种有意思的东西。上大学的时候,终于有机会在实验室做大量实验了,因为我是物理系,并且,遇到了一位非常令我尊敬的老师——高老师,让我在他的实验室里面,把所有已经破旧损坏的实验仪器修理装配好,并且按照要求做好实验样例。经过一番折腾,才明白,要做好实验,不仅仅花费精力,还有不菲的设备成本呢。后来工作的时候,更感觉到实验设备费用之高昂,因此做实验的时候总要小心翼翼。
再后来,终于发现原来计算机是一个最好的实验室。在这里做实验成本真的很低呀。
扯的远了吧。不远,现在就扯回来。学习Python,也要做实验,也就是尝试性地看看某个命令到底什么含义。通过实验,研究清楚了,才能在编程实践中使用。
怎么做Python实验呢?
走进Python实验室在《集成开发环境(IDE)》一章中,我们介绍了Python的IDE时,给大家推荐了IDLE,进入到IDLE中,看到>>>符号,可以在后面输入一行指令。其实,这就是一个非常好的实验室。
另外一个实验室就是UNIX操作系统(包含各种Linux和Mac OSx)的shell,在打开shell之后,输入python,出现如下图所示:
如果看官是用windows的,也能够通过cmd来获得上图类似的界面,依然是输入python,之后得到界面。
在上述任何一个环境中,都可以输入指令,敲回车键运行并输出结果。
在这里你可以随心所欲实验。
交互模式下进行实验前面的各讲中,其实都使用了交互模式。本着循序渐进、循环上升的原则,本讲应该对交互模式进行一番深入和系统化了。
通过变量直接显示其内容从例子开始:
>>> a="http://qiwsir.github.io" >>> a "http://qiwsir.github.io" >>> print a http://qiwsir.github.io
当给一个变量a赋值于一个字符串之后,输入变量名称,就能够打印出字符串,和print a具有同样的效果。这是交互模式下的一个特点,如果在文件模式中,则不能,只有通过print才能打印变量内容。
缩进>>> if bool(a): ... print "I like python" ... I like python
对于if语句,在上一讲《从if开始语句的征程》中,已经注意到,if下面的执行语句要缩进四个空格。在有的python教材中,说在交互模式下不需要缩进,可能是针对python3或者其它版本,我使用的是python2.7,的确需要缩进。上面的例子就看出来了。
看官在自己的机器上测试一下,是不是需要缩进?
报错在一个广告中看到过这样一句话:程序员的格言,“不求最好,只求报错”。报错,对编程不是坏事。如何对待报错呢?
一定要认真阅读所提示的错误信息。
还是上面那个例子,我如果这样写:
>>> if bool(a): ... print "I like python" File "", line 2 print "I like python" ^ IndentationError: expected an indented block
从错误信息中,我们可以知道,第二行错了。错在什么地方呢?python非常人性化就在这里,告诉你错误在什么地方:
IndentationError: expected an indented block
意思就是说需要一个缩进块。也就是我没有对第二行进行缩进,需要缩进。
另外,顺便还要提醒,>>>表示后面可以输入指令,...表示当前指令没有结束。要结束并执行,需要敲击两次回车键。
探索如果看官对某个指令不了解,或者想试试某种操作是否可行,可以在交互模式下进行探索,这种探索的损失成本非常小,充其量就是报错。而且从报错信息中,我们还能得到更多有价值的内容。
例如,在《眼花缭乱的运算符》中,提到了布尔运算,其实,在变量的类型中,除了前面提到的整数型、字符串型,布尔型也是一种,那么布尔型的变量有什么特点呢?下面就探索一下:
>>> a "http://qiwsir.github.io" >>> bool(a) #布尔型,用bool()表示,就类似int(),str(),是一个内置函数 True >>> b="" >>> bool(b) False >>> bool(4>3) True >>> bool(4<3) False >>> m=bool(b) >>> m False >>> type(m)>>>
从上面的实验可以看出,如果对象是空,返回False,如果不是,则返回True;如果对象是False,返回False。上面探索,还可以扩展到其它情况。看官能不能通过探索,总结出bool()的特点呢?
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/37316.html
摘要:图文教程教程廖雪峰的编程教室微信公众号快速教程零基础学,地址老齐学习笔记第二版个人点评我是跟着的编程教室的微信公众号每天学习一课来学习的,当时的动力是据说女神也在学完习,后来也看过廖雪峰老师的教程,和老齐的没有看过。 之前看到了 汪汪汪不是我的语言 在 喵在野 的基础上写的这篇文章《Python 零基础入门资料整理(更新版)》,感觉实在是太简陋了。虽说是针对初学者的Python零基础入...
摘要:用来编写网站,必须要能够通过操作数据库,所谓操作数据库,就是通过实现对数据的连接,以及对记录字段的各种操作。交互模式下操作数据库之连接数据库操作数据库的前提是先有数据库。先建立一个数据库。 用Python来编写网站,必须要能够通过python操作数据库,所谓操作数据库,就是通过python实现对数据的连接,以及对记录、字段的各种操作。上一讲提到的那种操作方式,是看官直接通过交互模式来操...
摘要:首先,在学习之前一定会考虑一个问题版本选择对于编程零基础的人来说,选择。建议从下面课程开始教程标准库官方文档非常贴心地提供中文翻译首先需要学习的基础知识,下载安装导入库字符串处理函数使用等等。 提前说一下,这篇福利多多,别的不说,直接让你玩回最有手感的怀旧游戏,参数贴图很方便自己可以根据喜好修改哦。 本篇通过以下四块展开,提供大量资源对应。 showImg(https://segmen...
摘要:对的操作合并有容乃大的中,对的操作提到了,也就是将某个元素追加到已知的一个后边。如果的对象是数值型,则报错。依然是上一条官方解释是不是说的非常清楚明白了先到这里,下讲还继续有容乃大的 对list的操作 合并list 《有容乃大的list(1)》中,对list的操作提到了list.append(x),也就是将某个元素x 追加到已知的一个list后边。 除了将元素追加到list中,还...
摘要:学了大半年之后成功转行做前端了。包含大量其他神经网络库中的包装器和抽象,其中最值得注意的是,其中也包含一些机器学习的实用模块。它是轻量级可扩展的神经网络工具包,同时拥有友好的界面,可供机器学习的训练和预测使用。 题记:大二的时候发现人生苦短,所以信了拍神,开始学Python。学了大半年之后成功转行做前端了。来写个教程帮助大家入门Python。 Python零基础入门 零基础入门就得从最...
阅读 3551·2023-04-26 02:05
阅读 1944·2021-11-19 11:30
阅读 4159·2021-09-30 09:59
阅读 3151·2021-09-10 10:51
阅读 2576·2021-09-01 10:30
阅读 1450·2021-08-11 11:20
阅读 2577·2019-08-30 15:54
阅读 530·2019-08-30 10:49