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

笨方法学习Python笔记

2014-05-14 09:57 507 查看
习题1—30

#:用于加注释 +:加号 -:减号 /:除法

//:整除 *:乘法 %:格式化符号

字符串(string)

x = "There are %d types of people." % 10
binary = "binary"
do_not = "don't"
y = "Those who know %s and those who %s." % (binary, do_not)


输入:

print "How old are you?",
age = raw_input()


age = raw_input("How old are you? ")


在python用import或者from...import来导入相应的模块。模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中,我们就可以使用了。这类似于C语言中的include头文件,Python中我们用import导入我们需要的模块。(未总结完)

例:

from sys import argv

script, first, second, third = argv

print "The script is called:", script
print "Your first variable is:", first
print "Your second variable is:", second
print "Your third variable is:", third
运行时,输入参数,例

$ python test.py first 2nd 3rd
输出:

The script is called: test.py
Your first variable is: first
Your second variable is: 2nd
Your third variable is: 3rd


open():打开文件

txt = open(filename)


read():读文件

print txt.read()


close():关闭文件(释放资源),如果不close(),那就要等到垃圾回收时,自动释放资源。垃圾回收的时机是不确定的,也无法控制的.如果程序是一个服务,或是需要很长时间才能执行完,或者很大并发执行,就可能导致资源被耗尽,也有可能导致死锁。

txt.close()


write():重写文件

txt.write()


函数的定义:

def print_two_again(arg1, arg2):
print "arg1: %r, arg2: %r" % (arg1, arg2)
函数的执行

print_two_again("Zed","Shaw")


函数返回值:

def add(a, b):
print "ADDING %d + %d" % (a, b)
return a + b


如果(if)

例1:

if 条件判断:
执行语句
备注:条件判断以 “:” 结束,执行语句用要缩进



if 条件判断:执行语句


例2:

if 条件判断:
执行语句1
else:
执行语句2


if 条件判断:执行语句1
else:执行语句2


习题31-52

for i in range(1,5)
相当于

for i in [1, 2, 3, 4]


while循环

尽量少用while-loop,大部分时候for-loop 是更好的选择

例:

i = 0
numbers = []
while i < 6:
print "At the top i is %d" % i
numbers.append(i)
i = i + 1


习题37 各种符号未总结

字典的操作

stuff = {'name': 'Tom', 'age': 36, 'height': 170}
增加

stuff[‘sex’] = ‘male’

删除:del

del stuff['name']


函数与字典

cities['_find'] = find_city
city_found = cities['_find'](cities, state)
你要记住一个函数也可以作为一个变量,‘‘def find_city‘‘ 比如这一句创建了一个你可以在任何地方都能使用的变量。在这段代码里,我们首先把函数find_city 放到叫做cities 的字典中,并将其标记为'_find'。这和我们将州和市关联起来的代码做的事情一样,只不过我们在这里放了一个函数的名称。

原书作者记:

我学会了下面三种读代码的方法,它们适用于几乎所有的编程语言:

1. 从前向后。

2. 从后向前。

3. 逆时针方向。

Class类:



class TheThing(object):
def __init__(self):
self.number = 0
def some_function(self):
print "I got called."
def add_me_up(self, more):
self.number += more
return self.number


原书作者记:

你开始看到Python 的“疣子”了。Python 是一门比较旧的语言,其中包含很多丑陋的设计决定。为了将这些丑陋设计掩盖过去,他们就做了一些新的丑陋设计,然后告诉人们让他们习惯这些新的坏设计。‘‘class TheThing(object)‘‘ 就是其中一个例子。这里我就不展开讲了,不过你也不必操心为什么你的class 要在后面添一个(object) ,只要跟着这样做就可以了,否则将来总有一天别的Python 程序员会吼你让你这样做。后面我们再讲为什么。

你看到参数里的self 了吧?你知道它是什么东西吗?对了,它就是Python 创建的额外的一个参数,有了它你才能实现a.some_function()` 这种用法,这时它就会把前者翻译成``some_function(a) 执行下去。为什么用self 呢?因为你的函数并不知道你的这个“实例”是来自叫TheThing 或者别的名字的class。所以你只要使用一个通用的名字self 。这样你写出来的函数就会在任何情况下都能正常工作。

接下来,看到__init__ 函数了吗?这就是你为Python class 设置内部变量的方式。你可以使用. 将它们设置到self 上面。另外看到我们使用了add_me_up() 为你创建的self.number 加值。后面你可以看到我们怎样可以使用这种方法为数字加值,然后打印出来。

备注:类与类之间的传递没有总结

原作者记:

技术公司里边会编程的人多到一毛钱一打,根本得不到什么尊敬。而在生物学、医药学、政府部门、社会学、物理学、数学等行业领域从事编程的人就能得到足够的尊敬,而且你可以使用这项技能在这些领域做出令人惊异的成就。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: