python字符串的最大长度

今天在写脚本过程中需要将大量字符存入python字符串,遂好奇python的字符串是否有长度限制。

经查询文档未发现提及长度限制,后来在*找到了相关讨论:
python字符串的最大长度
原文链接:link
大意为无环境限制下python的string中存储极限字符数量是多少,其中一位网友进行了实验,以下为相关代码:

def create1k():
    s = ""
    for i in range(1024):
        s += '*'
    return s

def create1m():
    s = ""
    x = create1k()
    for i in range(1024):
        s += x
    return s

def create1g():
    s = ""
    x = create1m()
    for i in range(1024):
        s += x
    return s

print("begin")
s = ""
x = create1g()
for i in range(1024):
    s += x
    print(str(i) + "g ok")
    print(str(len(s)) + ' bytes')

测试结果:在使用了116G内存后报内存错误。
python字符串的最大长度

结论:python本身对string长度无强制性限制。使用过程中主要需要考虑电脑性能和程序效率。

上一篇:hackthebox Seal


下一篇:DateUtils日期转时间戳/时间戳转日期