我有一个字典,其键作为元组和值分配给这些键。
我想根据键位置执行一系列操作。
这是我到目前为止编写的代码。
字典:
p={(0, 1): 2, (1, 2): 6, (0, 0): 1, (2, 0): 7, (1, 0): 4, (2, 2): 9, (1, 1): 5, (2, 1): 8, (0, 2): 3}
所需的输出是:
我想要各行的值如下所示。
q=[[1,2,3], [4,5,6], [7,8,9]]
我写了这段代码可以为列做这个技巧:
r=[[p[(x,y)] for x in range(3)] for y in range(3)]
输出如下所示:
r=[[1, 4, 7], [2, 5, 8], [3, 6, 9]]
我知道如何使用以下代码执行此操作:
z=[]
for i in range(3):
z.append([p[i,j] for j in range(3)])
这给了我:
z=[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
我的问题是,我可以在一个列表理解中进行该操作吗?
提前致谢。
答案 0 :(得分:1)
如果您在x
的代码中翻转y
和r
,它似乎会以您希望的方式输出。例如,
r=[[p[(x,y)] for y in range(3)] for x in range(3)]
结果
[[1,2,3],[4,5,6],[7,8,9]]
答案 1 :(得分:1)
我曾尝试在代码中做几件事。我写了它但没有意识到这一点,并继续尝试与代码的不同组合。
以下是答案:
-(NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewRowAction *editAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"Clona" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath){
//insert your editAction here
}];
editAction.backgroundColor = [UIColor blueColor];
UITableViewRowAction *deleteAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"Delete" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath){
//insert your deleteAction here
}];
deleteAction.backgroundColor = [UIColor redColor];
return @[deleteAction,editAction];
}
谢谢!