python函数返回多个值的示例方法

yipeiwu_com7年前Python基础

python可以返回多个值,确实挺方便
函数里的return只能返回一个值,但是返回类型是没是限制的
因此,我们可以“返回一个 tuple类型,来间接达到返回多个值”。
例子是我在robot framework source code 时的例子:

复制代码 代码如下:

    def __init__(self, cells):
        self.cells, self.comments = self._parse(cells)

    def _parse(self, row):
        data = []
        comments = []
        for cell in row:
            cell = self._collapse_whitespace(cell)
            if cell.startswith('#') and not comments:
                comments.append(cell[1:])
            elif comments:
                comments.append(cell)
            else:
                data.append(cell)
        return self._purge_empty_cells(data), self._purge_empty_cells(comments)

当时__init__是类的构造函数,他将得到有_parse解析回来的多个返回值,self._purge_empty_cells(data) 赋给self.cells, self._purge_empty_cells(comments)赋给self.comments
就这么简单 :)

相关文章

Python 使用类写装饰器的小技巧

最近学到了一个有趣的装饰器写法,就记录一下。 装饰器是一个返回函数的函数。写一个装饰器,除了最常见的在函数中定义函数以外,Python还允许使用类来定义一个装饰器。 1、用类写装饰器 下...

从Python的源码浅要剖析Python的内存管理

从Python的源码浅要剖析Python的内存管理

Python 的内存管理架构(Objects/obmalloc.c): 复制代码 代码如下:     _____   ______&nb...

简单介绍Python中的round()方法

 round()方法返回 x 的小数点四舍五入到n个数字。 语法 以下是round()方法的语法: round( x [, n] ) 参数  &nbs...

pytorch使用指定GPU训练的实例

本文适合多GPU的机器,并且每个用户需要单独使用GPU训练。 虽然pytorch提供了指定gpu的几种方式,但是使用不当的话会遇到out of memory的问题,主要是因为pytorc...

pytorch 指定gpu训练与多gpu并行训练示例

一. 指定一个gpu训练的两种方法: 1.代码中指定 import torch torch.cuda.set_device(id) 2.终端中指定 CUDA_VISIBLE_DEV...