我有一个包含不规则单词和float数字的列表,我想float从列表中删除所有这些数字,但首先我需要找到一种方法来检测它们.我知道str.isdigit()可以区分数字,但它不能用于float数字.怎么做?
我的代码是这样的:
my_list = ['fun','3.25','4.222','cool','82.356','go','foo','255.224']
for i in my_list:
if i.isdigit() == True:
my_list.pop(i)
# Can't work, i.isdigit returns False
Run Code Online (Sandbox Code Playgroud) 我正在写一个简单的函数来从列表中取出任何奇数,并返回一个只有偶数的列表.
def purify(numbers):
for i in numbers:
if i%2!=0:
numbers.remove(i)
return numbers
print purify([4,5,5,4])
Run Code Online (Sandbox Code Playgroud)
当在上面应用时
它返回:[4,5,4]为什么第二个5被删除,因为它也证明了if?
我不太关注问题的不同方法,而是更多地了解为什么会发生这种情况.
谢谢,对不起,如果这是愚蠢的......乔
>>> x=[("x1","x2","x3"),("x1","x2"),("x2","x3"),("x3","x4")]
>>> x
[('x1', 'x2', 'x3'), ('x1', 'x2'), ('x2', 'x3'), ('x3', 'x4')]
Run Code Online (Sandbox Code Playgroud)
我想删除列表中的元组 - x,如果len(x[id])==3,len(x[0]==3)那么它将被删除,[('x1', 'x2'), ('x2', 'x3'), ('x3', 'x4')]是我想要的,我该如何编写代码?
[del element if len(element[id]==3) for id,element in enumerate(x)]
invalid syntax.
Run Code Online (Sandbox Code Playgroud) def check(temp):
for i in temp:
if type(i) == str:
temp.remove(i)
temp = ['a', 'b']
print(temp) ==> Output: ['a','b']
check(temp)
print(temp) ==> Output: ['b']
Run Code Online (Sandbox Code Playgroud)
在运行时
temp = ['a',1],输出为[1]
temp = [1,'a','b','c',2],输出为[1,'b',2]
有人可以解释如何评估结果.. Thnx
我想删除b中的所有项目,其中将是[7,8,9,0],我怎么能这样做,这似乎不起作用
In [21]:
a=[1,2,3,4,5]
b=[1,2,3,5,5,5,7,8,9,0]
for i in b:
if i in a:
print i
b.remove(i)
print b
Run Code Online (Sandbox Code Playgroud)
#
Out[21]:
1
3
5
[2, 5, 5, 7, 8, 9, 0]
Run Code Online (Sandbox Code Playgroud) 我有一个形式的元组:
mylist = ({'a': 'a0', 't': 't0'}, {'a': 'a1', 't': 't1'}, {'a': 'a2', 't': 't2'}, ...)
Run Code Online (Sandbox Code Playgroud)
如何删除for循环中的dict?我试过以下但最后doc还是在元组中:
for doc in mylist:
if doc['a']=="a0":
del doc
Run Code Online (Sandbox Code Playgroud) Object是一个解码的json对象,包含一个名为items的列表.
obj = json.loads(response.body_as_unicode())
for index, item in enumerate(obj['items']):
if not item['name']:
obj['items'].pop(index)
Run Code Online (Sandbox Code Playgroud)
我迭代这些项目,并希望在满足某个条件时删除项目.但是这没有按预期工作.经过一些研究后,我发现无法从列表中删除项目,同时在python中迭代此列表.但我无法将上述解决方案应用于我的问题.我尝试过一些不同的方法
obj = json.loads(response.body_as_unicode())
items = obj['items'][:]
for index, item in enumerate(obj['items']):
if not item['name']:
obj['items'].remove(item)
Run Code Online (Sandbox Code Playgroud)
但这会删除所有项目,而不仅仅是没有名称的项目.任何想法如何解决这个问题?