如何在python中获取str中的值(不是数组/列表格式)

如何在python中获取str中的值(不是数组/列表格式),python,list,csv,Python,List,Csv,我一直在尝试用每个pop()选择str中的值。以下是我一直在尝试的代码: with open('resources/CSV/numbers.csv', 'r') as file: reader = csv.reader(file) print(reader) CREDENTIALS = list(reader) print(CREDENTIALS) number = CREDENTIALS.pop()

我一直在尝试用每个pop()选择str中的值。以下是我一直在尝试的代码:

  with open('resources/CSV/numbers.csv', 'r') as file:
        reader = csv.reader(file)
        print(reader)
        CREDENTIALS = list(reader)
        print(CREDENTIALS)
        number = CREDENTIALS.pop()
        print("value of number is:" + str(number))
如果csv包含以下编号,则格式为:

1000399094 1000399095 1000399096 1000399097 1000399098 1000399099 1000399100 1000399101 1000399102

输出为:

['1000399094']、['1000399095']、['1000399096']、['1000399097']、['1000399098']、['1000399099']、['1000399100']、['1000399101']、['1000399102']

数字的值为:['1000399102']


这里的问题是,我需要1000399102中的值,而不是['1000399102'],因为我是python新手,所以找不到任何相同的解决方案。

这个简单的
列表理解应该可以帮助您:

lst = [['1000399094'], ['1000399095'], ['1000399096'], ['1000399097'], ['1000399098'], ['1000399099'], ['1000399100'], ['1000399101'], ['1000399102']]

lst = [[int(num)] for lstt in lst for num in lstt]

print(lst)
输出:

[[1000399094], [1000399095], [1000399096], [1000399097], [1000399098], [1000399099], [1000399100], [1000399101], [1000399102]]

StackOverflow不是设计、编码、研究、调试或教程服务。您可以使用适当的索引访问所需的项。提取字符串并转换为int。重复有关数据类型(对于
int
)和列表访问的教程。为什么要调用
list(reader)
?这是一种不寻常的方式。@诺扎克,我的问题没有发现任何违反准则的地方。@JohnGordon,因为有多个值,我想将它们保留在列表中,然后逐个弹出以访问所有值。我知道还有另一种方法可以做到这一点,但出于某种原因,我只能这样做。谢谢你的回答@Sushil,我只想使用pop()来得到这个结果。可以使用pop()吗?但是列表理解更好。你真的想用
pop()
?我知道,但出于某种原因,我只能用这种方法。但是你认为如何使用
pop()
,将值转换成整数?我想我不能,所以我同意你的答案,谢谢