《简明Python编程》核心笔记(1~5章)
2014年8月20日 《简明Python编程》核心笔记 (1~5章)
昨天和今天两天时间里。把《简明Python编程》这一本书学完了,包含书上的代码。现把核心笔记记录下来,以便以后复习。
第一章 简单介绍
Python语言是少有的一种能够称得上即简单又功能强大的编程语言。
你将惊喜地发现Python语言是多么地简单,它注重的是怎样解决这个问题而不是编程语言的语法和结构。
Python的特点:
- 简单
- 易懂
- 免费、开源
- 高层语言:高级语言
- 可移植性:能够移植在很多平台上。
包含Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2等等;
- 解释性:Python语言写的程序不须要编译成二进制代码。
在计算机内部。Python解释器把源码转换成称为字节码的中间形式。然后再把它翻译成计算机使用的机器语言并执行。
- 面向对象:Python即支持面向过程的编程也支持面向对象的编程。
- 可扩展性:假设你须要你的一段关键代码执行得更快或者希望某些算法不公开,你能够把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
- 可嵌入性:你能够把Python嵌入你的C/C++程序。从而向你的程序用户提供脚本功能。
- 丰富的库:Python标准库确实非常庞大。它能够帮助你处理各种工作,包含正則表達式、文档生成、单元測试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、password系统、GUI(图形用户界面)、Tk和其它与系统有关的操作。记住。仅仅要安装了Python。全部这些功能都是可用的。除了标准库以外。还有更多高质量库,wxPython、Twisted和Python图像库等等。
第二章 安装Python
对于Linux系统,非常可能你已经在你的系统里安装了Python。
否则,你能够通过你的发行版附带的包管理软件安装Python。对于Windows系统。安装Python就是下载安装程序然后双击它,默认运行,再配置环境变量。
第三章 最初的步骤
两种使用Python运的程序的方式——使用交互式的带提示符的解释器或使用源文件。
1、使用带提示符的解释器
- 对于Windows用户,仅仅要你正确的设置了PATH变量,你应该能够从命令行启动解释器。
或者你能够选择使用IDLE程序。IDLE是集成开发环境的缩写。
点击開始->程序->Python 2.3->IDLE(Python GUI)。Linux用户也能够使用IDLE。
- >>>是你键入Python语句的提示符。
2、使用源文件
- 启动你选择的编辑器,输入以下这段程序,然后把它保存为helloworld.py。
<span style="font-size:18px;"> <span style="color:#006600;">(源文件:code\helloworld.py)</span>
#!/usr/bin/python
# Filename : helloworld.py
print 'Hello World'</span>
- 请打开shell(Linux终端或者DOS提示符)。然后键入命令python helloworld.py。假设你使用IDLE,请使用菜单Edit->Run Script或者使用键盘快捷方式Ctrl-F5。
<span style="font-size:18px;"> <span style="color:#009900;">输出:</span>
$ python helloworld.py
Hello World </span>
3、凝视
- 使用 # 符号标示凝视,从 # 開始,直到一行结束的内容都是凝视。
4、获取帮助
- 执行help(object)——这会显示boject类的帮助。
如,help()str,则会显示str类的帮助信息。
str类用于保存你的程序使用的各种文本(字符串)。
- 按q退出帮助。
第四章 基本概念
1、字面意义上的常量
- 一个字面意义上的常量的样例是如同5、1.23、9.25e-3这种数,或者如同'This is a string'、"It'sa string!"这种字符串。
2、数
- 在Python中有4种类型的数——整数、长整数、浮点数和复数。
3、字符串
- 字符串是 字符的序列 。
- 字符串的使用:
- 使用单引號('):你能够用单引號指示字符串,就如同'Quote me on this'这样。全部的空白,即空格和表符都照原样保留。
- 使用双引號("):与单引號使用同样。
- 使用三引號('''或"""):利用三引號,你能够指示一个多行的字符串。
- 转义字符:如果你想要在一个字符串中包括一个单引號('),那么你该怎么指示这个字符串?比如,这字符串是What's your name?
。
你肯定不会用'What's your name?
'来指示它,由于Python会弄不明确这个字符串从何处開始。何处结束。
所以,你须要指明单引號而不是字符串的结尾。能够通过 转义符 来完毕这个任务。你用\'来指示单引號——注意这个反斜杠。如今你能够把字符串表示为'What\'s your name?'。注意:在一个字符串中,行末的单独一个反斜杠表示字符串在下一行继续,而不是開始一个新的行。
- 自然字符串:自然字符串通过给字符串加上前缀r或R来指定。
比如r"Newlines are indicatedby \n"。
- Unicode字符串:Unicode是书写国际文本的标准方法。
Python同意你处理Unicode文本——你仅仅须要在字符串前加上前缀u或U。比如,u"This is a Unicode string."。
- 字符串是不可变的。
- 按字面意义级连字符串
4、注意的地方:
- 在Python中没有专门的char数据类型。
- 记住。单引號和双引號字符串是全然同样的——它们没有在不论什么方面有不同。
- 一定要用自然字符串处理正則表達式。
否则会须要使用非常多的反斜杠。
5、变量
6、标识符的命名
- 标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线(‘ _’)。
- 标识符名称的其它部分能够由字母(大写或小写)、下划线(‘ _ ’)或数字(0-9)组成。
- 标识符名称是对大写和小写敏感的。比如,myname和myName不是一个标识符。
注意前者中的小写n和后者中的大写N。
7、数据类型
变量能够处理不同类型的值。称为数据类型。主要的类型是数和字符串。
8、对象
Python把在程序中用到的不论什么东西都称为
对象 。
9、编写Python程序的标准步骤:
- 打开你最喜欢的编辑器;
- 输入样例中的程序代码;
- 用凝视中给出的文件名称把它保存为一个文件。我依照惯例把全部的Python程序都以扩展名.py保存;
- 执行解释器命令python program.py或者使用IDLE执行程序。
注意一下两点:
- Python使用变量时仅仅须要给它们赋一个值。
不须要声明或定义数据类型。
- 假设你想要在一个物理行中使用多于一个逻辑行,那么你须要使用分号(;)来特别地标明这
种使用方法。分号表示一个逻辑行/语句的结束。
10、缩进
空白在Python中是重要的。
其实行首的空白是重要的。它称为缩进。在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次。从而用来决定语句的分组。
不要混合使用制表符和空格来缩进。由于这在跨越不同的平台的候。无法正常工作。强烈建议 你在每一个缩进层次使用 单个制表符 或 两个或四个空格 。选择这三种缩进风格之中的一个。
更加重要的是,选择一种风格,然后一贯地使用它。
第五章 运算符与表达式
运算符的功能是完毕某件事,它们由如+这种符号或者其它特定的keyword表示。运算符须要数据来进行运算,这种数据被称为 操作数 。
1、运算符
运算符包含+、-、*、/、%、**、//、<<、>>、>>=、<<=、&、|、^、~、<、>、==、!
=、and、or、not。
2、运算符优先级:略
3、表达式
<span style="color:#009900;">(源文件:code\expression.py)</span>
#!/usr/bin/python
# Filename: expression.py
length = 5
breadth = 2
area = length * breadth
print 'Area is', area
print 'Perimeter is', 2 * (length + breadth)
<pre name="code" class="python"><span style="color:#006600;">输出:</span>
$ python expression.py
Area is 10
Perimeter is 14
注意:Python怎样打印“美丽的”输出。
虽然我们没有在'Area is'和变量area之间指定空格。Python自己主动在那里放了一个空格。这样我们就能够得到一个清晰美丽的输出,而程序也变得更加易读。
《简明Python编程》核心笔记(1~5章)的更多相关文章
- 《简明python教程》笔记一
读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info 安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...
- 《Clojure编程》笔记 第3章 集合类与数据结构
目录 背景简述 第3章 集合类与数据结构 3.1 抽象优于实现 3.1.1 Collection 3.1.2 Sequence 3.1.3 Associative 3.1.4 Indexed 3.1. ...
- Python编程核心之makeTextFile.py和readTextFile.py
引言: 最近大半年都在学习python编程,在双十一的时候购买了<Python编程核心>,看到makeTextFile.py和readTextFile.py两个例子有点错误,所以在这里给修 ...
- Python 编程核心知识体系(REF)
Python 编程核心知识体系: https://woaielf.github.io/2017/06/13/python3-all/ https://woaielf.github.io/page2/
- 《Clojure编程》笔记 第5章 宏
目录 背景简述 第5章 宏 5.0 术语 5.1 宏到底是什么 5.1.1 宏不是什么 5.1.2 有什么是宏能做而函数不能做的 5.1.3 宏vsRuby的eval 5.2 编写你的第一个宏 5.3 ...
- 《Clojure编程》笔记 第4章 多线程和并发
目录 背景简述 第4章 多线程和并发 4.0 我的问题 4.1 术语 4.1.1 一个必须要先确定的思考基础 4.2 计算在时间和空间内的转换 4.2.1 delay 4.2.2 future 4.2 ...
- 《Clojure编程》笔记 第2章 函数式编程
目录 背景简述 第2章 函数式编程 背景简述 本人是一个自学一年Java的小菜鸡,理论上跟大多数新手的水平差不多,但我入职的新公司是要求转Clojure语言的.坊间传闻:通常情况下,最好是有一定Jav ...
- 《Clojure编程》笔记 第1章 进入Clojure仙境
目录 背景简述 第1章 进入Clojure仙境 1.1 基础概念 1.2 常用的一些符号 背景简述 本人是一个自学一年Java的小菜鸡,理论上跟大多数新手的水平差不多,但我入职的新公司是要求转Cloj ...
- Python编程核心内容之一——Function(函数)
Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ 截至上篇随笔<Python数据结构之四--set(集合)>,Python基础知识也介绍好了.接下来准备干 ...
随机推荐
- drawable的文件名大写
drawable的文件名大写导致的R文件消失!!!1
- 卸载Mysql connect 6.9.9
我们在卸载MySQL的时候,会发现有一个名为“Connector Net X.X.X”(如:Connector Net 6.9.9)软件总是卸载不成功,下面我们来看看解决方法:1. 在C盘的目录下,有 ...
- 大数据~说说Hadoop
Hadoop是一个由Apache基金会所开发的分布式系统基础架构. 用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储. Hadoop实现了一个分布式文件系 ...
- SV creation order
SystemVerilog Instance Worlds When generating an UVM testbench and in particular the DUT - testbench ...
- html5——伸缩比例案例(携程)
1.有图片的盒子,最好是父盒子设置伸缩属性,a标签设置伸缩比例1,img标签宽度100% 2.不要见到父盒子就设置伸缩属性,而是根据子盒子是否占据一行,若是子盒子占据一行,那么只要给子盒子设置伸缩比例 ...
- C#——接口的意义以及与抽象类的区别
接口的意义是什么呢?接口与抽象类又有什么区别?什么情况选择用接口?什么情况选择用抽象类? 接口的意义: 1.实际开发中的约束作用,继承接口的类必须实现接口规定的方法,方便多人开发中的协同,避免随意性. ...
- [Windows Server 2012] 安装SQL Server 2012
★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频.★ 本节我们将带领大家:安装SQL S ...
- @RequestMapping参数value和params的区别
value的值可以是一个url地址的形式或者正则表达式或者rest风格的形式,而params正如其名是参数,访问的时候params的值只能作为参数,不能作为访问的地址,请看下例> value的使 ...
- Android 动态设置 layout_centerInParent
RelativeLayout.LayoutParams rp = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutPa ...
- js的StringBuffer类
function StringBuffer(str){ var arr = []; str = str || ""; arr.push(str); this.append = fu ...