Python循环生成列表:如何将布尔值转为字符串类型列表
解决方法
char.isalpha()方法返回的是布尔类型(True/False),而你需要的是字符串类型的"True"/"False",只需把结果转换成字符串即可,以下是几种可行方案:
方案1:使用str()函数转换
修改循环中的append语句,将布尔值转为字符串:
my_string = "888wT" the_issue = [] for char in my_string: the_issue.append(str(char.isalpha()))
执行后输出:['False', 'False', 'False', 'True', 'True']
方案2:通过条件判断返回字符串
如果不想用str(),可以直接根据判断结果返回对应的字符串:
my_string = "888wT" the_issue = [] for char in my_string: the_issue.append("True" if char.isalpha() else "False")
效果和方案1完全一致。
方案3:列表推导式(更简洁写法)
用列表推导式可以把代码简化成一行:
my_string = "888wT" the_issue = [str(char.isalpha()) for char in my_string]
或者对应条件判断的版本:
my_string = "888wT" the_issue = ["True" if char.isalpha() else "False" for char in my_string]
内容的提问来源于stack exchange,提问作者J4K0b
相关产品推荐
相关产品推荐

