আমি কীভাবে ডেটটাইমকে ডেটে রূপান্তর করব (পাইথনে)?


643

আমি কীভাবে কোনও datetime.datetimeবস্তুকে রূপান্তর করব (উদাহরণস্বরূপ, পাইথনের datetime.datetime.now())কোনও datetime.dateবস্তুর ফেরতের মান) ?


16
আপনার যদি কেবল এটির প্রয়োজন হয় datetime.datetime.now()তবে দয়া করে মনে রাখবেন যে একটি পদ্ধতি রয়েছে datetime.date.today()।
— থিয়েরি জে

আপনি যদি ইতিমধ্যে ডেটটাইম আমদানি করে থাকেন যেমন উদাহরণস্বরূপ from datetime import datetimeআপনি তারিখটি যুক্ত করতে পারেনfrom datetime import datetime, date
— জোশ

উত্তর:


981

date()পদ্ধতিটি ব্যবহার করুন :

datetime.datetime.now().date()

14
ইউটিসি-তে যাওয়ার জন্য যা খুব সহায়ক হতে পারে -> datetime.datetime.utcnow()এবং ততক্ষণেdatetime.datetime.utcnow().date()
— নিক ব্রাডি

2
ধন্যবাদ @ সান কলম্বো, একটি নির্দিষ্ট টাইমজোনের বর্তমান তারিখটি হওয়া উচিতdatetime.datetime.now(pytz.timezone('US/Pacific')).date()
— মোনিকা সিইওর জন্য


62

আপনি datetime.datetime.date()পদ্ধতিটি ব্যবহার করুন :

datetime.datetime.now().date()

স্পষ্টতই, উপরের অভিব্যক্তিটি (এবং আইএমএইচও :) হওয়া উচিত:

datetime.date.today()

14
লোকটিকে বিভ্রান্ত করবেন না
— ফিয়াতজাফ

1
সত্যি কথা বলতে .today()গেলে , এই উত্তরটি (ব্যবহার করা ) বর্ণিত উদাহরণ প্রশ্নের জন্য সর্বাধিক পাইথোনিক।
— ড্যানিড

2
আপনি যদি আজ ব্যবহার করেন তবে কোনও তারিখের সাথে তুলনা করার সময় সাবধানতা অবলম্বন করুন। today()একটি ঘন্টা উপাদান রয়েছে। সুতরাং যদি আপনি এটি করেন: losdat = datetime.datetime.strptime(losdatstr, '%d%m%Y')এবং তবে if losdat < datetime.datetime.today():এটি সর্বদা সত্য losdatহবে কারণ মধ্যরাতের একটি সময় উপাদান থাকবে যা টাইমস্ট্যাম্পের আগে পড়বেtoday()
— ডেনিস ডেকোয়েন

3
@ ডেনিসডেকোইন: যখন কেউ কোনও জিনিস চায় তখন তার datetime.datetime.today()পরিবর্তে কেন ব্যবহার করবেন ? datetime.date.today()datetime.date
— tzot

@ টজোট হ্যাঁ এটিই আমি উল্লেখ করতে চেয়েছিলাম তবে এটি সম্পর্কে অস্পষ্ট ছিল।
— ডেনিস ডেকোয়েন

45

তারিখের সময় অবজেক্টের তারিখ () পদ্ধতির সাহায্যে আপনি একটি ডেটটাইম অবজেক্টকে তারিখে রূপান্তর করতে পারেন:

<datetime_object>.date()

3
import time
import datetime

# use mktime to step by one day
# end - the last day, numdays - count of days to step back
def gen_dates_list(end, numdays):
  start = end - datetime.timedelta(days=numdays+1)
  end   = int(time.mktime(end.timetuple()))
  start = int(time.mktime(start.timetuple()))
  # 86400 s = 1 day
  return xrange(start, end, 86400)

# if you need reverse the list of dates
for dt in reversed(gen_dates_list(datetime.datetime.today(), 100)):
    print datetime.datetime.fromtimestamp(dt).date()

2
আপনি কি এই উত্তরটি এখানে পোস্ট করার অর্থ দিয়েছিলেন? আমার উত্তর দেখে মনে হচ্ছে আপনার উত্তরটি একটি ভিন্ন প্রশ্নের দিকে পরিচালিত।
— সমস্ত কর্মী

2

আপনি এই কোড ফর্মটি প্রবেশ করতে পারেন (আজকের তারিখ এবং দিন এবং নামগুলির নাম) : datetime.datetime.now().strftime('%y-%m-%d %a %H:%M:%S')

'19 -09-09 সোমবার 17:37:56 '

এবং এই কোডটি প্রবেশ করান ( আজকের তারিখটি সহজভাবে) : datetime.date.today().strftime('%y-%m-%d') '19 -09-10 '

বস্তুর জন্য: datetime.datetime.now().date() datetime.datetime.today().date() datetime.datetime.utcnow().date() datetime.datetime.today().time() datetime.datetime.utcnow().date() datetime.datetime.utcnow().time()


ওপি datetime.dateঅবজেক্ট পেতে চেয়েছিল , স্ট্রিং নয়, যা strftimeপ্রত্যাবর্তন করবে (রেফ: ডকস.পাইথন.আর / 3 / লাইব্রেরি / ডেটটাইম.ইচটিএমএল# ডেটটাইম.ডেট.স্ট্রিফটাইম )।
— গ্রজেগোর্জ স্কিবিনস্কি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.