← 返回题库
初级

参数解析

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve(cmd):
    result = []
    i = 0
    n = len(cmd)
    while i < n:
        # 跳过空格
        while i < n and cmd[i] == ' ':
            i += 1
        if i >= n:
            break
        
        if cmd[i] == '"':
            # 纯引号开始的token
            j = i + 1
            while j < n and cmd[j] != '"':
                j += 1
            if j < n:
                result.append(cmd[i:j+1])
            else:
                result.append(cmd[i:])
            i = j + 1
        else:
            # 普通token,但可能包含引号
            j = i
            while j < n and cmd[j] != ' ':
                if cmd[j] == '"':
                    # 遇到引号,继续到结束引号
                    j += 1
                    while j < n and cmd[j] != '"':
                        j += 1
                    if j < n:
                        j += 1  # 包含结束引号
                    break
                j += 1
            result.append(cmd[i:j])
            i = j
    
    print(len(result))
    for p in result:
        print(p)

示例

输入
xcopy /s C:"program files" d:"program files"
期望输出
4
xcopy
/s
C:"program files"
d:"program files"
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码