gpt4 book ai didi

python - 如何设置特定长度的特定 faker 随机字符串并使用下划线作为空格?

转载 作者:行者123 更新时间:2023-12-04 13:20:20 24 4
gpt4 key购买 nike

import factory.fuzzy
import faker
from core.strings import underscore_15

from factory import DjangoModelFactory, SubFactory


faker = faker.Factory.create()
class SubProjectFactory(DjangoModelFactory):
class Meta:
model = SubProject
django_get_or_create = ("internal_name",)

internal_name = factory.Faker('pystr')
internal_short_name = factory.Faker('pystr')
underscore_15 = factory.fuzzy.FuzzyText(length=15)
main_project = SubFactory(MainProjectFactory)

我需要字段 underscore_15 是一个小写的字符串,特别是只有 15 个字符长且没有空格。如果有任何空间,它应该是下划线。我试图在 factory.fuzzy.FuzzyText(length=15) 周围放置一个函数.然后我意识到我假设 FuzzyText 返回一个字符串,但它是一个 FuzzyText 对象。

我该怎么办?

最佳答案

那么,你可以得到FuzzyText通过这样调用对象值:

>> f = factory.fuzzy.FuzzyText(length=15)
>> f.fuzz()

但是,在本文中,字符既可以是大写也可以是小写。所以如果你想要独占小写字符,那么你可以覆盖 FuzzyText像这样:
from factory.fuzzy import FuzzyText

class CustomFuzzyText(FuzzyText):
def fuzz(self, *args, **kwargs):
return super(CustomFuzzyText, self).fuzz(*args, **kwargs).lower()

并在工厂中使用它,如下所示:
underscore_15 = CustomFuzzyText(prefix="aa_", length=12)  # or CustomFuzzyText(length=15)

关于python - 如何设置特定长度的特定 faker 随机字符串并使用下划线作为空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53715350/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com