将CamelCase中的字符串分隔为单个字符串

时间:2017-04-22 16:03:56

标签: python arrays string list camelcasing

问题如下:

“CamelCase格式中存在一个字符串。例如:”ThisIsACamelCaseString“。

需要一个程序/功能:

1)提示输入原始条目
2)分开字符串的每个单词
3)将每个单词存储在单独的数组/列表元素中
4)使用诸如“(空)”之类的流氓字符串填充未使用的数组/列表元素。

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

  

此   
是   
一   
骆驼   
案例   
字符串   
(空)   
(空)   
(空)   
(空)

您可以假设原始字符串包含的单词不超过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])

如何找到合适的代码?

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:0)

使用正则表达式来分割驼峰案例How to do CamelCase split in python

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