如何打印包含字符串和整数的列表理解并仅向字符串添加符号?

我有一个整数和字符串的混合列表,我需要仅在字符串后打印“**”。

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**, 34, 78, @#=£**, 89, Ice Cream**, Hamilton**, 12, tingle**


跃然一笑
浏览 36回答 1
1回答

慕运维8079593

您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**, 34, 78, @#=£**, 89, Ice cream**, Hamilton**, 12, tingle**
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python