有没有办法像这样编写Python?我想在同一文件中分配值之前使用它:
extern ws2
def myfunc(ws2)
print(ws2)
ws2= '''
more than 200 chars
more than 200 chars
'''
在C ++中我们可以编写这样的代码 (以下代码位于同一文件中):
extern std::wstring ws2;
void func()
{
std::wcout << ws2 << std::endl;
}
std::wstring ws2(L"...more than 200 chars");
答案 0 :(得分:4)
完全相同的东西可以使用,只要你在时间上使用字符串比定义时使用字符串。在函数内部使用它并在模块级别声明它通常是这样的:
def func():
print(ws2)
ws2 = 'more than 200 chars...'
会正常工作。
那就是说,这将是更难来阅读,而不是惯用的,并且如果你在定义字符串之前在模块级调用该函数,它将会中断。
我会使用这样一个事实:紧接着的多个字符串文字被解析为单个字符串文字(就像在C中一样),并且总是在模块的顶部定义常量:
WS2 = (
"some part of the string"
"another part"
"on and on until we have all 200 characters."
)
def func():
(我还将名称放在大写字母中,因为它是模块级别常量)