输入课程名称关键字模糊查找所学课程 python课程储存在文件中

时间: 2023-09-11 20:04:50 浏览: 16
### 回答1: 好的,你可以使用以下代码实现: ```python import os def search_courses(keyword): courses = [] with open('courses.txt', 'r') as f: for line in f: if keyword in line: courses.append(line.strip()) return courses keyword = input('请输入课程名称关键字:') search_result = search_courses(keyword) if search_result: print(f'找到以下与 "{keyword}" 相关的课程:') for course in search_result: print(course) else: print(f'没有找到与 "{keyword}" 相关的课程。') ``` 其中,我们假设课程名称列表存储在名为 `courses.txt` 的文件中,每行为一个课程名称。`search_courses` 函数会读取文件中的每一行,检查关键字是否出现在该行中,如果是,则把该行添加到课程列表中。最终,函数返回课程列表。 在主程序中,我们首先要求用户输入关键字,然后调用 `search_courses` 函数查找与关键字相关的课程。如果找到了课程,则逐个打印课程名称;否则,打印“没有找到相关课程”的提示信息。 ### 回答2: 要实现课程名称关键字模糊查找所学课程,需要按照以下步骤操作: 1. 首先,我们需要将所学课程的信息存储在一个文件中。可以选择将每个课程的名称、介绍等信息以固定格式存储在一行中,每个课程信息占据一行。 2. 接下来,我们需要读取文件中的数据。使用文件读取函数,例如open()函数打开文件并使用readlines()方法读取文件中的每一行数据。将读取的数据存储在一个列表中,便于后续操作。 3. 用户需要输入一个课程名称关键字进行模糊查找。我们可以使用input()函数获取用户输入的关键字,并将其存储在一个变量中。 4. 然后,我们需要遍历存储课程信息的列表,对每个课程的名称进行模糊比较。可以使用字符串的in关键字判断关键字是否出现在课程名称中,若存在则将该课程信息打印输出。 5. 最后,将符合关键字模糊查找条件的课程信息进行输出展示。可以使用print()函数将课程信息输出到控制台。 总结:以上就是使用Python实现输入课程名称关键字模糊查找所学课程的大致步骤。通过读取存储在文件中的课程信息,并与用户输入的关键字进行比较,即可实现课程名称的模糊查找功能。 ### 回答3: 要实现课程名称关键字模糊查找,可以将python课程储存在文件中,并按照一定的格式进行存储。以下是一个可能的实现方案。 首先,创建一个名为"courses.txt"的文本文件,用于存储所有的课程信息。每行表示一个课程,数据之间使用逗号作为分隔符。示例数据如下: ``` Python基础课程,5,100,张三 Python高级课程,10,200,李四 数据分析与可视化课程,8,150,王五 ``` 其中,第一个数据表示课程名称,第二个数据表示课程学时,第三个数据表示课程费用,第四个数据表示教师姓名。 接下来,编写代码实现关键字模糊查找。例如,输入关键字 "Python",程序会遍历文件中的每一行,判断关键字是否出现在课程名称中,如果出现,则将该课程信息打印出来。 ```python keyword = input("请输入课程名称关键字:") with open("courses.txt", "r") as file: for line in file: course_info = line.strip().split(",") course_name = course_info[0] if keyword in course_name: print("课程名称:", course_name) print("课程学时:", course_info[1]) print("课程费用:", course_info[2]) print("教师姓名:", course_info[3]) print("------------------") ``` 以上代码会依次读取文件中的每一行,并通过split()方法将每行数据拆分成列表。然后,判断关键字是否在课程名称中,如果是,则打印出该课程的相关信息。 这样,就实现了输入课程名称关键字模糊查找所学课程的功能。如果有多个匹配的课程,程序会将它们都打印出来。

相关推荐

