因此,我的最终目标是将此代码集成到AWS Lambda中,因此我希望尽可能避免使用pandas。以下是我如何读取CSV文件(来自S3):
import boto3
s3 = boto3.client('s3')
bucket_name = #getting the bucket name
file_key = #getting the file key
obj = s3.get_object(Bucket=bucket_name, Key=file_key)
现在我如何使用obj
(这基本上是一个。csv文件)来获得包含在col1
列的csv的所有值的列表?
尝试以下操作(只需将f.read()替换为读取s3)
with open('Names.csv') as f:
col1 = []
obj = f.read() # TODO read from s3
lines = obj.split('n')[1:]
for line in lines:
x = line.split(',')[0]
if x:
col1.append(x)
print(col1)
Names.csv
No,Name,Country
1,Alex,['India']
2,Ben,['USA']
11,Alex12,"['India', 'Italy']"
输出['1', '2', '11']