以上代码中excel_files后面的文件实现拖入方式,请给出相应代码
时间: 2024-04-14 17:25:58 浏览: 16
要实现通过拖入文件的方式获取`excel_files`中的文件名,我们可以使用`sys`和`os`模块来获取命令行参数。以下是相应的代码示例:
```python
import pandas as pd
import sys
import os
# 获取命令行参数
excel_files = sys.argv[1:]
# 如果没有通过命令行参数传递文件名,则尝试通过拖入文件获取
if not excel_files:
excel_files = [arg for arg in sys.argv if os.path.isfile(arg)]
# 创建一个空的DataFrame来存储所有文件的数据
all_data = pd.DataFrame()
# 逐个读取Excel文件,并将数据添加到all_data中
for file in excel_files:
data = pd.read_excel(file)
all_data = all_data.append(data)
# 找出共同项
common_items = all_data.groupby(all_data.columns.tolist()).size().reset_index().rename(columns={0:'count'})
# 输出共同项
print(common_items)
```
在上述代码中,我们首先使用`sys.argv[1:]`获取命令行参数,这将返回一个列表,其中包含了在命令行中指定的文件名。如果没有通过命令行参数传递文件名,则我们尝试通过拖入文件的方式获取文件名。我们使用`os.path.isfile(arg)`来检查每个参数是否为文件。
然后,我们按照之前的逻辑,逐个读取Excel文件,并将数据添加到`all_data`中。最后,我们找出共同项并输出结果。
请确保在命令行中运行脚本时,将Excel文件名作为参数传递给脚本,或者通过拖入文件的方式获取文件名。
希望这对你有帮助!如果还有其他问题,请随时提问。