小编Chr*_*phe的帖子

列表理解为多个返回函数?

我有一个返回两个值的函数,我想使用列表推导来填充两个列表.例如:

def f(x):
  return 2*x,x*x

x = range(3)
xlist, ylist = [f(value) for value in x]

EDITS from answers below:
xtuple, ytuple = zip(*[f(value) for value in x])
xlist, ylist = map(list,zip(*[f(value) for value in x]))
Run Code Online (Sandbox Code Playgroud)

预期回报应该是:

xlist = [0, 2, 4]
ylist = [0, 1, 4]
Run Code Online (Sandbox Code Playgroud)

我的问题归结为:

目前我得到了一个元组列表,虽然这是合理的,但我最终需要两个独立的列表.目前我可以有1个占位符(元组列表)变量和3个总体理解.但我想知道是否有一种干净的方式来做单列表理解.

值得注意的是:在实际代码中我的两个返回是相关的,所以我不能简单地将函数分成两个.

python list-comprehension python-3.x

12
推荐指数
3
解决办法
7985
查看次数

UIImageView忽略UITableViewCell中的AutoLayout约束

使用autolayout时,我在UITableViewCell内部遇到UIImageView问题.具体来说,我想将图像与边缘(20pt)分开,具有严格的尺寸(50pt),因此我已经定义了这个:imageview到top =导致edgeview = 20 height = width = 50

在此输入图像描述

我发现imageview完全忽略了它的限制(抱歉可怕的笑脸,这是谷歌图片给我的).当然,我想要的布局会有更多内容,但无论内容是否存在,效果都是一样的.

在此输入图像描述

项目的设置如下:创建单个视图应用程序添加表格视图,连接数据源并编写样板文件以使至少一个单元格创建带有nib的tableviewcell,将tableviewcell约束的imageview添加到top/leading( 10个作品,高度为20)在imageview中设置图像,以便您可以在运行时看到它

我觉得这应该足够了,但似乎不起作用,我错过了一些愚蠢的东西吗?为了进行比较,如果没有tableview,这个相同的设置没有问题,imageview的行为就像预期的那样

uiimageview ios autolayout

5
推荐指数
2
解决办法
5258
查看次数