gpt4 book ai didi

python - 如何拆分返回的整数: (Trying to find recurrences within it)

转载 作者:太空宇宙 更新时间:2023-11-03 14:58:32 25 4
gpt4 key购买 nike

这可能是一个非常简单的问题,但却给我带来了很多麻烦。

代码:

def search_likes(passed_list): #passed_list contains links to find below
print("Found",len(passed_list),"videos, now finding likes.")
x = 0
print("Currently fidning likes for video",x,".")
while x< len(passed_list):
likeFINDER = []
r = requests.get(passed_list[0])
soup= BeautifulSoup(r.content, 'lxml')
d_data = soup.find_all("span", {"class": "yt-uix-button-content"}) #Location of the number i'm looking for
likeFINDER.append(d_data)
str1= ''.join(str(e) for e in likeFINDER) #Converts the list into a string
likeNUMBER= (int(''.join(list(filter(lambda x: x.isdigit(), str1))))) #Removes string and leaves integers


x+=1 #count

输出:

845528455314391440

我想在代码开始重复的地方拆分它。即['84552','8455314391440']

如果您对如何执行此操作有任何见解,我将非常感激!

谢谢,本

最佳答案

给定一个包含您的数字的字符串s,以及一个数字n(您想要查找的重复的大小),那么您可以执行以下操作:

s.find(s[:n], n)

这将查找字符串开头之后第一次出现的索引,该索引等于字符串的前 n 个字符。例如:

s = str(845528455314391440)
n = 3
r = s.find(s[:n], n)
print(r)

输出:

5

然后您可以使用它来拆分字符串并将各部分转换为数字:

a, b = int(s[:r]), int(s[r:])
print(a, b)

输出:

84552 8455314391440

全部组合成一个函数,计算数字而无需重复:

def split_repeat(i, n):
s = str(i)
r = s.find(s[:n], n)
if r == -1:
return None
else:
return int(s[:r]), int(s[r:])

用法:

print(split_repeat(845528455314391440, 3))
print(split_repeat(876543210, 3))
print(split_repeat(1122, 3))

输出:

(84552, 8455314391440)
None
None

关于python - 如何拆分返回的整数: (Trying to find recurrences within it),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45312491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com