Hướng dẫn python datetime truncate milliseconds - python datetime cắt ngắn mili giây

My colleague needs me to drop the milliseconds from my python timestamp objects in order to comply with the old POSIX (IEEE Std 1003.1-1988) standard. The tortured route that accomplishes this task for me is as follows:

datetime.datetime.strptime(datetime.datetime.today().strftime("%Y-%m-%d %H:%M:%S"),"%Y-%m-%d %H:%M:%S")

Is there a simpler way to end up with a datetime.datetime object for mongoDB than this?

asked Jul 18, 2015 at 4:17Jul 18, 2015 at 4:17

Hướng dẫn python datetime truncate milliseconds - python datetime cắt ngắn mili giây

Marc MaxmeisterMarc MaxmeisterMarc Maxmeister

3,8473 gold badges36 silver badges49 bronze badges3 gold badges36 silver badges49 bronze badges

1

You can use

>>> d = datetime.datetime.today().replace(microsecond=0)
>>> d
datetime.datetime(2015, 7, 18, 9, 50, 20)
0 method -

>>> d = datetime.datetime.today().replace(microsecond=0)
>>> d
datetime.datetime(2015, 7, 18, 9, 50, 20)

answered Jul 18, 2015 at 4:20Jul 18, 2015 at 4:20

Hướng dẫn python datetime truncate milliseconds - python datetime cắt ngắn mili giây

Anand S KumarAnand S KumarAnand S Kumar

85.6k18 gold badges179 silver badges170 bronze badges18 gold badges179 silver badges170 bronze badges

2

4

Nội dung chính ShowShow

  • Chương trình sau đây minh họa cùng
  • Sử dụng int ()
  • Sử dụng Split ()
  • Sự kết luận
  • Làm cách nào để loại bỏ thời gian thập phân trong Python?
  • Làm cách nào để bỏ qua giá trị thập phân trong Python?
  • Làm thế nào để bạn thoát khỏi số thập phân trong gấu trúc?
  • Làm thế nào để bạn thoát khỏi số thập phân?

Để chuyển đổi số thập phân thành một số hợp lý, hãy làm theo các bước sau: Bước 1: Viết ra số thập phân chia cho 1.Step 2: Nhân cả hai trên và dưới 10 cho mỗi số sau điểm thập phân.(Ví dụ: nếu có hai số sau điểm thập phân, thì hãy sử dụng 100, nếu có ba số thì hãy sử dụng 1000, v.v.)Step 1: Write down the decimal divided by 1.Step 2: Multiply both top and bottom by 10 for every number after the decimal point. (For example, if there are two numbers after the decimal point, then use 100, if there are three then use 1000, etc.)
Learn more.

Nội dung chính Show

Chương trình sau đây minh họa cùng

df1     Time                                 df2     Time
0       00:07:53.755000                      0       00:07:53
1       00:07:54.096000                      1       00:07:54
2       00:07:55.097000                      2       00:07:55
3       00:07:56.099000                      3       00:07:56
4       00:07:57.002000                      4       00:07:57
5       00:07:58.012000                      5       00:07:58

Sử dụng int ()

Sử dụng Split ()

Sự kết luậnFeb 26, 2018 at 23:44

2

Làm cách nào để loại bỏ thời gian thập phân trong Python?

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.Learn more.

Tôi đã có hai DF lớn từ hai bảng tính XLSX và muốn hợp nhất dữ liệu 'trên' Time Stamp ['Time'].

Vấn đề là một tập dữ liệu đã ghi lại thời gian đến số giây và phần còn lại đến cả giây. Điều này có nghĩa là hai khóa tập dữ liệu ['Time'] không bao giờ khớp với ...Feb 27, 2018 at 14:08

