gpt4 book ai didi

python - 检查字符串是否在 CSV

转载 作者:IT老高 更新时间:2023-10-28 21:10:14 25 4
gpt4 key购买 nike

我想搜索一个 CSV 文件并打印 TrueFalse,这取决于我是否找到了字符串。但是,我遇到了一个问题,如果它发现嵌入在较大文本字符串中的字符串,它将返回误报。例如:如果字符串是 foo 并且术语 foobar 在 CSV 文件中,它将返回 True。我需要能够返回完全匹配。

username = input()

if username in open('Users.csv').read():
print("True")
else:
print("False")

我已经研究过使用 mmaprecsv 模块函数,但我没有使用它们。

编辑:这是另一种方法:

import re
import csv

username = input()

with open('Users.csv', 'rt') as f:
reader = csv.reader(f)
for row in reader:
re.search(r'\bNOTSUREHERE\b', username)

最佳答案

当您使用 csv 模块查看 csv 文件时,它会将每一行作为列列表返回。所以如果你想查找你的字符串,你应该修改你的代码:

import csv

username = input()

with open('Users.csv', 'rt') as f:
reader = csv.reader(f, delimiter=',') # good point by @paco
for row in reader:
for field in row:
if field == username:
print "is in file"

但由于它是一个 csv 文件,您可能希望用户名位于给定列中:

with open('Users.csv', 'rt') as f:
reader = csv.reader(f, delimiter=',')
for row in reader:
if username == row[2]: # if the username shall be on column 3 (-> index 2)
print "is in file"

关于python - 检查字符串是否在 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17308872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com