Приведение x.year из Datetime в виде строки - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь создать программу, которая записывает день, месяц и год из Datetime в плоский файл. Однако, похоже, это не позволяет мне отливать отдельные части (день, месяц, год) как строку.

    # Setting Up the Variable:
    x = datetime.datetime.today()
    print(x.year,x.month,x.day,sep='')

    # Writing to file
    fo.write("350|")
    #working
    fo.write(x.year)

Я запускаю его и получаю следующую ошибку:

File "main.py", line 408, in MTDReq
fo.write(x.year)
TypeError: write() argument must be str, not int**

Я пытался привести его обычным способом с помощью "Year = str (x.year), но, очевидно, это не у меня нет вариантов, у кого-нибудь есть идеи?

Заранее большое спасибо!

1 Ответ

0 голосов
/ 28 января 2020

fo.write(str(x.year)) не имеет причин не работать, хотя вам, вероятно, следует использовать datetime.strftime('%Y').

Выглядит так, как будто вы пишете поля по отдельности, что немного странно, почему бы не использовать пользовательский CSV диалект и запись выходной записи по записи через это?

...