一种简洁的python指令处理脚本

基本代码

如果想增加功能,可以在功能区直接声明新的函数,然后改一下大纲和入口。

python3 复制代码
import re

# 大纲 

def print_help():
     print("""[help
     输入指令以执行。
     输入"."以退出。
     hello : 示例功能,输出"Hello World"
     in [str] [str] : 示例功能,接收两个字符串
     """)

# 功能区

def f1():
    print("Hello World")

def f2(s1, s2):
    print(f"收到字符串{s1}和{s2}")

#入口

while True:
    cmd = input("\n_ ")
    if cmd == ".":
        break
    elif cmd == "hello":
        f1()
    elif s := re.match(r"in (\S+) (\S+)", cmd):
        f2(s.group(1), s.group(2))
    else:
        print_help()

静态化

增加一个设计,可以在执行之前决定一定要执行哪些指令。

python 复制代码
import re

# 大纲 

def print_help():
     print("""[help]
     输入指令以执行。
     输入"."以退出。
     hello : 示例功能,输出"Hello World"
     in [str] [str] : 示例功能,接收两个字符串
     """)

# 功能区

def f1():
    print("Hello World")

def f2(s1, s2):
    print(f"收到字符串{s1}和{s2}")

#入口

def process(cmd):
    if cmd == ".":
        return False
    elif cmd == "hello":
        f1()
    elif s := re.match(r"in (\S+) (\S+)", cmd):
        f2(s.group(1), s.group(2))
    else:
        print_help()
    return True

def run_script():
    while True:
        cmd = input("_")
        if not process(cmd)
            break

# 静态测试

process("hello")

# 启用脚本

run_script()
相关推荐
2401_88962692几秒前
Java流程控制与方法全解析
java·开发语言
码界筑梦坊3 分钟前
329-基于Python的交通流量数据可视化分析系统
开发语言·python·信息可视化·数据分析·django·vue·毕业设计
yong99906 分钟前
带挂载的四轴飞行器模型预测控制(MPC) MATLAB实现
开发语言·matlab
报错小能手10 分钟前
ios开发方向——对于实习开发的app(Robopocket)讲解
开发语言·学习·ios·swift
wjs202412 分钟前
Swift 方法
开发语言
计算机安禾17 分钟前
【数据结构与算法】第18篇:数组的压缩存储:对称矩阵、三角矩阵与稀疏矩阵
c语言·开发语言·数据结构·c++·线性代数·算法·矩阵
华科易迅21 分钟前
MybatisPlus乐观锁
java·开发语言·mybatis
迈巴赫车主27 分钟前
错位排序算法
开发语言·数据结构·算法·排序算法
zzb158027 分钟前
Agent记忆与检索
java·人工智能·python·学习·ai
wzl2026121337 分钟前
从0到1搭建私域数据中台——公域引流的数据采集与分析
python·自动化·企业微信