仅将一些元组元素展开到变量列表

lin*_*ndy 3 python iterable-unpacking

说我有以下代码:

from urlparse import urlparse
parsed_url = urlparse(url)
scheme, netloc, path = parsed_url[0], parsed_url[1], parsed_url[2]
Run Code Online (Sandbox Code Playgroud)

是否有更优雅或简短的方式来分配这三个变量?写parsed_url三次看起来有点乱(我期待除了重命名之外的其他parsed_url东西).

Joh*_*ica 7

你可以将元组切成两半:

scheme, netloc, path = parsed_url[:3]
Run Code Online (Sandbox Code Playgroud)

或者,为了明确表示有六个值并且您忽略其中三个,您可以分配一个名为的虚拟变量_:

scheme, netloc, path, _, _, _ = parsed_url
Run Code Online (Sandbox Code Playgroud)