几乎我需要编写一个程序来检查列表是否有任何重复项,如果有,它会删除它们并返回一个新列表,其中包含未复制/删除的项目.这就是我所拥有的,但说实话,我不知道该怎么做.
def remove_duplicates():
t = ['a', 'b', 'c', 'd']
t2 = ['a', 'c', 'd']
for t in t2:
t.append(t.remove())
return t
Run Code Online (Sandbox Code Playgroud) a = [1,2,3,4,5]
b = [1,3,5,6]
c = a and b
print c
Run Code Online (Sandbox Code Playgroud)
实际产出:[1,3,5,6]
预期产量:[1,3,5]
我们如何在两个列表上实现布尔AND操作(列表交集)?
我正在寻找一种方法来从另一个列表中删除列表中的所有值.
像这样的东西:
a = range(1,10)
a.remove([2,3,7])
print a
a = [1,4,5,6,8,9]
Run Code Online (Sandbox Code Playgroud) 当日期列的值在日期列表中时,我想从pandas数据帧中删除行.以下代码不起作用:
a=['2015-01-01' , '2015-02-01']
df=df[df.datecolumn not in a]
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
ValueError:Series的真值是不明确的.使用a.empty,a.bool(),a.item(),a.any()或a.all().
我知道and和or表达式存在于python中,但有任何and/or表达式吗?或者某种方式将它们组合起来以产生与and/or表达式相同的效果?
我的代码看起来像这样:
if input=="a":
if "a" or "á" or "à" or "ã" or "â" in someList:
someList.remove("a") or someList.remove("á") or someList.remove("à") or someList.remove("ã") or someList.remove("â")
Run Code Online (Sandbox Code Playgroud)
有了这个,我的意思是如果用户输入"a"并且先前定义的列表中包含任何类型的"a",我可以从给定列表中删除所有类型的"a"吗?
python告诉我有一个问题:
someList.remove("a") or someList.remove("á") or someList.remove("à") or someList.remove("ã") or someList.remove("â")
Run Code Online (Sandbox Code Playgroud)
他告诉我: ValueError: list.remove(x): x not in list
python wiki说:"使用集合和字典进行成员资格测试比搜索序列O(n)要快得多.当测试"a in b"时,b应该是一个集合或字典而不是列表或元组".
每当速度在我的代码中很重要时,我一直在使用集合代替列表,但最近我一直在想为什么集合比列表快得多.任何人都可以解释,或指向一个可以解释的消息来源,在python中幕后发生了什么,以便更快地制作集合?
是否可以删除数组中的一些元素?
在删除元素之前,Array1是:
{1,2,3,4}
Run Code Online (Sandbox Code Playgroud)
包含我想删除的一些元素的Array2:
{1,4}
Run Code Online (Sandbox Code Playgroud)
我想得到:
{2,3}
Run Code Online (Sandbox Code Playgroud)
怎么操作?
我有list1和list2.list2是一组必须从中删除的单词,list1例如:
list1=['paste', 'text', 'text', 'here', 'here', 'here', 'my', 'i', 'i', 'me', 'me']
list2=["i","me"]
Run Code Online (Sandbox Code Playgroud)
期望的输出:
list3=['paste', 'text', 'text', 'here', 'here', 'here', 'my']
Run Code Online (Sandbox Code Playgroud)
我尝试过使用'for'的不同版本但到目前为止没有结果.
任何想法,将不胜感激!
我想在 Python 中执行以下操作:
A = [1, 2, 3, 4, 5, 6, 7, 7, 7]
C = A - [3, 4] # Should be [1, 2, 5, 6, 7, 7, 7]
C = A - [4, 3] # Should not be removing anything, because sequence 4, 3 is not found
Run Code Online (Sandbox Code Playgroud)
所以,我只想从另一个列表中删除子列表(作为序列)的第一次出现。我怎样才能做到这一点?
编辑:我说的是列表,而不是集合。这意味着项目是排序(序列)物质(既在A和B),以及重复。
这是一个关于使用列表过滤pandas数据帧的一般性问题.问题如下:
df带有列的pandas数据框fieldban_field=['field1','field2','field3']ban_field出现在df.field目前,要检索没有禁止字段的数据帧,我按以下步骤操作:
for f in ban_field:
df = df[df.field!=f]
Run Code Online (Sandbox Code Playgroud)
是否有更多的pythonic方式继续进行(在一行?)?
python ×9
list ×5
arrays ×2
intersection ×2
pandas ×2
algorithm ×1
duplicates ×1
logic ×1
postgresql ×1
set ×1
sql ×1