请编写程序,读入 CSV 文件中数据,循环获得用户输入,直至用户输入 "exit" 退出。根据用户输入的星座名称,输出此星座的出生日期范围及对应字符形式。如果输入的星座名称有误,请输出“输入星座名称有误!”。
时间: 2023-12-03 22:44:40 浏览: 176
好的,可以使用 Python 编写一个解决方案。首先需要安装 pandas 库,用于读取 CSV 文件。可以通过以下命令进行安装:
```
pip install pandas
```
接下来是代码实现:
```python
import pandas as pd
# 读取 CSV 文件中的数据
data = pd.read_csv('constellations.csv', index_col='name')
while True:
# 循环获取用户输入
name = input('请输入星座名称:')
if name == 'exit':
# 如果用户输入 exit,退出程序
break
elif name in data.index:
# 如果输入的星座名称在数据中存在,输出对应的出生日期范围和字符形式
date_range = data.loc[name, 'date_range']
character = data.loc[name, 'character']
print(f'{name} 的出生日期范围是 {date_range},对应的字符形式是 {character}')
else:
# 如果输入的星座名称不存在,输出提示信息
print('输入星座名称有误!')
```
其中,我们使用了 pandas 库中的 `read_csv` 方法读取 CSV 文件中的数据,并指定了 `index_col='name'` 参数,将星座名称作为数据的索引列。
接下来通过一个 while 循环,不断获取用户输入,如果输入的是 exit,则退出程序。如果输入的星座名称在数据中存在,则通过 `loc` 方法获取对应的出生日期范围和字符形式并输出。如果输入的星座名称不存在,输出提示信息。
需要注意的是,这里的 `loc` 方法用于根据行和列的标签索引到数据,具体使用方法可以参考 pandas 官方文档。
阅读全文