我有一个句子列表,如下所示:约8000个元素的CCD_ 1。
我想将上面的列表转换为lowercase
。我尝试使用以下行:
my_list = [x.lower() for x in my_list]
但这给出了一个错误:
属性错误:"int"对象没有属性"lower"所以我做了以下操作以确保所有元素都被视为字符串:
my_list = [x.lower() for x in str(my_list)]
这将返回小写,但将每个单词分解为单独的字符?
['[',
"'",
'b',
'u',
's',
'i',
'n',
'e',
's',
's',
' ',
'w',
'o',
'r',
'l',
'd',
' ',
'-',
我做错了什么?
str(my_list)
将列表对象序列化为单个字符串对象。对字符串进行迭代将生成该序列化中的每一个字符。
您可能想要的是将每个元素转换为一个字符串(很明显,在样本之外还有数字(,并将其小写。
lower_list = [str(x).lower() for x in my_list]
原因是列表中的某个地方有整数,所以需要对它们进行字符串化。
试试这个:
my_list = [str(x).lower() for x in my_list]