### 回答1: Python是一种非常流行的编程语言,可以用它编写各种不同类型的程序。在这篇文章中,我们将介绍如何使用Python实现一个功能:输入关键字进行百度搜索并爬取搜索结果存放在csv中。 要完成这个任务,我们需要利用Python的两个主要库来实现: 1. requests:这个库用来向百度搜索发出请求,获取搜索结果的HTML代码。 2. BeautifulSoup:这个库用来解析HTML代码,抓取其中的关键信息。 首先,让我们先导入这两个库,并定义一个函数来进行搜索,爬取结果,并将结果保存在csv文件中: import requests from bs4 import BeautifulSoup import csv def search_and_scrape(keyword): url = 'https://www.baidu.com/s' params = {'wd': keyword} headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'} result_file = open('search_result.csv', 'a', newline='') write_csv = csv.writer(result_file) # 发送请求 response = requests.get(url, params=params, headers=headers) soup = BeautifulSoup(response.text, 'lxml') result_divs = soup.find_all('div', {'class': 'result'}) # 解析HTML代码,获取搜索结果,并写入CSV文件 for result in result_divs: title = result.h3.get_text() link = result.h3.a['href'] snippet = result.find('div', {'class': 'c-abstract'}).get_text() write_csv.writerow([title, link, snippet]) result_file.close() 这个函数的参数是我们希望搜索的关键字,在这个例子中我们把它叫做“keyword”。函数使用了requests发送了一个GET请求,使用了传入的参数查询了百度,并获取了搜索结果的HTML代码。接着使用BeautifulSoup包解析代码,找到搜索结果的每一条数据,并将数据写入CSV文件。 我们可以在Python的命令行中使用这个函数,执行以下代码: search_and_scrape('Python') 这行代码将搜索“Python”关键字,并把搜索结果写入search_results.csv文件中。 这里我们使用了CSV(逗号分隔值)格式来存储数据,这个格式常用于电子表格软件或数据库的导入和导出。在这个例子中,我们只需要将数据写入CSV文件。 在这篇文章中,我们学习了如何使用Python实现一个功能:输入关键字进行百度搜索并爬取搜索结果存放在csv中。我们使用了两个Python库:requests和BeautifulSoup,并编写了一个函数来实现这个功能。这个例子可以扩展到各种搜索引擎和数据格式中。 ### 回答2: 通过使用Python编程语言,我们可以实现输入关键字进行百度搜索并爬取搜索结果,并将这些结果存储在CSV格式文件中。 首先,我们需要使用Python的Requests库向百度搜索页面发送HTTP请求,以获取关键字的搜索结果页面。接下来,我们可以使用BeautifulSoup库解析HTML页面并提取搜索结果的相关信息,例如标题、URL和描述。最后,我们可以使用Python的Pandas库创建一个CSV文件,并将爬取到的搜索结果写入该文件以进行存储。 整个过程的示例代码如下: python import requests from bs4 import BeautifulSoup import pandas as pd keyword = input("请输入搜索关键字:") url = f"https://www.baidu.com/s?wd={keyword}" headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36"} response = requests.get(url, headers=headers) response.encoding = 'utf-8' soup = BeautifulSoup(response.text, "html.parser") results = [] for result in soup.find_all('div', {'class': 'result'}): title = result.find('h3').text url = result.find('a')['href'] desc = result.find('div', {'class': 'c-abstract'}).text results.append({'title': title, 'url': url, 'desc': desc}) df = pd.DataFrame(results) df.to_csv(f"{keyword}.csv", encoding='utf-8', index=False) print("搜索结果已保存至CSV文件中。") 该程序会要求用户输入搜索关键字。一旦输入关键字并按下回车键,在百度搜索页面进行HTTP请求。之后,程序会解析搜索结果页面并提取每个搜索结果的标题、URL和描述。最后,结果将保存在CSV文件中,文件名将基于搜索关键字。 使用该程序,您可以快速创建一个有用的工具,以便在日常搜索任务(例如市场研究或竞争分析)中自动化搜索并存储结果。 ### 回答3: 对于这个任务,我们需要用到以下几个模块: 1. requests:用于发送HTTP请求,以获取页面内容; 2. BeautifulSoup:用于解析HTML页面,提取需要的信息; 3. csv:用于操作CSV文件,以存储爬取到的数据。 首先,我们需要向用户获取输入的关键字,并构造百度搜索URL。然后发送HTTP请求,获取搜索结果页面的HTML。如下所示: import requests from bs4 import BeautifulSoup # 获取用户输入的关键字 keyword = input('请输入关键字:') # 构造百度搜索URL url = 'https://www.baidu.com/s?wd=' + keyword # 发送HTTP请求,获取搜索结果页面HTML response = requests.get(url) html = response.content 接下来,我们需要解析HTML页面,提取搜索结果信息。在百度搜索结果页面,每个搜索结果都被包含在一个标签中,其class属性为result c-container。我们可以使用BeautifulSoup对HTML进行解析,提取需要的信息。如下所示: # 定义一个空列表,用于存放搜索结果 results = [] # 解析HTML,提取搜索结果信息 soup = BeautifulSoup(html, 'html.parser') divs = soup.find_all('div', {'class': 'result c-container'}) for div in divs: title = div.find('h3').get_text().strip() link = div.find('a').get('href') abstract = div.find('div', {'class': 'c-abstract'}).get_text().strip() # 将搜索结果存放在字典中,然后添加到列表中 result = {'title': title, 'link': link, 'abstract': abstract} results.append(result) 最后,我们需要使用csv模块,将爬取到的搜索结果存储到CSV文件中。如下所示: import csv # 将搜索结果写入CSV文件 with open('results.csv', 'w', encoding='utf-8', newline='') as f: writer = csv.writer(f) # 写入表头 writer.writerow(['标题', '链接', '摘要']) # 写入搜索结果 for result in results: writer.writerow([result['title'], result['link'], result['abstract']]) 完整代码如下所示: import requests from bs4 import BeautifulSoup import csv # 获取用户输入的关键字 keyword = input('请输入关键字:') # 构造百度搜索URL url = 'https://www.baidu.com/s?wd=' + keyword # 发送HTTP请求,获取搜索结果页面HTML response = requests.get(url) html = response.content # 定义一个空列表,用于存放搜索结果 results = [] # 解析HTML,提取搜索结果信息 soup = BeautifulSoup(html, 'html.parser') divs = soup.find_all('div', {'class': 'result c-container'}) for div in divs: title = div.find('h3').get_text().strip() link = div.find('a').get('href') abstract = div.find('div', {'class': 'c-abstract'}).get_text().strip() # 将搜索结果存放在字典中,然后添加到列表中 result = {'title': title, 'link': link, 'abstract': abstract} results.append(result) # 将搜索结果写入CSV文件 with open('results.csv', 'w', encoding='utf-8', newline='') as f: writer = csv.writer(f) # 写入表头 writer.writerow(['标题', '链接', '摘要']) # 写入搜索结果 for result in results: writer.writerow([result['title'], result['link'], result['abstract']]) print('搜索结果已保存到results.csv文件中。')
### 回答1: 如果你想学习 Python,可以选择一些在线课程或教材来开始学习。可以考虑以下选项: 1. 在线课程:比如 Coursera、Udemy、edX 等网站上有很多 Python 的在线课程,可以根据你的需求选择合适的课程。 2. 教材:可以选择一些书籍作为学习材料,比如《Python 编程从入门到实践》、《Python 基础教程》等。 3. 官方文档:Python 官方文档是一份非常详细的学习材料,适合对 Python 有一定了解的人使用。 总的来说,学习 Python 需要耐心和毅力,可以选择一种适合自己的方式,持之以恒的练习和实践,才能掌握这门编程语言。 ### 回答2: Python学习课程是一门非常受欢迎和有用的课程。Python是一种简洁、易于学习和理解的编程语言,适用于各种任务和应用。学习Python可以帮助我们开发软件、网页和数据分析等。以下是学习Python课程的几个主要优点。 首先,Python的语法非常简单和清晰。相比其他编程语言,Python更加注重可读性和易用性。这使得初学者能够快速上手并且编写出易于理解的代码。这样的特点使得Python成为推广编程教育的理想语言。 其次,Python拥有广泛且强大的库。Python有一大批强大的类库和框架,可以支持各种各样的任务。例如,NumPy和Pandas库可以帮助我们进行数据分析和处理。Django和Flask框架可以帮助我们开发网页应用。这些库和框架使得我们能够更高效地完成任务,并且能够快速构建复杂的应用。 另外,Python在科学计算和数据分析领域有着广泛的应用。许多科学家和工程师都使用Python进行数据分析、机器学习和人工智能的研究和开发。因此,学习Python可以为我们在这些领域中找到更多的机会并具备竞争优势。 此外,Python还有一个非常活跃且友好的社区。无论是初学者还是专业人士,Python社区都愿意提供帮助和支持。这意味着我们可以通过社区获得高质量的资源、教程和问题解答。 总之,学习Python课程非常值得。它的简洁语法、强大的库、广泛应用和友好的社区使得Python成为一门受欢迎和有用的编程语言。通过学习Python,我们可以开发各种应用,提升自己的编程能力,并且在职业发展中赢得竞争优势。 ### 回答3: Python学习课程是一门非常受欢迎的计算机编程课程。Python是一种简洁、易读且功能强大的编程语言,适合初学者和专业人士使用。 Python学习课程通常会涵盖基本的编程概念和语法,如变量、数据类型、条件语句、循环和函数等。学生将学习如何使用Python语言进行程序设计和开发,以及解决问题的能力。 通过学习Python,学生能够培养逻辑思维和问题解决能力。Python提供了丰富的函数库和工具,使学生能够开发各种应用程序,如游戏、网站、数据分析和机器学习等。Python还支持多种应用领域,如科学计算、自然语言处理和人工智能等,使学生能够在不同领域中发挥创造力和创新能力。 Python学习课程通常会采用实践驱动的教学方法。学生将通过编写代码、解决问题和完成项目来巩固所学知识。这种实践经验将帮助学生更好地理解和掌握Python编程的技巧和技巧。同时,Python社区非常活跃,学生可以通过阅读和参与开源项目来扩展他们的知识和技能。 总之,Python学习课程是一门充满挑战和乐趣的课程。通过学习Python,学生将获得一种广泛适用的编程技能,并为将来的学术研究和职业发展打下坚实的基础。

