Python学习笔记 模块;文件与文本处理
1.Python中时间函数有几种不同的表示方法。一种是基于数字的表示方法,另外一种是用一系列值来表示,第三种是用ASCII码字符串的可读形式来表示的元组。 time()函数返回的是从某一时间点算起的秒数,该数值是一个浮点数。根据操作系统的不同,这个时间点也不同。通过求localtime(0)的值可以找到系统的该时间点。 localtime(t)返回一个具有9个元素的元组。 ctime(t)返回一个表示时间值的ASCII码的字符串,t作为浮点型数值传递给函数。 >>> import time
>>> print time.ctime(0)
Thu Jan 01 08:00:00 1970 >>> print time.localtime(0)
(1970, 1, 1, 8, 0, 0, 3, 1, 0)
>>> 2.Python中只允许通过值来传递变量,但在其他语言中,允许通过引用来传递变量。在这种情况下,可以在函数内部改变参数值。而且改变将对调用程序产生影响。 3.处理二进制文件:二进制文件中,字符不是用可识别的行结束符按行来组织的。这样,对二进制文件进行处理的方式,跟对文本文件进行处理的方式有所不同。首先,如果要对二进制文件进行操作的话,必须在open函数中的打开模式参数中附加一个字母"b”来加以指定。 >>> b_out=open("D:\\outbin.dat","wb") 若要写入二进制数据,需要用struct模块包装数据,可参考python库中有关struct的所有可能的操作。 >>> b_out.write(struct.pack('4i',1,2,3,4))
>>> b_out.close() 读二进制文件时需要指定读出数据的数量,可以在read()方法中使用可选择的长度变量来指定。 >>> b=open("D:\\outbin.dat","rb")
>>> bytes=b.read(4) 在打印这些字节之前,需将它们转换成可打印的形式。ord()函数可以执行该项执行:
>>> for c in bytes:print ord(c) 1
0
0
0 问题:为什么输出的不是1 2 3 4? 4.如果要在Python中创建一个COPY命令,可以以写模式另外打开一个文件,然后将原文件内容逐行写入新打开的文件中,而不是将文件内容打印出来。 #创建与copy menu.txt menu.bak等效的命令 #分别以读模式和写模式打开文件 inp=open(“D:\\menu.txt”,"r”) outp=open(“menu.bak”,"w”) #逐行读文件直到结束 #将每行拷贝到输出文件 line=inp.readline() while line: outp.write(line)
相关文档:
And last here is the overload operators example:
# map() takes two (or more) arguments, a function and a list to apply the function to
# lambda can be put anywhere a function is expected
# map() calls lambada for every element in the self list
# since Vector has overloaded __getitem__ and __len_ ......
#堆排序
def Heapify(mylist, start, end):
left = 0
right = 0
maxv = 0
left = start * 2
right = start * 2 + 1
while left <= end:
maxv = left
if right <= end:
if mylist[left] < mylist[right]:
maxv = right
......
情景一:
在文件夹里有六十多个RM格式的视频文件,我现在需要把它们的文件名都提取出来,并去掉文件的扩展名,以便放到需要的网页里。
应该有什么软件可以完成这个简单的要求,可是一时间到哪里去找这 样一个符合要求的软件呢?总不能手工完成把。在Linux上用强大的shell脚本应该也可以完成,可是使用Windows的朋友呢?其 ......
#!/usr/bin/env python
#coding=utf-8
def buildConnectionString(params):
return ":".join(["%s=%s" %(k, v) for k, v in params.items()])
if __name__ == "__main__":
myParams = {"server":"mpilgrim", \
&nbs ......
在Windows里搭建Python的GTK+环境还是比较麻烦的有以下几个注意事项
1、PyGTK网站上下的包,可能没有Glade类(Lib\site-packages\gtk-2.0\gtk目录下没有glade.pyd),如果没有这个类你就无法在程序里导入Glade工具创建的xml,手写界面还是挺麻烦的。
2、GTK网站上的GTK包,没有包括Glade的DLL文件,还是无法读入Glade的xm ......