Tôi đã thử sửa đổi các định dạng thời gian trong Excel nhưng nó luôn giữ được giá trị mili giây vì điều đó trong 24 giờ. Tôi cần loại bỏ các giây thập phân khỏi DF1 (hoặc chỉ cần chúng phù hợp bằng cách nào đó!) Để cho phép khớp với dữ liệu hàng từ DF2 và tôi hy vọng có một cách đơn giản hơn nhiều để làm điều này trong Python?jpp

Cảm ơn bất kỳ và tất cả lời khuyên!32 gold badges257 silver badges319 bronze badges

Đã hỏi ngày 26 tháng 2 năm 2018 lúc 23:44Feb 26, 2018 at 23:44

df1['Time'] = pd.to_datetime(df1['Time']).dt.strftime('%H:%M:%S')
df2['Time'] = pd.to_datetime(df2['Time']).dt.strftime('%H:%M:%S')

merged = pd.merge(df1, df2, on='Time')

Trong

>>> d = datetime.datetime.today().replace(microsecond=0)
>>> d
datetime.datetime(2015, 7, 18, 9, 50, 20)
1, bạn chỉ có thể đặt micro giây thành 0:Feb 27, 2018 at 0:10

df1['Time'] = pd.to_datetime(df1['Time']).apply(lambda x: x.replace(microsecond=0))
noslenkwah

Sau đó thực hiện hợp nhất của bạn như bình thường.1 gold badge16 silver badges24 bronze badges

2

Đã trả lời ngày 27 tháng 2 năm 2018 lúc 14:08Feb 27, 2018 at 14:08

# convert time to str and remove millisecond
df1['Time'] = df1['Time'].astype(str)
df1['Time'] = df1['Time'].str.replace('\..*','')

# Just to be sure there are no error because of timeformat
df2['Time'] = df2['Time'].astype(str)

# now we can join
df3 = pd.merge(df1, df2, on='Time')

JPPJPPjppFeb 26, 2018 at 23:59

152K32 Huy hiệu vàng257 Huy hiệu bạc319 Huy hiệu đồng32 gold badges257 silver badges319 bronze badgesYOLO

Tôi sẽ sử dụng gấu trúc

>>> d = datetime.datetime.today().replace(microsecond=0)
>>> d
datetime.datetime(2015, 7, 18, 9, 50, 20)
25 gold badges18 silver badges40 bronze badges

0

Đã trả lời ngày 27 tháng 2 năm 2018 lúc 0:10Feb 27, 2018 at 0:10

Noslenkwahnoslenkwahnoslenkwah

1.6221 Huy hiệu vàng16 Huy hiệu bạc24 Huy hiệu đồng1 gold badge16 silver badges24 bronze badges

Output:




Explanation:

Đây là một cách để làm điều này.

Đã trả lời ngày 26 tháng 2 năm 2018 lúc 23:59Feb 26, 2018 at 23:59

YoloyoloYOLO

  1. Phim thương hiệu vàng 18,8K55 gold badges18 silver badges40 bronze badges
  2. Sử dụng int ()
  3. Sử dụng Split ()

Sự kết luận

Chương trình sau đây minh họa cùng

Sử dụng int ()trunc() function and remove the decimal present in the numbers.

Chương trình sau đây minh họa cùng

Output:

523

21

182

211

19

Explanation:

Sử dụng int ()

  1. Sử dụng Split ()trunc() function, we have imported the math module.
  2. Sự kết luận
  3. Làm cách nào để loại bỏ thời gian thập phân trong Python?

Sử dụng int ()

Sử dụng Split ()

Chương trình được đưa ra dưới đây cho thấy cách nó có thể được thực hiện-

Output:




523
21
182

Explanation:

Hãy hiểu những gì chúng ta đã làm ở đây-

  1. Trong bước đầu tiên, chúng tôi đã cung cấp các giá trị nổi cho ba biến và kiểm tra loại của chúng.
  2. Sau đó, chúng tôi đã chuyển từng biến cho int () và lưu trữ chúng cho một biến mới.int() and stored them to a new variable.int() and stored them to a new variable.
  3. Cuối cùng, chúng tôi đã in các giá trị được lưu trữ trong các biến này.
  4. Khi thực hiện chương trình này, đầu ra dự kiến ​​sẽ được hiển thị.

