python怎么把字符串转为datetime类型
时间: 2023-06-11 11:08:33 浏览: 62
你可以使用Python的`datetime`模块来把字符串转换为`datetime`类型。具体的方法是使用`datetime.strptime()`函数,该函数可以接受两个参数: 第一个参数是要转换的字符串,第二个参数是字符串的格式。如下面的例子所示:
```python
from datetime import datetime
date_string = '2021-07-20 12:30:45'
date_format = '%Y-%m-%d %H:%M:%S'
datetime_object = datetime.strptime(date_string, date_format)
print(type(datetime_object))
print(datetime_object)
```
输出:
```
<class 'datetime.datetime'>
2021-07-20 12:30:45
```
在上面的例子中,我们首先定义了一个字符串变量`date_string`和一个格式化字符串`date_format`,然后使用`datetime.strptime()`函数把`date_string`转换为`datetime`类型的对象`datetime_object`。最后,我们打印出`datetime_object`的类型和值。
需要注意的是,`datetime.strptime()`函数的第二个参数`date_format`必须与要转换的字符串的格式完全一致,否则会抛出`ValueError`异常。
相关问题
pandas将某一列字符串转为datetime类型
可以使用 `pandas` 的 `to_datetime` 方法将某一列字符串转为 `datetime` 类型。示例代码如下:
```python
import pandas as pd
# 创建一个示例数据集
df = pd.DataFrame({
'date_str': ['2022-01-01', '2022-01-02', '2022-01-03', '2022-01-04', '2022-01-05'],
'value': [1, 2, 3, 4, 5]
})
# 将字符串列转为 datetime 类型
df['date'] = pd.to_datetime(df['date_str'])
# 删除原始的字符串列
df.drop(columns=['date_str'], inplace=True)
print(df)
```
输出结果如下:
```
value date
0 1 2022-01-01
1 2 2022-01-02
2 3 2022-01-03
3 4 2022-01-04
4 5 2022-01-05
```
在这个例子中,我们使用 `pd.to_datetime()` 方法将 `date_str` 列转换为 `datetime` 类型,并将转换后的数据存储到 `date` 列中。最后,我们删除了原始的 `date_str` 列。
python字符串日期转为int类型
可以使用Python内置的datetime模块来实现字符串日期转为int类型的操作。具体的实现方法如下:
```python
from datetime import datetime
date_str = "2022-01-01"
date_obj = datetime.strptime(date_str, "%Y-%m-%d")
date_int = int(date_obj.timestamp())
print(date_int)
```
解释一下上述代码:
1. 首先导入datetime模块。
2. 定义一个字符串类型的日期date_str。
3. 使用datetime模块中的strptime函数将字符串类型的日期转换为datetime对象date_obj,其中"%Y-%m-%d"是指定日期字符串的格式。
4. 使用datetime对象的timestamp方法将日期转换为时间戳(单位为秒)。
5. 最后使用int函数将时间戳转换为整型。
6. 打印输出结果date_int。