Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用日期python的输入_Python_Python 3.x - Fatal编程技术网

使用日期python的输入

使用日期python的输入,python,python-3.x,Python,Python 3.x,我试图用Python3编写一个简单的代码,显示输入月份、年份和日期的日期。代码如下: from datetime import date s = date(2016, 4, 29).weekday() if s == 0: print ("mon") if s == 1: print ("tue") if s == 2: print ("wed") if s == 3: print ("thurs") if s == 4: print ("fri") i

我试图用Python3编写一个简单的代码,显示输入月份、年份和日期的日期。代码如下:

from datetime import date
s = date(2016, 4, 29).weekday()

if s == 0:
    print ("mon")
if s == 1:
    print ("tue")
if s == 2:
    print ("wed")
if s == 3:
    print ("thurs")
if s == 4:
    print ("fri")
if s == 5:
    print ("sat")
if s == 6:
    print ("sun")
上面的代码是有效的,但我试着去做

from datetime import date
s = date(int(input())).weekday()
if s == 0:
    print ("mon")
if s == 1:
    print ("tue")
if s == 2:
    print ("wed")
if s == 3:
    print ("thurs")
if s == 4:
    print ("fri")
if s == 5:
    print ("sat")
if s == 6:
    print ("sun")
因此,我可以让用户输入他们自己的日期,但它给了我以下错误:

Traceback (most recent call last): 
  File "..\Playground\", line 2, in <module> 
    s = date(int(input())).weekday() 
ValueError: invalid literal for int() with base 10: '2016,' 
回溯(最近一次呼叫最后一次):
文件“.\playerd\”,第2行,在
s=日期(int(input())。工作日()
ValueError:以10为基数的int()的文本无效:“2016,”
如果有帮助的话,我使用了输入2016、4、29。

您可以:

from datetime import date

usr_date = [int(x) for x in input().split(",")]
d = date(usr_date[0], usr_date[1], usr_date[2]).weekday()
print (d)
datetime.date()。这意味着我们必须:

  • 用逗号拆分
    input()
    返回的字符串,得到三个部分
  • 将每个部分转换为整数
  • 将这些部分输入到
    datetime.date()
如果你问我,这更有意义:

from datetime import datetime

d = datetime.strptime(input(), '%Y,%m,%d').weekday()
print(d)

datetime.strtime()
将字符串作为输入,这很方便,因为
input()
恰好返回字符串。这意味着不需要拆分和强制转换/转换。您可以在中找到
strtime()
支持的所有不同日期格式。

可能重复的
2016,4,29
不是有效的整数。