Rumah >pembangunan bahagian belakang >Tutorial Python >Super lengkap! Enam cara untuk mendapatkan 'hari dalam seminggu' untuk tarikh tertentu dalam Python!

Super lengkap! Enam cara untuk mendapatkan 'hari dalam seminggu' untuk tarikh tertentu dalam Python!

WBOY
WBOYke hadapan
2023-04-19 09:28:022371semak imbas

Super lengkap! Enam cara untuk mendapatkan 'hari dalam seminggu' untuk tarikh tertentu dalam Python!

Apabila melakukan analisis data dalam Python, pengumpulan dan ringkasan mengikut tarikh juga diperlukan, contohnya, untuk mencari corak jualan berkala.

Kemudian sebelum menggunakan Python untuk statistik data, anda perlu menambah langkah tambahan: dapatkan hari dalam seminggu dari tarikh yang ditentukan. Sebagai contoh, 22 Februari 2022, kebetulan adalah hari Selasa ke-22 dalam bulan lunar pertama, jadi terdapat ramai orang yang mendaftar untuk berkahwin pada hari ini. Artikel ini mengambil 2022-02-22 sebagai contoh untuk menunjukkan 6 cara untuk mendapatkan "hari dalam seminggu" untuk tarikh tertentu dalam Python!

Super lengkap! Enam cara untuk mendapatkan 'hari dalam seminggu' untuk tarikh tertentu dalam Python!

weekday()

Modul datetime ialah perpustakaan terbina dalam Python Tidak perlu memasang pip Selain memaparkan tarikh dan masa, ia juga boleh Melaksanakan operasi dan pemformatan tarikh dan masa.

Kaedah hari minggu() dalam modul datetime boleh digunakan untuk mendapatkan semula hari dalam seminggu Hasilnya mengembalikan integer antara 0 dan 6, digunakan untuk mewakili "Isnin" hingga "Ahad".

Masukkan arahan berikut dalam persekitaran interaktif:

from datetime import datetime
datetime.date(2022, 2, 22).weekday()

Output:

1

Dalam kod, modul datetime akan terdiri daripada tahun, bulan dan hari Tukar tarikh kepada tarikh tarikh masa. Kemudian kaedah hari bekerja() mendapat "2022-02-22" iaitu hari Selasa.

Tetapi mengikut tabiat domestik kita, kita tidak boleh langsung mengeluarkan 1. Oleh itu, kita boleh menyesuaikan senarai yang mengandungi "hari dalam seminggu" bahasa Cina dahulu, dan kemudian mengembalikan hari bahasa Cina dalam seminggu melalui pengindeksan.

Masukkan arahan berikut dalam persekitaran interaktif:

week_list = ["星期一","星期二","星期三","星期四","星期五","星期六","星期日"]
week_list[datetime.date(2022, 2, 22).weekday()]

Output:

'星期二'

Hasilnya ialah Selasa. Kaedah

isoweekday()

isoweekday() berfungsi sama dengan kaedah hari minggu() sebelumnya. Perbezaan terbesar ialah ia mengembalikan integer antara 1-7 untuk mewakili "hari Isnin". ke "Ahad".

Masukkan arahan berikut dalam persekitaran interaktif:

import datetime
datetime.date(2022, 2, 22).isoweekday()

Output:

2

Hasil output kali ini secara langsung "minggu 2".

strftime()

Jika anda ingin terus mengeluarkan nama minggu bahasa Inggeris tarikh tersebut, anda juga boleh mencuba kaedah strftime().

Gunakan kaedah strftime() untuk memaparkan objek datetime sebagai rentetan. Kami sebenarnya sangat biasa dengan menukar format tarikh kepada format rentetan, seperti strftime('%b-%m-%y %H:%M:%S'). hari dalam seminggu.

Masukkan arahan berikut dalam persekitaran interaktif:

import datetime
datetime.date(2022, 2, 22).strftime("%A")

