我是一个初学者在python。我在codewars中遇到了这个问题。ValueError:无效文字int()与基地10
贾登以他通过Twitter提供的一些哲学而闻名。在Twitter上撰写文章时,他几乎总是把每一个词都用在大写字母上。 您的任务是将字符串转换为Jaden Smith的书写方式。这些字符串是来自Jaden Smith的实际报价,但它们没有按照他原先输入的方式进行大写。
例子:
不贾登外装:“镜子怎么能是真实的,如果我们的眼睛都不是真正的”
贾登外装:“镜子怎么可能是真的。如果我们的眼睛都不是真正的”
这是我尝试(我应该使用功能代码)
def toJadenCase(string):
l = len(string)
for i in range(0,l):
if string[i] == ' ':
y = string[i]
string[i+1] = chr(int(y)-32)
return srting
s = raw_input()
print toJadenCase(s)
运行时,下面的错误出现了
How can mirrors be real if our eyes aren't real (this is the input string)
Traceback (most recent call last):
File "jaden_smith.py", line 9, in <module>
print toJadenCase(s)
File "jaden_smith.py", line 6, in toJadenCase
string[i+1] = chr(int(y)-32)
ValueError: invalid literal for int() with base 10: ''
即使谷歌-ING它,我无法理解这些错误。任何帮助,将不胜感激。如果我的代码中的其他错误突出显示,并且建议了更好的代码,我也会很棒。
在此先感谢:d
你为什么试图将空格转换为int?你的意思是'y = string [i + 1]'?而不是'int()'你的意思是'ord()'? – Natecat
您试图将消息中的每个空格转换为int。 ''''的整数值是多少? –
这是一个错误,我的意思是将字符串[i + 1]转换为int。 – Kaushik