学习《Python语言入门》第四章 函数
怎么找不到第三章的学习笔记了?丢了?
Python的函数没有什么的,可以说,看了《简明Python教程》后,就会写了。
这一章提供的内容也比《简明Python教程》要多一些。比较复杂的是作用域规则,不知道是书没讲清楚还是翻译得不好,比较难懂。钱能的《C++程序教程》关于函数的作用域规则讲得要清楚些,有C++的知识在里面,理解Python的函数作用域规则,好懂很多。似乎两者也没有什么区别。
函数参数方面有些不一样,C++的值传递、指针传递、引用传递分得很清楚。而Python的参数传递有些不能改变参数的值,有些是可以的。需要小心的对付。还有关键字的参数、可变参数,都是C++没有的内容。Python的函数可以不用return,但是后面的设计概念还是建议要用return返回。
lambda、map、apply这些工具很方便,有脚本的影子在里面。
最让我惊奇的是“函数是对象: 非直接调用”这一小节。Python中函数的灵活是C++所不可比的。Python的函数就像一小团粘土一样,可以揉过来搓过去的使用。
“函数常见的问题”确实让我这个新手迷糊了,暂时先不提它们吧。而且这一节里面的例子似乎有问题,有一些书上说不能运行,但在我的Python中却能运行;另有一些说能运行,但我运行出错。是不是Python的版本更迭改变了一些东西?这一节的内容还适用吗?
相关文档:
源代码下载:下载地址在这里
# 035
class Person:
population = 0 #这个变量是属于整个类的
def __init__(self, name):
self.name = name
print '初始化 %s' % self.name
Person.population += 1
# end of def
def __del__(self):
print '%s says bye.' % self. ......
源代码下载:下载地址在这里
# 037
fileName = ''
while 1:
fileName = raw_input("Input a file name:")
if fileName == 'q':
break
try:
f = file(fileName, 'r')
print 'Opened a file.'
except:
print 'There is no file named', fileName
......
# 040
import time
try:
f = file('040_Finally.py')
while True:
line = f.readline()
if len(line) == 0:
break
time.sleep(0.33)
print line,
# end of while
finally:
f.close()
print 'Closed the file.'
# end of try
output:
> ......
今天做ftp的界面,做的相当郁闷,弄得心情及其不爽,在网上搜到死都不知道该怎么办,打算明天先看看C++
的是怎么弄的再说。不过,现在我想写一下关于socket的编程。
先写一个时间服务器吧,他监听端口,并且会返回 服务器的时间
server.py
#!/usr/bin/python
# Copyright (c) angelipin (angelipin@126.com)
import ......
1. 事件驱动
一个事件及其回调的例子是鼠标移动。我们假设鼠标指针停在您GUI 程序的某处。如果鼠标被移到了程序的别处,一定是有什么东西引起了屏幕上指针的移动,从而表现这种位置的转移。系统必须处理这些鼠标移动事件才能展现(并实现)鼠标在窗口上的移动。一旦您释放了鼠标,就不再会有事件需要处 ......