简体   繁体   English

如何从一个文件夹中一个一个地打开多个 CSV 文件,一个管理员想要

[英]How to open multiple CSV files from a folder one by one, the one admin wants

I have multiple.csv files in a directory and I want to open them one by one on user/admin demand which one he wants to open.我在一个目录中有多个.csv 文件,我想根据用户/管理员的要求逐个打开它们,他想打开哪个。 And when he opened the file it displays on Tkinter interface in tabular format.当他打开文件时,它以表格格式显示在 Tkinter 界面上。

def open_att():
    ..........
    filename = filedialog.askopenfilename(initialdir="C:/Users/Ahmad Jan Ahmadi/Desktop/FYP-11 Final/Attendance/",title="Select Attendance File",filetypes=(("Csv Files","*.csv"),("All Files","*.*")))
    attend= pd.read_csv(filename)
    for row in attend:
        Id = row['Id']
        name = row['Name']
        date = row['Date']
        time = row['Time']
        tree.insert("", 100000, values=(Id, name, date,time))

When I run this program it gives me the error that:当我运行这个程序时,它给了我一个错误:

Exception in Tkinter callback Traceback (most recent call last): File "C:\Users\Ahmad Jan Ahmadi\AppData\Local\Programs\Python\Python36-32\lib\tkinter_ init _.py", line 1699, in call return self.func(*args) File "C:\Users\Ahmad Jan Ahmadi\Desktop\FYP-11 Final\main.py", line 438, in open_att Id = row['Id'] TypeError: string indices must be integers Tkinter 回调 Traceback(最近一次调用最后一次)中的异常:文件“C:\Users\Ahmad Jan Ahmadi\AppData\Local\Programs\Python\Python36-32\lib\ tkinter_init _.py”,第 1699 行,调用返回self.func(*args) File "C:\Users\Ahmad Jan Ahmadi\Desktop\FYP-11 Final\main.py", line 438, in open_att Id = row['Id'] TypeError: string indices must be integers

First, I want to ask from the user which.csv file you want to open when he selects one of them then, how to display this file.首先,我想问用户,当他选择其中一个时,你想打开哪个.csv文件,然后如何显示这个文件。

I did this fast approach on my phone, needs few optimizations我在手机上做了这种快速的方法,几乎不需要优化

import os
import glob


os.chdir("/mydir")
extension = 'csv'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]

for name in all_filenames:
   pattern = input("enter your desired file name: ")
   if pattern == name:
       file = name.readlines()
       print(file) 
   else:
       print("file does not exist")
       
       

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM