在python中//是啥意思?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在python中//是啥意思?相关的知识,希望对你有一定的参考价值。
Python中的//是向下取整的意思。a//b,应该是对除以b的结果向负无穷方向取整后的数
5//2=2(2.5向负无穷方向取整为2),同时-5//2=-3(-2.5向负无穷方向取整为-3)
/与//的区别
在Python中/表示浮点整除法,返回浮点结果,也就是结果为浮点数;而//在Python中表示整数除法,返回大于结果的一个最大的整数,意思就是除法结果向下取整。 参考技术A
在Python" // "表示整数除法。
Python其它表达式:
Python的表达式写法与C/C++类似。只是在某些写法有所差别。
主要的算术运算符与C/C++类似。+, -, *, /, //, **, ~, %分别表示加法或者取正、减法或者取负、乘法、除法、整除、乘方、取补、取余。
>>, <<表示右移和左移。&, |, ^表示二进制的AND, OR, XOR运算。>, <, ==, !=, <=, >=用于比较两个表达式的值,
分别表示大于、小于、等于、不等于、小于等于、大于等于。在这些运算符里面,~, |, ^, &, <<, >>必须应用于整数。
Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。
Python开发者的哲学:
“用一种方法,最好是只有一种方法来做一件事”。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。
由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。
`<>` 在 Python 中是啥意思?
【中文标题】`<>` 在 Python 中是啥意思?【英文标题】:What does `<>` mean in Python?`<>` 在 Python 中是什么意思? 【发布时间】:2013-05-20 21:22:05 【问题描述】:我正在尝试在 Python 3.3 中使用一个旧库(从 2003 年开始!)。当我导入它时,Python 会抛出一个错误,因为源文件中有 <>
符号,例如:
if (cnum < 1000 and nnum <> 1000 and ntext[-1] <> "s":
...
我猜这是该语言中现已废弃的标志。
这到底是什么意思,我应该用哪个(更新的)标志来代替它?
【问题讨论】:
我想指出,它显然不是一个 Python 3.3 库,而是一个 Python 2.x 库。!=
can also be written <>
, but this is an obsolete usage kept for backwards compatibility only. New code should always use !=
@GrijeshChauhan 在 3.x 中,这不是真的。正如下面的答案所述,它不仅过时,而且根本不是有效的语法。
让我想起了 ML 中的比较。
【参考方案1】:
意思是不等于。取自ABC
(python的前身)见here:
x < y, x <= y, x >= y, x > y, x = y, x <> y, 0 <= d < 10
顺序测试(
<>
表示'不等于')
我相信 ABC
是从 Pascal 那里得到的,Pascal 是 Guido 开始编程时使用的语言。
它现在已在 Python 3 中删除。请改用 !=
。如果你是CRAZY,你可以废弃!=
,并在Py3K中使用this easter egg只允许<>
:
>>> from __future__ import barry_as_FLUFL
>>> 1 != 2
File "<stdin>", line 1
1 != 2
^
SyntaxError: with Barry as BDFL, use '<>' instead of '!='
>>> 1 <> 2
True
【讨论】:
__future__
导入确实不“在 Python3 中取回它”。它有效地替换 !=
。导入后,表达式1 != 2
引发SyntaxError
。
其实这不是历史。这是 4 月 1 日的笑话。见PEP-401。
只是一个相关问题的链接:So what exactly does “from future import barry_as_FLUFL” do?
重要的是(正如 one of the answers 对 Alvin Wong 的链接所指出的那样),__future__
导入仅在 REPL 中“有效”,而不是在脚本中。【参考方案2】:
这意味着不等于,但已弃用,请改用!=
。
【讨论】:
不推荐使用:在 Python 3 中,这是一个语法错误,正如提问者所发现的那样。 为什么有人会为已接受的问题添加-1?请发表评论,这样我可以解决问题,如果有的话.. @PeterVaro 我赞成你的,但总的来说(不是在这种情况下!)如果反对者认为它不好并且接受一个不好的决定(再次,在这种情况下不适用)。 也就是说,我也想知道在这种情况下出现 -1 的原因 - 答案完全有效且正确。 @glglgl 我自己也经历过——有人觉得这个问题不应该被问到,即使答案是正确的,也会惩罚任何留下答案的人。我自己不相信这一点,我保留对实际上不正确或在某种程度上有害的答案投反对票。【参考方案3】:值得了解的是,您可以使用 Python 本身来查找文档,即使是 Google 无法处理的标点符号运算符。
>>> help("<>")
比较
与 C 不同,Python 中的所有比较操作都具有相同的优先级, 它低于任何算术、移位或按位的 手术。同样与 C 不同的是,
a < b < c
这样的表达式具有 数学中的常规解释:比较产生布尔值:
True
或False
。比较可以任意链接,例如,
x < y <= z
是 等效于x < y and y <= z
,除了评估y
只有一次(但在这两种情况下,当发现x < y
为假时,根本不会评估z
)。
<>
和!=
的形式是等价的;为了与 C 保持一致, 首选!=
;其中!=
在下面提到<>
也是 公认。<>
拼写已过时。
见http://docs.python.org/2/reference/expressions.html#not-in
【讨论】:
这也出现在 python 3 中(嗯,对我来说有些不同)。多么奇怪。 +1 这将是一个很好的答案,只是它似乎与<>
运算符本身一样过时。 @TerryA 我在 Python 3.8.6 中找不到该文本。【参考方案4】:
这是一种指定!=
的旧方法,已在 Python 3 中删除。足以使用它的库也可能遇到与 Python 3 的各种其他不兼容问题:它可能是通过2to3 运行它是一个好主意,它会自动更改这一点,等等。
【讨论】:
【参考方案5】:使用!=
或<>
。两者都代表不相等。
[参考:Python 语言参考]
比较运算符<>
和!=
是同一运算符的替代拼写。 !=
是首选拼写; <>
已过时。
【讨论】:
以上是关于在python中//是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章
最近在自学python girlphoto_urls = selector.xpath('//div/a/img/@src')这句是啥意思?大神