题解 | #参数解析#为什么没人考虑先用引号分割呢

参数解析

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

while True:

try:
    str_input = input()
    # 判断是否有引号
    if str_input.count('"') == 0:
        print(len(str_input.split()))
        for i in str_input.split():
            print(i)
    else:
        # 有引号时,先用引号分割
        list1 = str_input.split('"')
        # 再把第一个和最后一个用空格分割
        left_list = list1[0].split()
        right_list = list1[-1].split()
        
        new_list = left_list + list1[1: -1] + right_list

        print(len(new_list) - new_list.count('') - new_list.count(' '))
        for i in new_list:
            if i != '' or i != ' ':
                print(i)
    
except:
    break
全部评论
你这对于两对引号之间有指令的就不行了啊
4 回复 分享
发布于 2022-06-09 10:33
'xcopy /s "C:\\program files" e f g "d:" a b c',对于像这种两引号中间还有需要空格切分的案例不可行
1 回复 分享
发布于 2022-11-24 14:45 浙江
倒不是运行不了,是对有的情况不合适。 "df fr" f u "a e i o u" r "g sw" 两个引号之间的结果不可行
点赞 回复 分享
发布于 2022-07-27 07:52
运行不了
点赞 回复 分享
发布于 2022-07-18 22:18
不严谨,输入里面可能会有多个引号,用引号切片可能会切出很多片来
点赞 回复 分享
发布于 2022-06-28 16:36
if i != '' or i != ' ': 这个可以不要了
点赞 回复 分享
发布于 2022-06-28 16:33
通俗易懂,干得漂亮
点赞 回复 分享
发布于 2022-04-01 16:11
简单好理解
点赞 回复 分享
发布于 2022-02-14 15:19

相关推荐

评论
9
3
分享

创作者周榜

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