我正在使用循环创建元组,并且我想将这些元组插入一个大元组中。
假设我的输入是(1、2、3),它是从每个循环生成的,则我的预期输出是((1、2、3),(1、2、3))。
我尝试了多种方法,但仍然无法弄清楚该怎么做。
$rows = mysqli_fetch_assoc($result);
$rows2 = mysqli_fetch_assoc($defaulttable)
foreach($rows as $row){
$is_found = false;
foreach($rows2 as $row2){
if($row2['id'] == $row['date_id']){
$is_found = true;
echo 'Display attendance data'.'<br />'; //echo to see if it has matched an id
//Display attendance table
}
}
if($is_found == false){
echo 'Display default'.'<br />'; // echo to see if its default
//Display default
}
}
如果有人能帮助我解决这个问题,我将不胜感激。预先感谢!
答案 0 :(得分:1)
您在这里不需要元组;你想要一个清单。元组是不可变的;一旦创建,便无法将其添加到其中。
列表可以append
设置为:
big_list = []
. . .
big_list.append(tup)
print(big_list) # [(1, 2, 3), (1, 2, 3)]
答案 1 :(得分:0)
正如@carcigenicate指出的here一样,建议使用元组列表而不是元组列表。
如here所示。如果非常特别地创建元组的元组,则只需要使用以下代码。
big_tup = ()
for i in range(2):
tup = (1, 2, 3)
big_tup += (tup,) # this doesn't insert tup to big_tup, it is actually creating a new tuple and with the existing tuples and new tup using the same name
print(big_tup)
# ((1, 2, 3), (1, 2, 3))
查看实际情况here