如何解决如何打印包含字符串和整数的列表推导式,并仅在字符串中添加符号?
我有一个整数和字符串的混合列表,我只需要在字符串后打印'**'。
data = [4,'Fred','London',34,78,'@#=£',89,'Ice cream','Hamilton',12,'tingle']
[print(data,end='**') for data in data if isinstance(data,str)]
这是输出:
Fred**London**@#=£**Ice cream**Hamilton**tingle**
所需的输出:
4,Fred**,London**,@#=£**,Ice Cream**,Hamilton**,tingle**
解决方法
您的if
现在正在过滤列表data
。将其放在for
之前。另外,使用str.join
将各种字符串与,
连接起来:
data = [4,'Fred','London',34,78,'@#=£',89,'Ice cream','Hamilton',12,'tingle']
print( ','.join('{}**'.format(item) if isinstance(item,str) else str(item) for item in data) )
打印:
4,Fred**,London**,@#=£**,Ice cream**,Hamilton**,tingle**
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。