V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
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
Huelse
V2EX  ›  Python

一个简单的 python3 datetime 问题

  •  
  •   Huelse · 2019-05-06 13:32:30 +08:00 · 2739 次点击
    这是一个创建于 1807 天前的主题,其中的信息可能已经有所发展或是发生改变。
    import datetime
    time_tuple = (2019, 5, 6, 13, 8, 10)
    print(datetime.datetime(time_tuple))
    

    报错:

    TypeError: an integer is required (got type tuple)
    

    但是 print(datetime.datetime(2019, 5, 6, 13, 8, 10))完全没问题

    11 条回复    2019-05-07 11:39:57 +08:00
    mxy940127
        1
    mxy940127  
       2019-05-06 13:39:31 +08:00
    datetime.datetime(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]])
    看 api 文档
    nondanee
        2
    nondanee  
       2019-05-06 13:41:06 +08:00 via Android
    print(datetime.datetime(*time_tuple))
    Osk
        3
    Osk  
       2019-05-06 13:43:21 +08:00
    print(datetime.datetime(time_tuple)) --> print(datetime.datetime(*time_tuple))
    Gakho
        5
    Gakho  
       2019-05-06 15:22:53 +08:00
    #2 #3 正解,你应该看一下不定参数的函数是怎么调用的
    KevinBu
        6
    KevinBu  
       2019-05-06 18:34:36 +08:00
    datetime.datetime() 第一个参数是 year

    你给它一个元组,怎么能不报错
    gazhang
        7
    gazhang  
       2019-05-06 18:39:01 +08:00
    @KevinBu 正解
    pkookp8
        8
    pkookp8  
       2019-05-06 18:39:48 +08:00 via Android
    报错的给了一个参数,是 tuple
    不报错的给了 6 个参数
    Huelse
        9
    Huelse  
    OP
       2019-05-06 18:50:25 +08:00
    @mxy940127 #1
    @nondanee #2
    @Osk #3
    @Osk #4
    @Gakho #5
    @KevinBu #6
    @gazhang #7
    @pkookp8 #8
    感谢各位,其实一开始看了文档,当时处于蒙蔽状态,没弄懂,才过来问下,谢谢了!
    cominghome
        10
    cominghome  
       2019-05-07 09:40:12 +08:00
    这种很明显的报错完全可以自己解决的啊兄弟
    neoblackcap
        11
    neoblackcap  
       2019-05-07 11:39:57 +08:00
    import datetime
    time_tuple = (2019, 5, 6, 13, 8, 10)
    print(datetime.datetime(*time_tuple))
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3246 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 13:51 · PVG 21:51 · LAX 06:51 · JFK 09:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.