题解 | #参数解析#

参数解析

http://www.nowcoder.com/practice/668603dc307e4ef4bb07bcd0615ea677

拿到题目,第一考虑就是将输入字串按空格拆分,但是双引号中的空格又不能拆分,那么是否可以考虑将双引号中的空格替换为其他字符后再拆分,拆分完成后再将被替换的空格恢复? 答案并不严谨,以通过用例为目的......

while True:
    try:
        s = input()
        new_s = ''  # 定义新字符串
        flag = False  # 设置标志,当遇到引号时标志改变
        for i in s:
            if i == '"':  # 遇到引号,标志改变
                flag = not flag 
            if flag:  # 已经遇到引号,说明此时i必然在引号内
                if i == ' ':  # 当i为空格时,此处将空格替换为'0'
                    i = '0'
                    new_s += i
                else:
                    new_s += i
            else:
                new_s += i
        lst = new_s.split(' ')  # 将新的字符串用空格分割
        print(len(lst))
        for i in lst:
            print(i.replace('0', ' ').replace('"', ''))  # 将被替换为0的空格复原,注意输出中参数不带引号
    except:
        break
        
                
全部评论

相关推荐

07-11 10:56
门头沟学院 Java
码客明:大胆的说自己能实习6个月就行
点赞 评论 收藏
分享
06-26 15:33
青岛工学院 Java
积极的秋田犬要冲国企:他现在邀请我明天面试
点赞 评论 收藏
分享
Rena1ssanc...:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 12:30
点赞 评论 收藏
分享
评论
15
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务