我們在寫代碼的過程中,會經常使用到for循環,去循環列表,那么如果我們拿到一個類型為str的列表,對它進行for循環,結果看下面的代碼和圖:
str_list = str(['a','b','c']) for row in str_list: print(row)
結果:
Python 字符串類型列表轉換成真正列表類型
那么for循環就把str類型的列表的每一個字符都一個一個的循環的打印出來,而這個結果并不是我們想要的,那么如何解決這個問題?,使用到第三方模塊,看下面的代碼
from ast import literal_eval # 假設拿到了一個str類型的列表 str_list = str(['a','b','c']) print(type(str_list)) ## 通過 literal_eval 這個函數,將str類型的列表轉換成類型為list的真正的列表類型 new_list = literal_eval(str_list) print(type(new_list)) # # 然后就可以通過for循環獲取到列表中的每一個值 for row in new_list: print(row) # 執行結果 ''' a b c '''
ast 的literal函數 會判斷需要計算的內容計算后是不是合法的python類型,如果是則進行運算,否則就不進行運算
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
