如何按预期获得列表中的输出
how to get the output in list as expected
如何找到 list1 的输出,当它被反转时应该从输出中排除
示例:
32 reverse 是 23,它已经在列表 l1 中,因此应该将其排除在外。类似地,98 反向是 89,因此输出应该如下所示。
l1=[32,48,98,76,23,89]
output as [48,76]
试过这个
l2=[]
x=[str(x) for x in l1]
print(x)
for var in x:
print(var,var[::-1])
o/p如下
32 23
48 84
98 89
76 67
23 32
89 98
如果反向32是23则排除它..
您已成功反转输入列表中的项目。
现在您需要做的就是检查输入列表中是否存在反转的项目。如果不是,则将这些项目附加到输出列表。
试试这个。
l1=[32,48,98,76,23,89, 470, 74]
l2=[]
x=[str(x) for x in l1]
print(x)
out = []
for var in x:
# print(var,var[::-1])
if int(var[::-1]) not in l1:
out.append(int(var))
print(out) #[48, 76, 74]
另一种不对字符串进行类型转换的方法如下:
l1=[32,48,98,76,23,89, 470, 74]
out = []
for num in l1:
rev = 0
curr = num
while curr >0:
rev = rev*10+curr%10
curr = curr//10
if rev not in l1:
out.append(num)
print(out) # [48, 76, 74]
请注意,这两种方法仅在列表仅包含整数时才有效。
这也适用于以 0 结尾的数字。
例如:如果输入列表包含 470 和 74,则 470 将从输出中排除。
与 '470' = '074' 和 int('074') = 74 相反,因此此项将被排除。
如何找到 list1 的输出,当它被反转时应该从输出中排除
示例: 32 reverse 是 23,它已经在列表 l1 中,因此应该将其排除在外。类似地,98 反向是 89,因此输出应该如下所示。
l1=[32,48,98,76,23,89]
output as [48,76]
试过这个
l2=[]
x=[str(x) for x in l1]
print(x)
for var in x:
print(var,var[::-1])
o/p如下
32 23
48 84
98 89
76 67
23 32
89 98
如果反向32是23则排除它..
您已成功反转输入列表中的项目。 现在您需要做的就是检查输入列表中是否存在反转的项目。如果不是,则将这些项目附加到输出列表。 试试这个。
l1=[32,48,98,76,23,89, 470, 74]
l2=[]
x=[str(x) for x in l1]
print(x)
out = []
for var in x:
# print(var,var[::-1])
if int(var[::-1]) not in l1:
out.append(int(var))
print(out) #[48, 76, 74]
另一种不对字符串进行类型转换的方法如下:
l1=[32,48,98,76,23,89, 470, 74]
out = []
for num in l1:
rev = 0
curr = num
while curr >0:
rev = rev*10+curr%10
curr = curr//10
if rev not in l1:
out.append(num)
print(out) # [48, 76, 74]
请注意,这两种方法仅在列表仅包含整数时才有效。 这也适用于以 0 结尾的数字。 例如:如果输入列表包含 470 和 74,则 470 将从输出中排除。 与 '470' = '074' 和 int('074') = 74 相反,因此此项将被排除。