1.python读取目录下所有文件的排序方式与windows不同 如"k-1.jpg"“k-2.jpg”“k-11.jpg"排序结果为"k-1.jpg”“k-11.jpg”“k-2.jpg”
处理方法:截取出排序依据内容(如数字等),按顺序复制到新的list中
2.python下的分段文件读写 有时候会出现无法写入的情况 一般对每一段重复进行打开文件写入文件关闭文件的操作可解决
3.tcp socket通信时,文件传输格式为二进制流,一般先将内容转化为十六进制 然后用struct.pack()函数对其进行打包为二进制流
4.socket通信时 最好不要用while True循环始终占用客户端 否则进行其他操作(如写入文件)时容易程序崩溃
针对1的代码实现
import fnmatch
import os
name_list = fnmatch.filter(os.listdir("E:\\testdir"), '*.pcm')
file_list=[]
for i in range(len(name_list)):
index_begin = name_list[i].rfind('_')
index_end = name_list[i].rfind('.')
file_num = name_list[i][index_begin+1:index_end]
if int(file_num) <10 and int(file_num)>1:
file_list.insert(int(file_num)-1,name_list[i])
else:
file_list.append(name_list[i])
for i in range(len(file_list)):
print(file_list[i])