有小伙伴问这道题,所以写在这了。
话不多说,上代码和注释:
with open('hebei.txt', 'r', encoding='utf-8') as file:#打开名为 hebei.txt 的文件,使用 utf-8 编码读取
ls = [x.replace("\n","").split(',') for x in file]#将文件中每一行的末尾的换行符'\n'删除并用逗号分隔开每个元素
#最后将每行转换成列表,存储到名为 ls 的列表中
j=0
i=0
s=input()#用户输入地区或县区名,并将其存储到变量s中
if s in ls[0]:
for i in range(0,len(ls[0])):
if s==ls[0][i]:
j = i
break
#判断用户输入的地区或县区名s是否在列表ls中第一行ls[0]中,如果存在则进行以下操作:
#循环遍历列表ls中第一行ls[0]中的所有元素,如果找到与用户输入的地区或县区名s相同的元素,则将变量j赋值为该元素的下标,退出循环
ls1=[]
for i in range(1,len(ls[j])):
ls1.append(ls[j][i])
print(ls1)
#则遍历ls中第j行中除第一个元素外的所有元素,将这些元素存储到一个新的列表ls1中,并将其输出
else:
for i in range(0,len(ls)):
for j in range(0,len(ls[i])):
if s==ls[i][j]:
print(ls[i][0])
#如果用户输入的地区或县区名s不在列表ls中第一行ls[0]中,则遍历列表ls中所有行及每行中的所有元素,
#如果找到与用户输入的地区或县区名s相同的元素,则输出该元素所在行的第一个元素,即其上一级的地级区名
......这么写下来,感觉就没什么好讲的了
看注释理解吧233
Ps:不要关注我,关注就拉黑,不想被关注捏
——快乐的小马