Sử dụng Split ()

Cuối cùng, trong cách tiếp cận cuối cùng, chúng ta sẽ sử dụng Split () thú vị để có được các giá trị số nguyên.

Chương trình sau đây minh họa cùng

Output:

The resultant list is: [523, 21, 182, 211, 19]

Explanation:

Chúng ta hãy xem lời giải thích của chương trình trên-

  1. Trong bước đầu tiên, chúng tôi đã tạo một danh sách chứa tất cả các giá trị thập phân.
  2. Sau đó, chúng tôi đã khai báo một danh sách trống và thêm các giá trị trong đó.
  3. Trong bước tiếp theo, chúng tôi đã lấy từng yếu tố từ danh sách đó và chuyển nó vào int ().
  4. Cuối cùng, chúng tôi đã hiển thị danh sách kết quả có chứa các số mà không có số thập phân.

Sự kết luận

Trong hướng dẫn này, chúng tôi đã bắt đầu với một ý tưởng chung về loại số chúng tôi sử dụng trong Python và sau đó học các phương pháp khác nhau để loại bỏ số thập phân khỏi các số.


Làm cách nào để loại bỏ thời gian thập phân trong Python?

Sử dụng phương thức int () Để loại bỏ số thập phân khỏi một số, chúng ta có thể sử dụng phương thức int () trong python. Phương thức int () lấy số làm đối số và trả về số nguyên bằng cách xóa phần thập phân khỏi nó. Nó cũng có thể được sử dụng với số âm. To remove the decimal from a number, we can use the int() method in Python. The int() method takes the number as an argument and returns the integer by removing the decimal part from it. It can be also used with negative numbers. To remove the decimal from a number, we can use the int() method in Python. The int() method takes the number as an argument and returns the integer by removing the decimal part from it. It can be also used with negative numbers.

Làm cách nào để bỏ qua giá trị thập phân trong Python?

Chuyển đổi loại trong Python giúp chuyển đổi số giá trị thập phân (số nổi) thành số nguyên.Do đó chuyển đổi float-> int loại bỏ tất cả số thập phân khỏi một số.float->int removes all decimals from a number.float->int removes all decimals from a number.

Làm thế nào để bạn thoát khỏi số thập phân trong gấu trúc?

Bạn có một vài lựa chọn......

Chuyển đổi mọi thứ thành số nguyên.DF.Asype (Int) 35 Cắt canxi 0 1 Đồng 1 0 Helium 0 8 Hydrogen 0 1 ..

Sử dụng vòng: >>> DF.vòng () 35 canxi cắt 0 1 đồng 1 0 helium 0 8 hydro 0 1. nhưng không phải lúc nào cũng tuyệt vời ... ....

Thay đổi tùy chọn chính xác hiển thị của bạn trong gấu trúc ..

Làm thế nào để bạn thoát khỏi số thập phân?

Để chuyển đổi số thập phân thành một số hợp lý, hãy làm theo các bước sau: Bước 1: Viết ra số thập phân chia cho 1.Step 2: Nhân cả hai trên và dưới 10 cho mỗi số sau điểm thập phân.(Ví dụ: nếu có hai số sau điểm thập phân, thì hãy sử dụng 100, nếu có ba số thì hãy sử dụng 1000, v.v.)Step 1: Write down the decimal divided by 1.Step 2: Multiply both top and bottom by 10 for every number after the decimal point. (For example, if there are two numbers after the decimal point, then use 100, if there are three then use 1000, etc.)Step 1: Write down the decimal divided by 1. Step 2: Multiply both top and bottom by 10 for every number after the decimal point. (For example, if there are two numbers after the decimal point, then use 100, if there are three then use 1000, etc.)