程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

python將中文日期轉換為數字日期

編輯:Python


1、說明

這篇文章是幫一個群友解答的問題。
他有一個需求,就是對於日期的錄入都是中文形式的,需要轉換為數字形式的。由於python庫中沒有函數直接進行轉換,因此我寫了本篇文章。
對於本篇文章中的代碼,如果有不懂的地方,可以留言說明,我會解答。

2、測試源數據如下

3、代碼如下
df
=
pd.
read_excel(
r"C:\Users\黃偉\Desktop\chinese_english.xlsx")

display( df)

def func( x):
year = x. split( "年")[ 0]
month = x. split( "年")[ 1]. split( "月")[ 0]
day = x. split( "年")[ 1]. split( "月")[ 1]. split( "日")[ 0]
if len( day) >= 3:
day = day[ 0] + day[ 2]
chinese_english = dict( 零 = 0, 一 = 1, 二 = 2, 三 = 3, 四 = 4, 五 = 5, 六 = 6, 七 = 7, 八 = 8, 九 = 9, 十 = 10)
year = "". join( str( chinese_english[ i]) for i in year)
month = "". join( str( chinese_english[ i]) for i in month)
day = "". join( str( chinese_english[ i]) for i in day)
if len( month) == 3:
month = month[ 0] + month[ 2]
if len( day) == 3:
day = day[ 0] + day[ 2]
final_date = year + "." + month + "." + day
return final_date

df[ "final_date"] = df[ "日期"]. apply( func)
display( df)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.

結果如下:



  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved