使用多种打印方式输出字符串内容

四种Python字符串输出方法
本文详细介绍了在Python中使用四种不同方法输出带有变量的字符串:使用多个参数、字符串拼接、占位符以及格式化字符串。这四种方法各有特点,适用于不同的场景。

使用四种方式输出字符串

name = ‘Kevin’

1.多个参数

print(‘welcome’, name, ‘come here!’)

2.拼串

print(‘welcome ’ + name + ’ come here!’)

3.占位符

print(‘welcome %s come here!’ % name)

4.格式化字符串

print(f’welcome {name} come here!’)

你想“输出字符串”,根据上下文,你可能是想将最终的鱼列表以**字符串形式输出**,而不是默认的 `list` 格式(比如 `[8, 3]`)。Python 提供了多种方式将列表转换为字符串打印。下面我详细解释几种常见需求和对应的实现方法。 --- ### ✅ 目标:把 `fish` 列表输出字符串 假设你的最终结果是: ```python result = [8, 3] ``` 你想输出以下任意一种格式: | 输出格式 | 示例 | |--------|------| | 空格分隔字符串 | `"8 3"` | | 逗号分隔字符串 | `"8,3"` 或 `"8, 3"` | | 括号裹的字符串 | `"[8, 3]"`(其实就是默认 `str(list)`)| | 自定义连接符 | `"8 -> 3"` | --- ### 🔧 方法一:空格分隔(最常用) ```python result = [8, 3] output_str = " ".join(map(str, result)) print(output_str) # 输出: 8 3 ``` - `map(str, result)`:把每个数字转字符串 - `" ".join(...)`:用空格连接所有元素 ✅ 适合提交 OJ 题目或标准输出 --- ### 🔧 方法二:逗号分隔(带或不带空格) ```python # 不带空格 output_str = ",".join(map(str, result)) print(output_str) # 输出: 8,3 # 带空格 output_str = ", ".join(map(str, result)) print(output_str) # 输出: 8, 3 ``` --- ### 🔧 方法三:保持 list 样式的字符串(默认) ```python output_str = str(result) print(output_str) # 输出: [8, 3] ``` > 注意:这是 `list` 的默认字符串表示,可以直接用于日志或调试。 --- ### 🔧 方法四:自定义格式(如 HTML、JSON 等) ```python # JSON 格式 import json output_str = json.dumps(result) print(output_str) # 输出: [8, 3] # 自定义箭头连接 output_str = " -> ".join(map(str, result)) print(output_str) # 输出: 8 -> 3 ``` --- ### 🔄 应用到你的完整代码中(整合版) ```python fish = list(map(int, input().split())) def resolve_collisions(fishes): stack = [] for f in fishes: while stack and stack[-1] > 0 and f < 0: # 发生碰撞 if stack[-1] < -f: stack.pop() continue elif stack[-1] == -f: stack.pop() break else: break else: stack.append(f) return stack result = resolve_collisions(fish) # 转换为字符串输出 if result: output_str = " ".join(map(str, result)) # 推荐:空格分隔 else: output_str = "" # 如果全消失了,输出空串 print(output_str) ``` --- ### 💡 特殊情况处理 - 如果所有鱼都“同归于尽”了,`result` 是空列表 `[]` - `str([])` → `"[]"` - `" ".join(map(str, []))` → `""`(空字符串) - 所以推荐使用 `" ".join(...)` 来输出干净的结果 --- ### ❓相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值