首页 > 分享 > python中x y的意思

python中x y的意思

最新推荐文章于 2024-11-08 14:09:44 发布

weixin_39623411 于 2020-12-06 07:44:09 发布

If you run x = 'y' 'z' in Python, you get x set to 'yz', which means that some kind of string concatenation is occurring when Python sees multiple strings next to each other.

But what kind of concatenation is this?

Is it actually running 'y' + 'z' or is it running ''.join('y','z') or something else?

解决方案

The Python parser interprets that as one string. This is well documented in the Lexical Analysis documentation:

String literal concatenation

Multiple adjacent string literals (delimited by whitespace), possibly using different quoting conventions, are allowed, and their meaning is the same as their concatenation. Thus, "hello" 'world' is equivalent to "helloworld".

The compiled Python code sees just the one string object; you can see this by asking Python to produce an AST of such strings:

>>> import ast

>>> ast.dump(ast.parse("'hello' 'world'", mode='eval').body)

"Str(s='helloworld')"

In fact, it is the very act of building the AST that triggers the concatenation, as the parse tree is traversed, see the parsestrplus() function in the AST C source.

The feature is specifically aimed at reducing the need for backslashes; use it to break up a string across physical lines when still within a logical line:

print('Hello world!', 'This string is spans just one '

'logical line but is broken across multiple physical '

'source lines.')

Multiple physical lines can implicitly be joined into one physical line by using parentheses, square brackets or curly braces.

This string concatenation feature was copied from C, but Guido van Rossum is on record regretting adding it to Python. That post kicked of a long and very interesting thread, with a lot of support for removing the feature altogether.

相关知识

python中x y的意思,在Python中x ='y''z'的含义是什么?
在Python中x=y=z的引擎盖下是什么?
Python中is和==的区别详解
【Python绘画】花朵
C语言 z的意思,C语言中z= x是什么意思
教你用Python浪漫表白
python七夕浪漫表白
【Python】基础
C语言x!=y是什么意思C语言x!=y是什 – 手机爱问
如何使用python画玫瑰花

网址: python中x y的意思 https://m.huajiangbk.com/newsview1110749.html

所属分类:花卉
上一篇: 数据中心遍地开花,可视化运维集约
下一篇: 厦门同安区:议理堂遍地开花 一站