【问题标题】:Separating strings in CamelCase to individual strings [closed]将 CamelCase 中的字符串分隔为单个字符串 [关闭]
【发布时间】:2017-04-22 16:03:56
【问题描述】:

问题如下:

"存在CamelCase格式的字符串。例如:"ThisIsACamelCaseString"。

需要一个过程/函数来:

1) 提示输入原始条目
2) 分隔字符串的每个单词
3) 将每个单词存储在单独的数组/列表元素中
4) 用恶意字符串填充未使用的数组/列表元素,例如“(Empty)”。

处理完前面的例子后,数组内容如下:

这个

一个
骆驼
案例
字符串
(空)
(空)
(空)
(空)

您可以假设原始字符串将包含不超过 10 个单独的单词。为此设计使用 Python 编写程序代码。”

这是我尝试过的:

a = input("Enter: ")
lists = list(a)
len = len(a)
alpha = ["Empty"]*10
alpha[0] = lists[0]
for i in range(len):
    for j in range(len):
        if lists[j + 1].isupper():
            break
        alpha[i] = alpha[i] + lists[j + 1]

for i in range(10):
    print(alpha[i])

如何找到合适的代码?

【问题讨论】:

  • 您似乎希望我们为您编写一些代码。虽然许多用户愿意为陷入困境的程序员编写代码,但他们通常只会在发布者已经尝试自己解决问题时提供帮助。展示这项工作的一个好方法是包含您迄今为止编写的代码、示例输入(如果有的话)、预期输出以及您实际获得的输出(控制台输出、回溯等)。您提供的详细信息越多,您可能收到的答案就越多。检查FAQHow to Ask
  • 您的用户名具有讽刺意味,尤其是在要求人们为您编写代码时
  • @Rory Daulton 我实际上不需要完整的代码,但是如果有任何关于如何将字符串分成如上所述的单词的建议!只有建议就足够了,或者如果我必须使用任何内置函数!
  • @Dmitry Polonskiy 我不教人们编程,我只教其他东西。我在其他各种网站都有这个用户名,因此也在这里使用它!谢谢,我无意冒犯! :)
  • 由于该答案确实回答了您的原始问题并且您现在还想了解其他内容,因此您最好重新接受该答案,编辑此问题以了解如何找到合适的代码(留在您尝试的代码中),并就您尝试的代码有什么问题提出另一个问题。在这里改进一个问题是好的,但改变你所问的不是。如果您明确 this 问题要求解决方案,而您的 new 问题询问您的尝试有什么问题,您将不会发布重复。

标签: python arrays string list camelcasing


【解决方案1】:

这是一种方法:

a = 'ThisIsACamelCaseString'
b = [i for i, e in enumerate(a) if e.isupper()] + [len(a)]
c = [a[x: y] for x, y in zip(b, b[1:])] 
final = ['(Empty)']*10
for i, case in enumerate(c):
    final[i] = case

【讨论】:

  • 非常感谢!对我来说意义重大! :D
【解决方案2】:

使用正则表达式拆分驼峰式How to do CamelCase split in python

或者只是循环遍历字符串。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-30
    • 1970-01-01
    • 1970-01-01
    • 2015-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-19
    相关资源
    最近更新 更多