如何使用python 3在xlsx文件中搜索数据?

时间:2017-09-17 19:39:52

标签: python excel python-3.x parsing

我正在尝试搜索用户名 - 在xlsx-'saito'中(我手动将其添加到xslx中)并且大多数在线答案仅在您搜索特定单元格时才起作用。我的目的是创建一个登录程序,我可以在其中搜索用户名,如果用户名存在于文件中,然后询问相关密码,仍然无法找到如何搜索字符串。

以下是我目前的代码......

counter = 0 
print('type L to log in or C to create an account')
decision = input().lower()
if decision == 'l':
    while counter == 0:
        print('please enter your user name')
        username = input()
        while username == '':
            print('please enter a valid username')
            username = input()
        if username in Accounts.xlsx:
            print('please enter your password')
            counter = counter + 1
        else:
            print('The username you have entered has not been recognised, please try again')
elif decision == 'c':
    print('I'll do the user creation later')
else:
    print('please log in or create a user')

Accounts.xlsx是我将用于搜索用户名的文件。

1 个答案:

答案 0 :(得分:0)

Openpyxl对于使用.xlsx文件非常有用。如果您只想检查用户名是否在文件中的任何位置,您可以提取所有值,如下所示:

from openpyxl import load_workbook

wb = load_workbook(filename='Accounts.xlsx')
sheet = wb['sheet_name']

names = []

for i in range(1, sheet.max_row + 1):
    for j in range(sheet.max_column):
        if sheet[i][j].value:
            names.append(sheet[i][j].value)

然后只检查用户名是否在列表中

if username in names: