You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python模块函数仅返回单个字符而非指定长度的修复求助

问题解决:函数仅返回单个字符的原因与修复方案

你的两个函数出现返回单个字符的问题,核心原因是**return语句缩进错误**——你把它放在了for循环的代码块内部,导致循环刚执行第一次迭代就直接返回了结果,根本没完成后续的循环次数。

修正后的模块代码如下:

import random


def password_generator():
    big_alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    small_alphabet = "abcdefghijklmnopqrstuvwxyz"
    digits = "0123456789"
    generator = big_alphabet + small_alphabet + digits
    random_password = ''
    for p in range(15):
        random_password += random.choice(generator)
    # 把return移到循环外面,等循环完成所有迭代后再返回
    return random_password


def secret_question_generator():
    digits = "0123456789"
    generator = digits
    random_index = ''
    for i in range(5):
        random_index += random.choice(generator)
    # 同理,return放在循环外
    return random_index

修改后,调用方式不变:

random_password = generator.password_generator()
random_index = generator.secret_question_generator()

此时password_generator会返回长度为15的随机字符串,secret_question_generator会返回长度为5的随机数字串。

内容的提问来源于stack exchange,提问作者Anatolij Rojs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 19:33:27