简明Python教程(A Byte of Python)

如果你使用的是Linux/BSD shell,那么按Ctrl+d退出提示符,如果是在windows操作系统下,那么按Ctrl+z再按Enter。

如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自然字符串,自然字符串通过给字符串加上r或者R前缀来指定。例如r’New lines are in dicated by\n’

如果你想要在一个物理行中使用多于一个的逻辑行,那么你需要使用(;)来特别标明这种用法。分号表示一个逻辑行/语句的结束。

python中的urllib2,这是python中一个用来获取网络资源的模块。我们平常上网,在浏览器地址栏中输入一个网址,浏览器根据这个网址拿到一些内容,然后展现在页面上,这大约就是浏览网页的过程。类似的,urllib2会跟据你提供的网址,请求对应的内容。
先看python中的urllib2,这是python中一个用来获取网络资源的模块。我们平常上网,在浏览器中输入一个网址,浏览器根据这个网址拿到一些内容,然后展示在网页上,这大约就是浏览网页的过程。类似地,urllib2会根据你提供的网址,请求对应的内容。
import urllib2
web = urllib2.urlopen(‘http://www.baidu.com‘)
content = web.read()
print content
我们引入urllib2的模块,用其中的urlopen方法打开百度,然后用read方法把其中的内容读取到一个变量中并输出。运行后,你会看到控制台中输出了一堆看不懂的代码文字。这段代码中有html,有css,还有javascript。我们在浏览器中看到的网页大部分就是由这些代码所组成。如果你把content保存到一个以“.html”结尾的文件中(保存文件的方法前面已经说过很多),再打开这个html文件,就会看到“百度的首页”,只是这个首页在你的电脑上,所以你无法进行搜索。

city.py这个文件里有一个叫做city的字典,它里面的key是城市的名称,value是对应的城市代码。不用把它copy到自己的程序中,只要放在和你的代码同一路径下,用
from city import city
就可以引入city这个字典。这里相当于用了一个自定义的模块,前一个“city”是模块名,也就是py文件的名称,后一个“city”是模块中变量的名称。

我们可以使用in操作符来检验一个键/值对是否存在,或者使用dict类的has_key方法。你可以使用help(dict)来查看完整方法列表。

注意os.sep变量的用法——这会根据你的操作系统给出目录分隔符,使我们的程序具有移植性。

init 方法在类的一个对象被建立时,马上运行,这个方法可以用来对你的对象做一些你希望的初始化。

可以使用多种多样的str类。例如,你能够使用rjust方法来得到一个按一定宽度左右对齐的字符串。

Python提供一个标准的模块,称为pickle。使用它你可以在一个文件中储存任何Python对象,之后你又可以把它完整无缺地取出来。这被称为持久性储存对象。
还有另外一个模块称为cPickle,它的功能和pickle完全相同,只不过它是用C语言编写的,因此要快很多。(比pickle快1000倍)。

sys.version字符串给你提供安装的Python版本信息;
sys.version_info元组则提供一个更简单对的方法来使你的程序具备Python版本要求的基本功能。

对于有经验的程序员,sys模块最感兴趣的是:
sys.stdin:标准输入
sys.stdout:标准输出
sys.stderr:标准错误流

os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是极为重要的。即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行。一个例子就是使用os.sep可以取代操作系统特定的路径分割符。

当要使函数接收元组或字典形式的参数的时候,有一种特殊的方法,它分别使用和* 前缀。这种方法在函数需要获取可变数量的参数的时候特别有用。
def powersum(power,*args)
由于在args变量前有前缀,所有多余的函数参数都会作为一个元组存储在args中,如果使用的是* 前缀,多余的参数则会被认为是一个字典的键\值对。

lambda语句被用来创建新的函数对象,并且在运行的时返回它们。
def make_repeater(n):
return lambda s:s*n

twice = make_repeater(2)

print twice(‘word’)
print twice(5)

exec语句用来执行存储在字符串或者文件中的Python语句。
exec ‘print “Hello World” ‘

eval语句用来计算存储在字符串中的有效Python语句。
eval(‘2*3’)

assert语句用来声明某个条件是真的。例如如果你非常确信你使用的列表中至少有一个元素,而你想要检验这一点,并且在它非真的时候引发一个错误,那么assert语句是应用在这种情形下的理想语句。当assert语句失败时,会引发一个AssertionError。

repr函数用来取得对象的规范字符串表示。反引号(也称为转换符)可以完成同样的功能。注意:大多数时候有eval(repr(object))==object
基本上,repr函数和反引号用来获取对象的可打印的表示形式。你可以通过定义类的repr 方法来控制你的对象在被repr函数调用的时候返回的内容。

如果你已经完全读完了这本书并且也实践着编写了很多程序,呢么你一定已经能够非常熟练自如地使用Python了。你可能也已经编写了一些Python程序来尝试练习各种Python技能和特性。如果你还没有那样做的话,那么你一定要快点去实践。现在的问题是“接下来学习什么?”

我会建议你先解决这样一个问题:创建你自己的命令行地址簿程序。你可以添加、修改、删除和搜索你的联系人(朋友、家人和同事等等)以及他们的信息(诸如电子邮件/或电话号码)。这些详细信息应该被保存下来以便以后提取。

1.图形软件
使用Python的GUI库——你需要使用这些库用Python语言创建你自己的图形程序。
有许多可供选择的Python的GUI:
PyQt、PyGTK、wxPython、TkInter

2.Python标准库是一个丰富的库,在大多数时候,你可以在这个库中找到你所需要的东西。这被称为Python的“功能齐全”理念。我强烈建议你在开始开发大型Python程序之前浏览一下Python标准文档。

Jython是用Java语言实现的Python解释器。这意味着你可以用Python语言编写程序而同时使用Java库!Jython是一个稳定成熟的软件。如果你是一个Java程序员,我强烈建议你尝试一下Jython。
IronPython是用C#语言实现的Python解释器,可以运行在.NET、Mono和DotGNU平台上。这意味着你可以用Python语言编写程序而使用.NET库以及其他由这三种平台提供的库!IronPython还只是一个前期alpha测试软件,现在还只适合用来进行测试。JimHugunin、IronPython的开发者,已经加入了微软公司,将在将来全力开发一个完整版本的IronPython。
Lython是Python语言的Lisp前段。它类似于普通的额Lisp云,会被直接编译为Python字节码,这意味着它能与我们普通的Python代码协同工作。
2017.8.27 21:15

this is a book about python. it was written by Swaroop C H.its name is "a byte of python". Table of Contents Preface Who This Book Is For History Lesson Status of the book Official Website License Terms Using the interpreter prompt Choosing an Editor Using a Source File Output How It Works Executable Python programs Getting Help Summary 4. The Basics Literal Constants Numbers Strings Variables Identifier Naming Data Types Objects Output How It Works Logical and Physical Lines Indentation Summary 5. Operators and Expressions Introduction Operators Operator Precedence Order of Evaluation Associativity Expressions Using Expressions Summary 6. Control Flow Introduction The if statement ivUsing the if statement How It Works The while statement Using the while statement The for loop Using the for statement Using the break statement The continue statement Using the continue statement Summary 7. Functions Introduction Defining a Function Function Parameters Using Function Parameters Local Variables Using Local Variables Using the global statement Default Argument Values Using Default Argument Values Keyword Arguments Using Keyword Arguments The return statement Using the literal statement DocStrings Using DocStrings Summary 8. Modules Introduction Using the sys module Byte-compiled .pyc files The from..import statement A module's __name__ Using a module's __name__ Making your own Modules Creating your own Modules from..import The dir() function Using the dir function Summary 9. Data Structures Introduction List Quick introduction to Objects and Classes Using Lists Tuple Using Tuples Tuples and the print statement Dictionary Using Dictionaries Sequences Using Sequences References Objects and References More about Strings String Methods Summary 10. Problem Solving - Writing a Python Script The Problem The Solution First Version Second Version Third Version Fourth Version More Refinements The Software Development Process Summary 11. Object-Oriented Programming Introduction The self Classes Creating a Class object Methods Using Object Methds The __init__ method Using the __init__ method Class and Object Variables Using Class and Object Variables Inheritance Using Inheritance Summary 12. Input/Output Files Using file Pickle Pickling and Unpickling Summary 13. Exceptions Errors Try..Except Handling Exceptions Raising Exceptions How To Raise Exceptions Try..Finally Using Finally Summary 14. The Python Standard Library Introduction The sys module Command Line Arguments More sys The os module Summary 15. More Python Special Methods Single Statement Blocks List Comprehension Using List Comprehensions Receiving Tuples and Lists in Functions Lambda Forms Using Lambda Forms The exec and eval statements The assert statement The repr function Summary 16. What Next? Graphical Software Summary of GUI Tools Explore More Summary A. Free/Libré and Open Source Software (FLOSS) B. About Colophon About the Author C. Revision History Timestamp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值