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

Python Zybooks实验max_magnitude函数兼容函数调用格式输入问题

Zybooks Python实验多格式输入兼容方案

问题原因

原有代码的输入逻辑仅支持每行一个整数的输入场景,当输入为max_magnitude(5,8)这类带函数标识、括号的字符串时,直接对整行内容做int()类型转换会触发值错误,导致运行失败。

兼容修改代码

核心逻辑为优先清洗输入内容,提取其中的有效整数值,不限制输入的外层格式:

import re

def max_magnitude(user_val1, user_val2):
   if abs(user_val1) > abs(user_val2):
      return user_val1
   else:
      return user_val2

# 多格式输入处理逻辑
# 读取所有输入内容合并为单个字符串
input_content = '\n'.join(iter(input, ''))
# 正则匹配提取所有整数(支持负数)
nums = list(map(int, re.findall(r'-?\d+', input_content)))
user_val1, user_val2 = nums[0], nums[1]

print(max_magnitude(user_val1, user_val2))

兼容验证

  • 两行输入场景:分别输入5、8,提取得到参数5和8,输出结果为8
  • 函数格式输入场景:输入max_magnitude(-12, 9),提取得到参数-12和9,输出结果为-12

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 12:06:07