最新推荐

EduCoder实践课程——Python程序设计入门答案

以前没有学过,可能是之前有过acm经验,感觉Python挺好入门的,把自己学习过程中的代码记录下来,一是为了自己写报告方便,二来大家可以作为参考代码,如果有更好的代码可以留言,大家相互学习。本文持续更新~ 1、...

python扫雷游戏设计(课程设计版)

python扫雷游戏,课程设计,一文解决。此报告包含相关代码的解释和源代码,如果有界面要求可以私聊博主。可以帮助部分同学节省一大部分时间,课程设计报告可以直接将这个docx稍微改一下就好。

python实现按关键字筛选日志文件

今天小编大家分享一篇python实现按关键字筛选日志文件方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

Python 中的with关键字使用详解

主要介绍了Python 中的with关键字使用详解的相关资料,在Python中,with关键字是一个替你管理实现上下文协议对象的好东西,需要的朋友可以参考下

python 文件查找及内容匹配方法

今天小编就为大家分享一篇python 文件查找及内容匹配方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

安全文明监理实施细则_工程施工土建监理资料建筑监理工作规划方案报告_监理实施细则.ppt

安全文明监理实施细则_工程施工土建监理资料建筑监理工作规划方案报告_监理实施细则.ppt

"REGISTOR:SSD内部非结构化数据处理平台"

