Python 如何移除长度不固定字符串的前半部分并输出后半段
不定长字符串截取后半段的实现
你当前代码中v = (d[:])的写法是对字符串的全量复制,没有做任何截取操作,自然达不到移除前半段的效果。
要适配无固定长度的字符串、取后半段内容,核心是动态计算字符串长度,定位拆分中点后做切片处理,完全不需要提前写死要移除的字符数。
修改后可直接运行的代码
d = input("LIST3>") # 自动获取输入字符串的总长度,适配任意字符数 str_length = len(d) # 从总长度的一半位置开始,截取到字符串末尾 v = d[str_length // 2:] # 打印最终的后半段内容 print(v)
关键逻辑说明
len(d)会自动计算输入字符串的总字符数,不管输入内容长度是2位还是几百位,都能动态拿到准确值,不需要手动数长度。- 用整数除法
//计算起始截取位置,自动适配奇偶长度的场景:- 字符串长度为偶数时,比如长度6,计算得到的起始索引为3,截取后刚好是前后等分的后半段
- 字符串长度为奇数时,比如长度7,计算得到的起始索引为3,会自动移除前3个字符的前半部分,保留剩余的后半段内容
- 切片语法中如果冒号后不写结束索引,Python会默认截取到字符串的最后一个字符,不需要额外指定结束位置。
举个实际运行效果参考:
- 输入
"hello world",总长度11,计算起始索引为5,截取得到的后半段内容是" world" - 输入
"test",总长度4,计算起始索引为2,截取得到的后半段内容是"st"
内容的提问来源于stack exchange,提问作者user15115078
相关产品推荐
相关产品推荐

