小编Akh*_*les的帖子

另一个大写字符串解决方案的每个奇数字符

我刚开始学习Python并为自己创造了一些我正在努力解决的任务......

所以,我正在处理使用字符串(通过索引访问字符串,更改等)的章节.

我的任务是 - 大写字符串的每个奇数字符.我在这里看到了解决方案:在Python中用字符串中的每个其他字母大写?

但我不喜欢它...想通过切片解决这个问题.所以我制作的是关注代码:

T = 'somesampletexthere'  
R=""

for i in range(0, len(T[1::2])):
        R+=T[::2][i].upper()+T[1::2][i].lower()

print R
Run Code Online (Sandbox Code Playgroud)

当有偶数个字符时,这个代码工作得很好,例如使用TESTTEXT但是当数字是奇数时,就像这里的例子一样,它将跳过最后一个字符(在本例中是E)

这是因为范围是直到len(T[1::2]))(偶数字符的长度),但如果我将尝试奇数字符的长度,len(T[::2]))我将得到错误:

IndexError: string index out of range
Run Code Online (Sandbox Code Playgroud)

逻辑上因为奇数字符的数量在1上总是更大(在具有奇数字符的文本的情况下).

所以,我的问题是 - 我怎么能抑制错误?因此,如果索引超出给定字符串的范围,Python只返回null或其他内容?

或使用切片的任务的任何其他解决方案?

python string

3
推荐指数
1
解决办法
2987
查看次数

标签 统计

python ×1

string ×1