Skip to main content
 首页 » 编程设计

Python 语法之两个减号和一个等号是什么意思

2025年05月04日24luoye11

我搜索了一个示例来转换 WINAPI FILETIME将值导入 UNIX time_t(用于新的 Golang 项目)并找到 example in Python .

尽管我过去用 Python 编写过很多代码,但我不知道 <<=和 |=该示例中的语法和 Googles 无法为这些搜索语句生成可用的结果。

有人可以向我解释一下他们的工作吗?

import datetime 
 
_FILETIME_null_date = datetime.datetime(1601, 1, 1, 0, 0, 0) 
def FiletimeToDateTime(ft): 
    timestamp = ft.dwHighDateTime 
    timestamp <<= 32 
    timestamp |= ft.dwLowDateTime 
    return _FILETIME_null_date + datetime.timedelta(microseconds=timestamp/10) 

请您参考如下方法:

这取自 C。它是 '<<' 或 '|'运算符(分别按位左移和按位或)加上赋值运算符:

a <<= b 

与

相同
a = a << b 

与|=类似。