Python实现高校名称查询

查询高校名

类型:文件处理

描述

#以下代码的作用是:
#打开文件,创建一个名为Uname的对象,Uname.readlines()的作用是将文件内容逐行读取到列表中
#文件的每行为一个以‘\n’结尾的字符串,做为列表ls的一个元素
#列表ls的第一个元素ls[0]的内容是:'序号,学校名称,学校标识码,主管部门,所在地,办学层次,备注\n'

with open('university.csv','r',encoding='utf-8') as Uname:
    ls = Uname.readlines()

#print(ls)
#输出:['序号,学校名称,学校标识码,主管部门,所在地,办学层次,备注\n', 
#        '1,北京大学,4111010001,教育部,北京市,本科,\n',
#        '2,中国人民大学,4111010002,教育部,北京市,本科,\n',
#        '3,清华大学,4111010003,教育部,北京市,本科,\n',
#        ……
#      ]

附件'university.csv'中包含北京主要高校的序号、学校名称、学校标识码、主管部门、所在地、办学层次、备注等信息,以逗号分隔符。
参考提示代码,将文件内容逐行读取到列表中,根据用户输入一个关键字,查询学校名称包含用户输入关键字的学校名并输出。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

输入格式

输入一个关键字‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

输出格式

包含关键字的全部学校名

示例

输入:

中央	

输出:

中央财经大学
中央音乐学院
中央美术学院
中央戏剧学院
中央民族大学

参考答案

def read_csv_to_lst(filename):
	"""接收CSV文件名为参数,读取文件内容到二维列表,每行数据根据逗号切分为子列表,返回二维列表。"""
	with open(filename, 'r', encoding='utf-8') as f:
		university_lst = [line.strip().split(',') for line in f]
	return university_lst


def query_name(word, university_lst):
	"""接收一个字符串和列表名为参数,从列表中查询学校名包含参数字符串的学校名,以列表形式返回。"""
	uni_name_lst = []
	for university in university_lst:
		if word in university[1]:
			uni_name_lst.append(university[1])
	return uni_name_lst


if __name__ == '__main__':
	file = 'university.csv'
	uni_lst = read_csv_to_lst(file)    # 获得高校信息二维列表
	key_word = input()                 # 输入查询关键字
	ls = query_name(key_word, uni_lst) # 查询包含关键的校名,得到列表
	print(*ls,sep='\n')                # 解包输出列表中的元素,用换行符做分隔 符,实现换行输出的效果

作者:m0_62488776

物联沃分享整理
物联沃-IOTWORD物联网 » Python实现高校名称查询

发表回复