python - 如何解决字符串索引必须是 for 循环中的整数问题,用于将字符串中的每个单词大写
问题描述
我希望每个人都安全。
我正在尝试遍历一个字符串并将字符串的每个第一个字母大写。我知道我可以使用 .title() 但是
a)我想弄清楚在这种情况下如何使用大写或其他东西 - 基础知识,以及
b) 测试中的字符串,有一些带有 (') 的单词,这使得 .title() 混淆,并且将 (') 后面的字母大写。
def to_jaden_case(string):
appended_string = ''
word = len(string.split())
for word in string:
new_word = string[word].capitalize()
appended_string +=str(new_word)
return appended_string
问题是解释器给了我“TypeError:字符串索引必须是整数”,即使我在'word'中有一个整数输入。有什么帮助吗?
谢谢!
解决方案
您正在使用字符串索引来访问另一个字符串word
是您正在word
使用string[word]
它访问的字符串导致错误。
def to_jaden_case(string):
appended_string = ''
for word in string.split():
new_word = word.capitalize()
appended_string += new_word
return appended_string
使用简单的解决方案map()
def to_jaden_case(string):
return ' '.join(map(str.capitalize, string.split()))
推荐阅读
- java - 如何使球图像从一名球员反弹到另一名球员?
- java - 发送 kafka 消息的更好方法:JsonNode 或 Map
? - javascript - 从 Vuex 商店全局访问 const 变量
- python - 如何从列表中向字典键添加第二个值?
- react-native - 检查应用程序是否已在 React Native 中加载
- java - 如何通过它们之间的空格分割字符串和整数?在 JAVA 中
- r - 我想创建一个数值数据的箱线图,但不包括在另一列上标记为“0”的情况?
- google-sheets - 雅虎财经历史收盘价到谷歌表格返回不适用,收盘时间晚于 100 天
- executable - 如何提供可执行文件
- android - 连接recyclerview查看寻呼机