一种简洁的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()
相关推荐
皮皮学姐分享-ppx5 分钟前
机器人行业工商注册企业基本信息数据(1958-2023年)
大数据·人工智能·python·物联网·机器人·区块链
jingfeng51417 分钟前
线程池及线程池单例模式
linux·开发语言·单例模式
指针刺客28 分钟前
嵌入式筑基之设计模式
开发语言·c++·设计模式
一线码农10241 小时前
Base64解码:从原理到实战技巧
python
青铜发条1 小时前
【python】python进阶——with关键字
开发语言·python
时71 小时前
glb模型横倒的一种程序化解决方式
python
一线码农10241 小时前
Python快速对比Word文档差异技术实现案例
python
一线码农10241 小时前
Excel数据对比:Python自动化实战技巧
python
༒࿈༙྇洞察༙༙྇྇࿈༒1 小时前
jwt原理及Java中实现
java·开发语言·状态模式·jwt
励志成为糕手1 小时前
Java线程池深度解析:从原理到实战的完整指南
java·开发语言·性能优化·线程池·拒绝策略