首页 > 解决方案 > 创建一个函数以在数据集中按名称搜索 Composer

问题描述

伙计们只是有点坚持我的代码..如果有人可以帮助我,我会非常感激

Q1.创建一个函数以在数据集中按名称搜索 Composer。由于 Composer 可能存在多次,因此该函数应返回与 Composer 相关的适当“BL 记录 ID”列表。

import csv

def searchname(userdata):
  with open('bl_printed_music_500.csv', newline='', encoding="utf-8-sig") as csvfile:
      reader = csv.DictReader(csvfile)
      found = False
      for row in reader:
           if row['Composer']==userdata:
             found = True
 return list()
 print(result)

uinput = input('Search for Composer: ')
searchname(uinput)

标签: python

解决方案


只需将“n”更改为您可以找到作曲家姓名的列。您可能还需要规范化大写/非大写字母,因为您正在处理用户输入......

另外,我只是输出整行数据,如果文件有太多数据,您可以专门将您想要的内容添加到列表中。

def searchname(userdata):
    list = []
    for line in open('bl_printed_music_500.csv', 'r'):
      row = line.split(',')
      if row[n] == userdata:
          list.append(line)
    return(list)

uinput = input('Search for Composer: ')
print(searchname(uinput))

推荐阅读