|
题目:现有一个文本文件,其内容是每行包含一名学员的序号、姓名、身份证号、家庭地址,并且以一个空格分开,而pho文件夹下有以身份证号命名的个人照片,但其中的照片很多,也有可能某学员没有照片。请编程实现将这个文本文件中所包含的学员的照片重新命名为学员姓名,以便检出并排序。
说明:因为是测试,所以身份证号我改为序号代替。
import os
import fileinput
filenames = [ ]
def subject_2(a,b):
all_files = os.listdir('pho')
ilen = len(all_files)
for i in all_files[0:ilen]:
print('a: ', a)
print('i:', i)
if i == a:
try:
os.rename(i, b)
except FileNotFoundError:
print('文件没有找到')
break
def subject_1():
with fileinput.input(['info.txt']) as lines: #读取文本文件信息
for line in lines:
s = line.strip()
#字符串转成列表:序号、姓名、身份证号、家庭地址
b = s.split(' ')
ilen = len(b)
s1 = ''.join(b[1:2]) + '.jpg'
s2 = ''.join(b[2:3]) + '.jpg'
subject_2(s2, s1)
if __name__ == '__main__':
subject_1()
F5后显示:
a: 1001.jpg
i: 1001.jpg
文件没有找到
a: 1002.jpg
i: 1001.jpg
a: 1002.jpg
i: 1002.jpg
文件没有找到
a: 1003.jpg
i: 1001.jpg
a: 1003.jpg
i: 1002.jpg
a: 1003.jpg
i: 1003.jpg
文件没有找到
。。。。。
原因我猜是a和i不同类型,虽然看起来长的一样,但是不知道怎么改,所以求助,谢谢!
|
|