【问题标题】:Print each 18th symbol of the string打印字符串的每个第 18 个符号
【发布时间】:2017-02-28 23:42:40
【问题描述】:

我有一个字符串变量L,我需要打印第 18 个符号,然后是第 36 个,依此类推,以 18 个字符为步长。它们必须以与原始字母相反的大小写形式打印(如果原始字母是a,则打印a,如果A,则打印a,等等),以及该字母在字符串中的位置:

o   18,

o   36E

o   54 

o   72I

我知道如何获取字符串中的第 18 个符号,但是如何处理每个第 18 个符号?我可以使用L[::18] 执行此操作吗?而且我真的不知道如何从a 转换为A

【问题讨论】:

  • 你正在学习这很好,但我们希望看到你自己在这个问题上的尝试
  • 问题/任务中的“每个”一词表示循环可能有用。
  • 任何样本输入!?

标签: python string python-2.7 char


【解决方案1】:

是的,[::18] 会得到你想要的字符。之后,使用 isupperislower 方法找出你有什么;使用 upperlower 方法进行更改。

这里有一些简单的测试代码来看看事情是如何工作的。根据需要进行调整。

test = "0123456789ABCDEFGH"*4

print "with a string", test[::18]

print "... and with a loop:"
for i in range(0,len(test), 18):
    print i, test[i]                             

输出:

with a string 0000
... and with a loop:
0 0
18 0
36 0
54 0

【讨论】:

  • 那么在字符串中添加字母的位置呢?
  • 这是一个简单的线性翻译;你能算算吗?或者,您可以使用所需的值设置 for 循环,从而已经生成索引(位置)。
猜你喜欢
  • 2016-10-29
  • 2021-05-22
  • 1970-01-01
  • 2016-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-11
相关资源
最近更新 更多