土薯工具 Toolshu.com 登录 用户注册

利用在线Python环境上传自定义代码并调用执行示例

原创 作者:bhnw 于 2025-12-23 13:46 发布 46次浏览 收藏 (0)

对于需要复用自定义代码、模块化开发的初学者或临时使用者,本地配置环境和管理文件往往较为繁琐。本文将介绍如何利用 在线 Python 运行工具(基于 Python 3.12.7),无需本地安装软件,直接在浏览器中上传自己的自定义代码文件,实现代码的导入与调用执行,提升代码复用性和开发效率。

工具特性(针对自定义代码上传调用的优势)

  • 支持 Python 3.12.7 及标准库,兼容自定义 Python 脚本(.py 文件)
  • 内置虚拟文件系统,支持上传、创建、编辑、保存和调用自定义代码文件
  • 完美支持模块化导入,可上传多个关联脚本并实现跨文件调用
  • 代码即时执行,调用结果实时输出,支持调试自定义模块
  • 无需配置本地环境变量,适用于模块化代码验证、教学演示和轻量级项目开发

工具地址:https://toolshu.com/python3

核心使用流程:上传自定义代码 + 调用执行

场景说明:我们先创建一个自定义 Python 文件

  • 工具类脚本(my_utils.py):封装常用的计算、数据处理等自定义函数(可本地编写后上传,或在线创建)

步骤 1:准备自定义代码文件(本地编写,用于上传)

先在本地编写 Python 脚本(或者直接使用在线环境中编写,之后保存代码文件到本地亦可),后续上传至在线环境,实现模块化调用。

自定义工具类脚本:my_utils.py(封装可复用函数)

# 自定义工具类:封装常用的可复用函数
def calculate_sum(a, b):
    """自定义加法计算函数,返回两个数的和"""
    return a + b

def multiply_list(num_list):
    """自定义列表乘法函数,返回列表中所有元素的乘积"""
    result = 1
    for num in num_list:
        result *= num
    return result

def format_string(text, prefix="[自定义前缀]", suffix="【自定义后缀】"):
    """自定义字符串格式化函数,给文本添加前后缀"""
    return f"{prefix}{text}{suffix}"

# 可选:测试代码(仅本地运行时生效,上传后不影响主脚本调用)
if __name__ == "__main__":
    print("本地测试 my_utils.py 函数")
    print(calculate_sum(2, 3))
    print(multiply_list([1,2,3,4]))
    print(format_string("测试文本"))

步骤 2:上传自定义代码文件至在线Python环境

  1. 打开在线Python工具:https://toolshu.com/python3
  2. 找到界面中的「文件」功能,点击展开文件管理面板
  3. 在文件管理面板中,找到「上传文件」按钮
  4. 点击「上传文件」,在弹出的本地文件选择窗口中,选中本地编写好的 my_utils.py,完成上传
    • 提示:支持批量上传或单个依次上传,文件上传后默认在编译器环境同级目录
  5. 上传完成后,在「文件列表」中可看到 my_utils.py文件,表明文件上传成功

步骤 3:在交互式编辑器中调用执行自定义代码

  1. 清空在线编辑器默认内容,直接输入以下导入和调用代码:
    # 直接在交互式编辑器中导入已上传的自定义脚本
    import my_utils
    from my_utils import format_string  # 直接引入具体的函数名
    
    # 快速调用自定义函数
    print("直接调用自定义函数:", my_utils.calculate_sum(100, 200))
    print("直接调用自定义列表乘法函数:", my_utils.multiply_list([2, 4, 6, 8]))
    print("直接调用字符串格式化函数:", format_string("交互式调用测试"))
    
  2. 点击「运行」按钮,即可快速验证自定义代码的可用性

步骤 4:查看调用结果与文件管理

  1. 查看执行结果:运行完成后,控制台会输出自定义函数的调用日志,可直观查看计算结果和格式化效果,验证代码逻辑是否正确
  2. 编辑自定义代码:若需修改函数逻辑,可在本地修改后,重新上传新的代码文件至「文件列表」,即可生效
  3. 多文件关联调用:若有多个自定义模块(如 my_calc.pymy_data.py),只需全部上传至同一目录,即可在主脚本中分别导入调用,实现复杂模块化开发

常见场景示例

场景 1:上传自定义工具类,实现数据处理复用

# 自定义数据处理脚本:my_data_processor.py(上传后调用)
def clean_data(data_list):
    """去除列表中的空值和重复值,返回清洗后的列表"""
    # 去除空值
    non_null_data = [item for item in data_list if item is not None and item != ""]
    # 去除重复值
    unique_data = list(dict.fromkeys(non_null_data))
    return unique_data

def sort_data(data_list, reverse=False):
    """对列表进行排序,默认升序,reverse=True 为降序"""
    return sorted(data_list, reverse=reverse)
# 主脚本:调用数据处理工具类
from my_data_processor import clean_data, sort_data

# 原始待处理数据
raw_data = [10, 5, None, 8, 10, "", 3, 8]
# 清洗数据
cleaned_data = clean_data(raw_data)
print("清洗后的数据:", cleaned_data)
# 排序数据
sorted_data = sort_data(cleaned_data, reverse=True)
print("降序排序后的数据:", sorted_data)

场景 2:上传自定义业务脚本,实现特定功能调用

# 自定义业务脚本:my_business.py(上传后调用)
def calculate_monthly_profit(revenue, cost):
    """计算月度利润:利润 = 营收 - 成本"""
    profit = revenue - cost
    return profit, f"月度营收:{revenue} 元,月度成本:{cost} 元,月度利润:{profit} 元"

def judge_profit_status(profit):
    """判断利润状态"""
    if profit > 10000:
        return "盈利良好"
    elif profit > 0:
        return "轻微盈利"
    elif profit == 0:
        return "盈亏平衡"
    else:
        return "亏损状态"
# 主脚本:调用业务脚本实现利润计算
import my_business

# 传入业务数据
monthly_revenue = 50000
monthly_cost = 28000

# 调用自定义业务函数
profit_amount, profit_desc = my_business.calculate_monthly_profit(monthly_revenue, monthly_cost)
profit_status = my_business.judge_profit_status(profit_amount)

# 输出结果
print(profit_desc)
print(f"本月利润状态:{profit_status}")

注意事项

  1. 上传的自定义代码文件需确保文件名后缀为 .py,且文件内无语法错误,否则会导致导入调用失败
  2. 多文件调用时,需确保所有关联文件存放于同一目录(在线工具默认根目录),避免导入路径错误
  3. 虚拟文件系统的文件与当前会话绑定,关闭浏览器页面后文件可能丢失,建议及时下载修改后的自定义代码
  4. 自定义代码中若依赖第三方库(如 Pandas、NumPy),需先在在线环境中安装对应库,再进行导入调用
  5. 适用于中小型模块化脚本调用,不建议上传超大文件(如超过10MB)或高资源消耗的自定义代码

总结

该在线Python工具不仅支持快速编写和执行单文件代码,还能通过文件上传功能实现自定义代码的模块化调用,显著降低了Python模块化开发的入门门槛。无需本地配置环境,即可实现自定义脚本的复用、编辑和调试,特别适合教学演示、代码验证、临时项目开发和模块化逻辑测试。

立即体验上传自定义代码并调用:https://toolshu.com/python3

发现周边 发现周边
评论区

加载中...