首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python语法-两个较少的符号和一个等号意味着什么?

问Python语法-两个较少的符号和一个等号意味着什么?
EN

Stack Overflow用户
提问于 2016-05-26 22:41:35
回答 2查看 42关注 0票数 1

我搜索了一个示例来将WINAPI填充值转换为UNIX (对于一个新的time_t项目),并找到了一个Python中的示例。

虽然过去我用Python编写了许多代码,但在该示例中,我不知道<<=和|=语法,而且Google无法为这些搜索语句生成可用的结果。

有人能跟我解释一下他们是干什么的吗?

代码语言:javascript
复制
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)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-05-26 22:43:39

这是取自C的,它是'<<‘或’AC.26‘运算符(按位向左移位和按位移动或分别)加上赋值运算符:

代码语言:javascript
复制
a <<= b

是相同的

代码语言:javascript
复制
a = a << b

同样适用于|=。

票数 3
EN

Stack Overflow用户

发布于 2016-05-26 22:43:09

它们是位移位运算符<<和按位或|的增广赋值版本,就像+=是增广+一样,因此:

代码语言:javascript
复制
timestamp <<= 32

等于

代码语言:javascript
复制
timestamp = timestamp << 32
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37472203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档