推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
muziyue
V2EX  ›  Python

Python 问题,这个为啥不对!

  •  1
     
  •   muziyue ·
    Mooooooon · Oct 13, 2014 · 5337 views
    This topic created in 4242 days ago, the information mentioned may be changed or developed.
    29 replies    2014-10-15 08:55:34 +08:00
    jybox
        1
    jybox  
       Oct 13, 2014
    先去除一下尾部的空格?
    muziyue
        2
    muziyue  
    OP
       Oct 13, 2014
    @jybox 好吧 其实只有一行 后面没空格 我是截图的时候看着括号是高亮的看着难受才按了下回车
    jybox
        3
    jybox  
       Oct 13, 2014
    @muziyue 我是说去除一下读入的数据尾部的空格....
    sandtears
        4
    sandtears  
       Oct 13, 2014 via Android
    print 输出的数据,结尾默认带一个 \n
    14
        5
    14  
       Oct 13, 2014 via Android
    为什么通过率这么低。。。
    muziyue
        6
    muziyue  
    OP
       Oct 13, 2014
    @jybox
    谢提醒 仔细看了下 他输入的首位都有个空格
    muziyue
        7
    muziyue  
    OP
       Oct 13, 2014
    @sandtears 这个输出是没问题的,主要是输入和处理
    xifangczy
        8
    xifangczy  
       Oct 13, 2014
    这是什么网站啊
    muziyue
        9
    muziyue  
    OP
       Oct 13, 2014
    @xifangczy jisuanke 你可以找找我以前发的邀请码
    loading
        10
    loading  
       Oct 13, 2014
    这。。。我还是不注册了。
    wizardoz
        11
    wizardoz  
       Oct 13, 2014
    测试用例的结尾有多个空格。先用strip再用split,或者split完过滤一下
    muziyue
        12
    muziyue  
    OP
       Oct 13, 2014
    swirling
        13
    swirling  
       Oct 13, 2014 via iPhone
    没判断空结果集
    muziyue
        14
    muziyue  
    OP
       Oct 13, 2014
    @swirling 测试过了,没用,空能直接返回0不报错
    berry10086
        15
    berry10086  
       Oct 13, 2014 via Android
    这是什么网站
    doomgiant
        16
    doomgiant  
       Oct 13, 2014
    @berry10086

    jisuanke
    bertram
        17
    bertram  
       Oct 13, 2014
    要求要一行代码么?
    muziyue
        18
    muziyue  
    OP
       Oct 13, 2014
    @bertram 不要求……我试过别的写法,还是卡在这里
    mengskysama
        19
    mengskysama  
       Oct 13, 2014   ❤️ 1
    try:
    print len(raw_input().split()[-1])
    except:
    print 0

    TRYTRY?
    不行就把测试数据套出来看看?print raw_input()
    starsoi
        20
    starsoi  
       Oct 13, 2014   ❤️ 1
    try:
    ....print len((raw_input().split() or [''])[-1])
    except EOFError:
    ....print 0
    Delbert
        21
    Delbert  
       Oct 13, 2014   ❤️ 1
    我觉得这个网站有问题,我 Python3 的代码都通不过;我本地通过的代码在线就通不过……
    samnew
        22
    samnew  
       Oct 13, 2014   ❤️ 1
    这个网站python会出现莫名的格式问题 用C做就没事
    swirling
        23
    swirling  
       Oct 13, 2014 via iPhone   ❤️ 1
    我也试了下,py3不能通过~ 2.7没问题~
    xifangczy
        24
    xifangczy  
       Oct 13, 2014   ❤️ 1
    刚刚去注册了 限时注册。
    可能是python版本的关系 第4组输入的是空会出错,需要先判断输入的内容或者用try
    muziyue
        25
    muziyue  
    OP
       Oct 14, 2014
    @mengskysama
    @xifangczy
    可能是这么回事,我本地不会报错,加了try就没问题了
    mengskysama
        26
    mengskysama  
       Oct 14, 2014
    @muziyue
    是这样的
    print ' 123456 1 '.split(' ') -> ['', '123456', '1', '']
    print ' 123456 1 '.split() -> ['123456', '1']
    不用try应该也是可以的,在取[-1]的时候只需要判断一下len是否>0就行了,这个try我是偷懒用建议不要学。
    muziyue
        27
    muziyue  
    OP
       Oct 14, 2014
    @mengskysama 判断结果这个我试过,不行的,不然是输入的还是截取后的
    starsoi
        28
    starsoi  
       Oct 14, 2014   ❤️ 1
    @muziyue @mengskysama 第4组数据并不仅仅是空数据,而是EOF。可以在python console里试试raw_input().strip() 然后不是按回车,而是Ctrl+D(发送EOF),就会报EOFError异常了。raw_input()里文档也说"When EOF is read, EOFError is raised"。所以必须要捕获EOFError这个异常。
    muziyue
        29
    muziyue  
    OP
       Oct 15, 2014
    @starsoi 原来如此,感谢
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   885 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 19:54 · PVG 03:54 · LAX 12:54 · JFK 15:54
    ♥ Do have faith in what you're doing.