REGISTOR:SSD存储裴舒怡,杨静,杨青,罗德岛大学,深圳市大普微电子有限公司。公司本文介绍了一个用于在存储器内部进行规则表达的平台REGISTOR。Registor的主要思想是在存储大型数据集的存储中加速正则表达式(regex)搜索,消除I/O瓶颈问题。在闪存SSD内部设计并增强了一个用于regex搜索的特殊硬件引擎,该引擎在从NAND闪存到主机的数据传输期间动态处理数据为了使regex搜索的速度与现代SSD的内部总线速度相匹配,在Registor硬件中设计了一种深度流水线结构,该结构由文件语义提取器、匹配候选查找器、regex匹配单元(REMU)和结果组织器组成。此外,流水线的每个阶段使得可能使用最大等位性。为了使Registor易于被高级应用程序使用,我们在Linux中开发了一组API和库,允许Registor通过有效地将单独的数据块重组为文件来处理SSD中的文件Registor的工作原

typeerror: invalid argument(s) 'encoding' sent to create_engine(), using con

这个错误通常是由于使用了错误的参数或参数格式引起的。create_engine() 方法需要连接数据库时使用的参数,例如数据库类型、用户名、密码、主机等。 请检查你的代码,确保传递给 create_engine() 方法的参数是正确的,并且符合参数的格式要求。例如,如果你正在使用 MySQL 数据库,你需要传递正确的数据库类型、主机名、端口号、用户名、密码和数据库名称。以下是一个示例: ``` from sqlalchemy import create_engine engine = create_engine('mysql+pymysql://username:password@hos

数据库课程设计食品销售统计系统.doc

数据库课程设计食品销售统计系统.doc

海量3D模型的自适应传输

为了获得的目的图卢兹大学博士学位发布人:图卢兹国立理工学院(图卢兹INP)学科或专业:计算机与电信提交人和支持人:M. 托马斯·福吉奥尼2019年11月29日星期五标题:海量3D模型的自适应传输博士学校:图卢兹数学、计算机科学、电信(MITT)研究单位:图卢兹计算机科学研究所(IRIT)论文主任:M. 文森特·查维拉特M.阿克塞尔·卡里尔报告员:M. GWendal Simon,大西洋IMTSIDONIE CHRISTOPHE女士,国家地理研究所评审团成员:M. MAARTEN WIJNANTS,哈塞尔大学,校长M. AXEL CARLIER,图卢兹INP,成员M. GILLES GESQUIERE,里昂第二大学,成员Géraldine Morin女士,图卢兹INP,成员M. VINCENT CHARVILLAT,图卢兹INP,成员M. Wei Tsang Ooi,新加坡国立大学,研究员基于HTTP的动态自适应3D流媒体2019年11月29日星期五,图卢兹INP授予图卢兹大学博士学位,由ThomasForgione发表并答辩Gilles Gesquière