2024-05-14 02:53:44 发布
网友
我知道有人可能认为这个问题已经得到了回答,但它并不能回答我想要实现的目标。
我有一个电话号码列表,一个很大的,很多都是从08开始的,有很多重复,这就是我要删除的。现在我需要将它们放在list或set中,这样我就可以在程序中使用它们,但它返回的是无效的标记,如下图所示:
08
list
set
Python假设以0开头的任何内容都是八进制的。我如何设置一个方法来绕过这一点,并将这些数字放在一个列表中,然后放在一个集合中?
0
如果您需要在08之前将它们前置,请使用字符串而不是int。
a = ["08123","08234","08123"] a = list(set(a)) # will now be ["08123","08234"]
由于(如您所说)您没有一种简单的方法用引号括住众多数字,请转到http://www.regexr.com/并输入以下内容:
表达式:([0-9]+)
([0-9]+)
文字:您的号码
替换(屏幕底部的可展开窗格:"$&"
"$&"
读取您的电话输入文件,将每个电话另存为string到set,然后将删除重复项,因为set只保留唯一元素,您可以对它们进行进一步的操作。
string
def get_unique_phones_set(): phones_set = set() with open("/path/to/your/duplicated_phone_file", "r") as inputs: for phone in inputs: # phone is read as a string phones_set.add(phone.strip()) return phones_set
如果您需要在08之前将它们前置,请使用字符串而不是int。
由于(如您所说)您没有一种简单的方法用引号括住众多数字,请转到http://www.regexr.com/并输入以下内容:
表达式:
([0-9]+)
文字:您的号码
替换(屏幕底部的可展开窗格:
"$&"
读取您的电话输入文件,将每个电话另存为
string
到set
,然后将删除重复项,因为set
只保留唯一元素,您可以对它们进行进一步的操作。相关问题 更多 >
编程相关推荐