加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python 字符串类型列表转换成真正列表类型

发布时间:2020-12-20 12:53:44 所属栏目:Python 来源:网络整理
导读:我们在写代码的过程中,会经常使用到for循环,去循环列表,那么如果我们拿到一个类型为str的列表,对它进行for循环,结果看下面的代码和图: str_list = str([‘a‘,‘b‘,‘c‘])for row in str_list: print(row) 结果: 那么for循环就把str类型的列表的每
我们在写代码的过程中,会经常使用到for循环,去循环列表,那么如果我们拿到一个类型为str的列表,对它进行for循环,结果看下面的代码和图:

str_list = str([‘a‘,‘b‘,‘c‘])

for row in str_list:
    print(row)

结果:

那么for循环就把str类型的列表的每一个字符都一个一个的循环的打印出来,而这个结果并不是我们想要的,那么如何解决这个问题?,使用到第三方模块,看下面的代码

from ast import literal_eval

# 假设拿到了一个str类型的列表
str_list = str([‘a‘,‘c‘])

print(type(str_list)) # <class ‘str‘>

# 通过 literal_eval 这个函数,将str类型的列表转换成类型为list的真正的列表类型
new_list = literal_eval(str_list)

print(type(new_list)) # <class ‘list‘>

# 然后就可以通过for循环获取到列表中的每一个值
for row in new_list:
     print(row)

# 执行结果
‘‘‘
a
b
c
‘‘‘

ast 的literal函数 会判断需要计算的内容计算后是不是合法的python类型,如果是则进行运算,否则就不进行运算

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读