美文网首页
Python版 驼峰变量(camel case)转蛇形变量方法(

Python版 驼峰变量(camel case)转蛇形变量方法(

作者: anycell | 来源:发表于2020-04-15 17:05 被阅读0次

需要实现一个json中key由驼峰转蛇形变量的转换功能,因此写了一个camel case to snake case的函数,不求效率有多高,只求简单有效:

import re

def camel_to_snake_case(text):
    matches = re.finditer('[A-Z]', text)

    contents = []
    last_start = 0
    for it in matches:
        start, end = it.span()
        if start > 0:
            contents.append(text[last_start:start])

        last_start = start

    contents.append(text[last_start:])
    return '_'.join(contents).lower()


if __name__ == '__main__':
    import sys
    camel_text = sys.argv[1]
    snake_text = camel_to_snake_case(camel_text)

    print("{} => {}".format(camel_text, snake_text))
    print(camel_text.lower().replace('_', '') == snake_text.replace('_', ''))

相关文章

网友评论

      本文标题:Python版 驼峰变量(camel case)转蛇形变量方法(

      本文链接:https://www.haomeiwen.com/subject/bethvhtx.html