Python编程需求:提取字符串奇偶索引字符并按要求输出
解决字符串奇偶索引字符拆分问题
嘿,我来帮你搞定这个字符串处理的任务!首先咱们再明确下需求:
- 输入T个测试用例(T取值在1到10之间)
- 每个测试用例是一个长度≥2的字符串
- 对每个字符串,把偶数索引(0、2、4...)的字符拼接成一个字符串,奇数索引(1、3、5...)的字符拼接成另一个字符串,最后把这两个字符串用空格分隔打印在一行
完整实现代码
T = int(input().strip()) if T in range(1, 11): for _ in range(T): S = input().strip() # 利用Python字符串切片快速提取奇偶索引字符 even_part = S[::2] # 从索引0开始,步长为2,取所有偶数索引字符 odd_part = S[1::2] # 从索引1开始,步长为2,取所有奇数索引字符 print(f"{even_part} {odd_part}")
代码细节解释
- 输入处理:用
input().strip()去除字符串前后的空白字符,避免不必要的格式干扰 - 切片用法是核心:
S[::2]:Python切片语法为[起始索引:结束索引:步长],省略起始索引默认从0开始,省略结束索引默认到字符串末尾,步长2会依次取0、2、4...位置的字符S[1::2]:同理,从索引1开始,步长2,取1、3、5...位置的字符
- 相比你原来把字符串转成数组的写法,直接用字符串切片更简洁高效——因为Python字符串本身就是可迭代的序列类型,天然支持索引和切片操作,没必要额外转数组
测试示例
如果输入:
2 HelloWorld Python
对应的输出会是:
Hlool elWrd Pto yhn
内容的提问来源于stack exchange,提问作者ysp
相关产品推荐
相关产品推荐