Output:

'Tuesday'

Jika anda menukar %A dalam kod kepada %a, output It ialah singkatan untuk hari dalam seminggu.

datetime.date(2022, 2, 22).strftime("%a")

Output:

'Tue'

kalendar

Modul kalendar dalam Python juga merupakan perpustakaan terbina dalam, yang menyediakan banyak kaedah untuk kami memproses kalendar. Gunakan Ia sangat mudah untuk digunakan dan kami boleh menggunakannya untuk membuat kalendar/kalendar mingguan, dsb. Begitu juga, ia juga menyediakan kaedah hari minggu() dan day_name() untuk menanyakan hari dalam minggu untuk tarikh yang ditentukan.

Masukkan arahan berikut dalam persekitaran interaktif:

import calendar
calendar.weekday(2022, 2, 22)

Output:

1

Ini adalah sama dengan kaedah datetime modul weekday() kaedah pertama kaedah di atas adalah sama.

Jika anda ingin terus mengeluarkan nama minggu bahasa Inggeris tarikh tersebut, modul kalendar juga mempunyai kaedah untuk mencapainya.

import datetime
import calendar
date_week = datetime.date(2022, 2, 22).weekday()
calendar.day_name[date_week]

Output:

'Tuesday'

pendulum

Modul datetime juga mempunyai beberapa had, seperti mengendalikan isu zon waktu dan sebagainya. Modul pendulum ialah perpustakaan sumber terbuka pihak ketiga yang boleh menyelesaikan semua masalah modul datetime terbina dalam.

​https://www.php.cn/link/ebc03fa648c2cd7da9d63b9ed835664e​

Sudah tentu, ia juga mempunyai kaedah untuk mengeluarkan hari dalam seminggu untuk tarikh yang ditetapkan.

Masukkan arahan berikut dalam persekitaran interaktif:

import pendulum
pendulum.parse('2022-02-22').day_of_week

Output:

2

Hasil output secara langsung "minggu 2".

Panda

Akhir sekali, akhirnya, saya ingin bercakap tentang salah satu kaedah yang paling biasa saya gunakan. Oleh kerana Xiaowu biasanya memproses data dalam Panda, kaedah dalam Panda pasti akan diberi keutamaan apabila menjana lajur "minggu".

Series.dt boleh digunakan untuk mengakses nilai siri dalam fesyen seperti tarikh dan mengembalikan beberapa sifat. Fungsi Series.dt.day_name() mengembalikan nama tarikh dengan DateTimeIndex bagi tempat yang ditentukan.

Masukkan arahan berikut dalam persekitaran interaktif:

import pandas as pd
from datetime import datetime
df = pd.DataFrame({
"name": ["张三", "李四", "朱五"],
"date": [datetime(2022, 2, 21), datetime(2022, 2, 22), datetime(2022, 2, 23)]})
df

Output adalah seperti yang ditunjukkan di bawah:

Super lengkap! Enam cara untuk mendapatkan 'hari dalam seminggu' untuk tarikh tertentu dalam Python!

df["week_num1"] = df["date"].dt.dayofweek
df["week_num2"] = df["date"].dt.weekday
df["week_name"] = df["date"].dt.day_name()
df

The output adalah seperti berikut Seperti yang ditunjukkan dalam gambar:

Super lengkap! Enam cara untuk mendapatkan 'hari dalam seminggu' untuk tarikh tertentu dalam Python!

Dalam artikel hari ini, kami memperkenalkan sejumlah 6 kaedah untuk mendapatkan hari dalam seminggu dari tarikh yang ditentukan.

Saya harap perkongsian saya akan membantu anda Jika anda melihat rakan-rakan di penghujung artikel, sila berikan like di sudut kanan bawah sebelum keluar~

Atas ialah kandungan terperinci Super lengkap! Enam cara untuk mendapatkan 'hari dalam seminggu' untuk tarikh tertentu dalam Python!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam