e = 'NewCamelCaseWord'
new_word = []
def snake_case_formatter(c, sep='-'):
for i in list(c):
if i.isupper():
new_word.append(sep)
i = i.lower()
new_word.append(i)
else:
if new_word[0] == sep:
del new_word[0]
word = ''.join(new_word)
return word
嗨,这是我将驼峰式函数名称更改为蛇式函数名称的代码。创建此函数时,我将字符串更改为列表,然后在大写字母之前的空格中添加空格,但这也意味着单词开头之前会有一个空格。这意味着当我使用破折号作为分隔符将字符串连接在一起时,函数名称的开头会有一个破折号。我通过删除 else 函数中的第一个字符来解决这个问题,但是。如果第一个字母是大写字母,我怎样才能让循环跳过第一个字母?我尝试像这样使用 continue:
def snake_case_formatter(c, sep='-'):
for i in list(c):
if i.isupper():
if i[0]:
continue
new_word.append(sep)
i = i.lower()
new_word.append(i)
else:
word = ''.join(new_word)
return word
然而它只是搞砸了代码。所以我认为它与我的缩进有关,但我不确定我应该如何格式化它。
编辑:我想知道如何使用 continue 以跳过在我的字符串中的第一个字母之前添加一个空格,而不必在之后删除它
请检查以下代码以获得预期的解决方案:
e = 'CamelCaseWord'
new_word = []
range(len(e))
def snake_case_formatter(c, sep='-'):
for i in range(len(e)):
if i==0 and e[i].isupper():
continue
elif e[i].isupper()==True:
new_word.append('-' + e[i].lower())
else:
new_word.append(e[i])
print(''.join(new_word))
snake_case_formatter(e)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句