题解 | #参数解析#

参数解析

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

while True:
    try:
        s = input().strip()
#         print(len(s))
#         for item in s:
#             print(item)
        para = []
        temp = ''
        brackets = 0 #用来判断遇到空格是否结束当前参数
        for char in s:
            if char == '"':
                brackets ^= 1 #奇数个'"' when brackets equal to zero, it has already counted even number of '"'
                continue # continue 很重要,不要把引号和空格都加入到参数中
            if char == ' ' and brackets == 0:
                para.append(temp)
                temp = '' # 记得重置
                continue
            temp += char
        para.append(temp) # 最后一个temp 因为遇不到空格了,所以还需要手动加入
        print(len(para))
        for item in para:
            print(item)
    except EOFError:
        break


全部评论

相关推荐

预计下个星期就能开奖吧,哪位老哥来给个准信
华孝子爱信等:对接人上周说的是这周
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 18:54
点赞 评论 收藏
分享
听说改名字就能收到offer哈:Radis写错了兄弟
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务