您的位置:首页 > 编程语言 > Python开发

[转载]看完《python简明教程》笔记及第一个python程序

2011-06-25 18:09 411 查看
主要是摘抄了一些书上需要注意的地方:

1. Python 是一门解释性语言。
在计算机内部, Python 解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。
2. 版本 2.3 与 3.2 区别?比如 3.2 中查看版本号? 2.3 中 python -V
3. // 符号表示取整数
4. ** 符号幂运算
5. 没有 switch 语句,可用 if .. elif..else.. 代替,或者字典代替
6. True 、 False 写法
7. While 写法,最后可以跟一个 else 从句
8. for 写法,记住,
for..in
循环对于任何序列都适用, for i in range(1,5) 与 js 写法类似,最后也可以呆一个 else 从句
9. 默认地, range 的步长为 1 。如果我们为 range 提供第三个数,那么它将成为步长。例如, range(1,5,2) 给出 [1,3] 。记住, range 向上延伸到第二个数,即它 包含第二个数 .
10. global 定义全局变量
11. 只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参。
这是因为赋给形参的值是根据位置而赋值的。例如, def func(a, b=5) 是有效的,但是 def func(a=5, b) 是 无效 的。
12. 关键参数
13.
注意,没有返回值的
return
语句等价于
returnNone

14.
pass
语句在Python 中表示一个空的语句块

15. 文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,从第三行开始是详细的描述。 强烈建议 你在你的函数中使用文档字符串时遵循这个惯例。

16.
print(printMax.__doc__)
注意是双下划线或print(help(printMax))

17. 记住,脚本的名称总是
sys.argv
列表的第一个参数。 Java 中第一参数就是外部的参数。
18.
列表
shoplist = ['apple', 'mango', 'carrot', 'banana']

19.
元组
zoo = ('wolf', 'elephant', 'penguin')

20. 含有 0 个或 1 个项目的元组。 一个空的元组由一对空的圆括号组成,如 myempty = () 。然而,含有单个元素的元组就不那么简单了。你必须在第一个(唯一一个)项目后跟一个逗号,这样 Python 才能区分元组和表达式中一个带圆括号的对象。即如果你想要的是一个包含项目 2 的元组的时候,你应该指明 singleton = (2 , ) 。而列表不要加逗号。
21. 字典,类似 map
22. 序列切片操作符是序列名后跟一个方括号,方括号中有一对可选的数字,并用冒号分割。序列的神奇之处在于你可以用相同的方法访问元组、列表和字符串。
23. mylist = shoplist # mylist is just another name pointing to the same object!
24. mylist = shoplist[:] # make a copy by doing a full slice 。这是复制,而 23 属于引用,参考。
25. 文件名可以和类名不同,与 java 不一样。
26. 注意
__del__
方法与 destructor 的概念类似。按照对象创建先后倒着销毁对象,自动调用的。
27. 继承方式写法: class Student(SchoolMember): ,也没了 super 关键字
28. 对文件读写: f = open('D:/poem.txt','w')
29. 使用 pickle 存储时候,需要 f = open(shoplistfile,'wb') ,加个 ’b’ ,表示 binary
30. 函数中接收元组或字典:由于在 args 变量前有 * 前缀,所有多余的函数参数都会作为一个元组存储在 args 中。如果使用的是 ** 前缀,多余的参数则会被认为是一个字典的键 / 值对。
31. lambda 语句被用来创建新的函数对象,并且在运行时返回它们。
32.
exec
语句用来执行储存在字符串或文件中的 Python 语句。
33.
eval
语句用来计算存储在字符串中的有效 Python 表达式。

看完书后,写的第一个python程序(通讯录),功能不完善:
用户信息类:
'''''
Created on 2011-6-16
@author: alen
'''
class Person(object):
'''''
use it to write person'info
'''

def __init__(self,name,email,phone):
self.name = name
self.email = email
self.phone = phone

管理类:
'''''
Created on 2011-6-16
@author: alen
'''
import PersonInfo
info = {}
def addPerson(Person):
info[Person.name] = Person

if __name__ == '__main__':
print('-------------------Welcome------------------------------')
print('1.add user')
print('2.delete user')
print('3.revise user')
print('4.search user')
print('--------------------------------------------------------')
print('please select your choice:')
number = int(input())
if number == 1:
print('please input your name:')
name = str(input())
print('please input your phone:')
phone = int(input())
print('please input your email:')
email = str(input())
p = PersonInfo.Person(name,email,phone)
addPerson(p)
elif number == 2:
pass
elif number == 3:
pass
elif number == 4:
print('please input your name:')
name = str(input())
if name in info:
print('you search is %s:' % info[name] )
print(info)


运行管理类即可,这只是学习python一个"开始的结束"~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: