From a06e60abb5ef5b07a455cdc02f18800a0ae6e5d8 Mon Sep 17 00:00:00 2001 From: chenwj113 Date: Tue, 1 Nov 2022 15:14:04 +0800 Subject: [PATCH 1/5] =?UTF-8?q?fix:=20auto.py=E5=A2=9E=E5=8A=A0=E6=89=8B?= =?UTF-8?q?=E6=9C=BA=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- auto.py | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++----- pls.py | 6 ++-- 2 files changed, 98 insertions(+), 12 deletions(-) diff --git a/auto.py b/auto.py index a8c58cf..206e072 100644 --- a/auto.py +++ b/auto.py @@ -1,7 +1,12 @@ from helium import * -import time +from selenium.webdriver import ChromeOptions +# import time -driver = start_chrome("https://youdian.jindianle.com/", headless=True) +chrome_options = ChromeOptions() +mobile_emulation = {'deviceName': 'iPhone XR'} +chrome_options.add_experimental_option("mobileEmulation", mobile_emulation) + +driver = start_chrome("https://youdian.jindianle.com/", options=chrome_options) click(Text("您尚未登录,点击登录")) click(Text("密码登录")) write("15359827092", into="请输入手机号") @@ -10,11 +15,94 @@ click(Button("登 录")) # 进入页面先点击关闭弹窗按钮 _close = S('//*[@id="vue2_el"]/div/div[10]/div/p') click(_close) -# 点击竞彩足球 -jczq = S('//*[@id="vue2_el"]/div/section/div[6]/div[2]/div[1]/a/p/em') -click(jczq) -fenxi_list = find_all(Text("分析")) -print(fenxi_list) -# click(fenxi_list[0]) +# 点击排列三 +pls = S('//*[@id="vue2_el"]/div/section/div[6]/div[4]/div[3]') +click(pls) +click(Text('组选')) + +# 普通投注-> 取消组3 +# group3 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxmenu.topcenter > p:nth-child(1)') +group3 = Text("组3") +# click(group3) +ball_0 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(1) > p.ballline') +ball_1 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(2) > p.ballline') +ball_2 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(3) > p.ballline') +ball_3 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(4) > p.ballline') +ball_4 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(5) > p.ballline') +ball_5 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(6) > p.ballline') +ball_6 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(7) > p.ballline') +ball_7 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(8) > p.ballline') +ball_8 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(9) > p.ballline') +ball_9 = S('#body > section > div.betmain.betmain_p3zx > div.betmain_p3zxball > ul > li:nth-child(10) > p.ballline') +# click(ball_1) +# click(ball_2) +# click(ball_3) + +# 和值投注 +click(Text("和值投注")) +sum_1 = Text("1") +sum_2 = Text("2") +sum_3 = Text("3") +sum_4 = Text("4") +sum_5 = Text("5") +sum_6 = Text("6") +sum_7 = Text("7") +sum_8 = Text("8") +sum_9 = Text("9") +sum_10 = Text("10") +sum_11 = Text("11") +sum_12 = Text("12") +sum_13 = Text("13") +sum_14 = Text("14") +sum_15 = Text("15") +sum_16 = Text("16") +sum_17 = Text("17") +sum_18 = Text("18") +sum_19 = Text("19") +sum_20 = Text("20") +sum_21 = Text("21") +sum_22 = Text("22") +sum_23 = Text("23") +sum_24 = Text("24") +sum_25 = Text("25") +sum_26 = Text("26") +click(sum_9) + +# click(Text("组3单式")) +# 对子号码 +double_ball_0 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(1) > p') +double_ball_1 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(2) > p') +double_ball_2 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(3) > p') +double_ball_3 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(4) > p') +double_ball_4 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(5) > p') +double_ball_5 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(6) > p') +double_ball_6 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(7) > p') +double_ball_7 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(8) > p') +double_ball_8 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(9) > p') +double_ball_9 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(1) > div.boxflex > ul > li:nth-child(10) > p') +# 非对子号码 +single_ball_0 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(1) > p') +single_ball_1 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(2) > p') +single_ball_2 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(3) > p') +single_ball_3 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(4) > p') +single_ball_4 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(5) > p') +single_ball_5 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(6) > p') +single_ball_6 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(7) > p') +single_ball_7 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(8) > p') +single_ball_8 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(9) > p') +single_ball_9 = S('#body > section > div.betmain.betmain_p3zxd > div:nth-child(2) > div.boxflex > ul > li:nth-child(10) > p') + +# 点击一次下一步 +next_step = Text("下一步") +click(next_step) + +# 设置倍数后,再点击一次下一步 +plus = Text("+") +click(plus) +click(Text("下一步")) + +# 最后一步, 点击确认 +confirm = Text("确认") +# click(confirm) # time.sleep(5) # kill_browser() \ No newline at end of file diff --git a/pls.py b/pls.py index b342fa0..95f4a44 100644 --- a/pls.py +++ b/pls.py @@ -20,8 +20,7 @@ for i in group3: for i in sum_group_dict.keys(): f3 = lambda number: True if '1' not in number else False - if i in [13, 16]: - print(i, list(filter(f3, sum_group_dict[i]))) + print(i, -cachesum_group_dict[i]) # print(sum_group3_dict) # sum_group3 = [ sum(map(int, list(i))) for i in group3] # print(pd.value_counts(sum_group3).to_dict()) @@ -40,8 +39,7 @@ for i in sum_group6_dict.keys(): f4 = lambda number: True if max(map(int, number)) - min(map(int, number)) != 2 else False f5 = lambda number: True if '3' not in number else False f3 = lambda number: True if '8' not in number else False - if i in [13, 16]: - print(i, list(filter(f3, sum_group6_dict[i]))) + print(i, sum_group6_dict[i]) # print(pd.value_counts(sum_group3).to_dict()) # 连号 From fe99068e85a1162eb8795bfc0a62e9b739052757 Mon Sep 17 00:00:00 2001 From: chenwj113 Date: Wed, 2 Nov 2022 17:47:35 +0800 Subject: [PATCH 2/5] =?UTF-8?q?sd.py=E5=A2=9E=E5=8A=A0=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pls.py | 4 ++-- sd.py | 33 +++++++++++++++++++++++++++++++-- 2 files changed, 33 insertions(+), 4 deletions(-) diff --git a/pls.py b/pls.py index 95f4a44..7a626e7 100644 --- a/pls.py +++ b/pls.py @@ -19,8 +19,8 @@ for i in group3: sum_group_dict[sum(map(int, list(i)))].append(i) for i in sum_group_dict.keys(): - f3 = lambda number: True if '1' not in number else False - print(i, -cachesum_group_dict[i]) + f3 = lambda number: True if '7' not in number else False + print(i, list(filter(f3, sum_group_dict[i]))) # print(sum_group3_dict) # sum_group3 = [ sum(map(int, list(i))) for i in group3] # print(pd.value_counts(sum_group3).to_dict()) diff --git a/sd.py b/sd.py index 9947fdb..b762fe9 100644 --- a/sd.py +++ b/sd.py @@ -3,14 +3,43 @@ import pandas as pd a = np.arange(1000) +nums = [ f"{i:03d}" for i in a ] +is_odd = lambda i: True if int(i) % 2 == 1 else False +is_even = lambda i: True if int(i) % 2 == 0 else False + +#奇奇奇 +odd_odd_odd = [i for i in nums if is_odd(i[0]) and is_odd(i[1]) and is_odd(i[2]) ] +#奇奇偶 +odd_odd_even = [i for i in nums if is_odd(i[0]) and is_odd(i[1]) and is_even(i[2]) ] +# +odd_even_odd = [i for i in nums if is_odd(i[0]) and is_even(i[1]) and is_odd(i[2]) ] +# +odd_even_even = [i for i in nums if is_odd(i[0]) and is_even(i[1]) and is_even(i[2])] +# +even_odd_odd = [i for i in nums if is_even(i[0]) and is_odd(i[1]) and is_odd(i[2]) ] +#奇奇偶 +even_odd_even = [i for i in nums if is_even(i[0]) and is_odd(i[1]) and is_even(i[2]) ] +# +even_even_odd = [i for i in nums if is_even(i[0]) and is_even(i[1]) and is_odd(i[2]) ] +# +even_even_even = [i for i in nums if is_even(i[0]) and is_even(i[1]) and is_even(i[2])] + +print(len(even_even_even)) +print(len(even_even_odd)) +print(len(odd_odd_even)) + +f = lambda x: True if '7' not in x and '5' not in x else False +result = list(filter(f, even_odd_even)) +print(result) + l = set([ f"{i:03d}" for i in a ]) sum_dict = dict() -print(len(l)) +# print(len(l)) for i in l: _sum = sum(map(int, i)) v = sum_dict.get(_sum, 0) sum_dict[_sum] = v + 1 df = pd.Series(sum_dict) -print(df.sort_values(ascending=False)) \ No newline at end of file +# print(df.sort_values(ascending=False)) \ No newline at end of file From 7928980720169aa36a7166f21d1480a76942f4ae Mon Sep 17 00:00:00 2001 From: chenwj113 Date: Fri, 11 Nov 2022 11:51:27 +0800 Subject: [PATCH 3/5] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0jcbf=E5=92=8Csk?= =?UTF-8?q?=5Ftest?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jcbf.py | 23 +++++++++++++++++++++++ sk_test.py | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 jcbf.py create mode 100644 sk_test.py diff --git a/jcbf.py b/jcbf.py new file mode 100644 index 0000000..10f3e8c --- /dev/null +++ b/jcbf.py @@ -0,0 +1,23 @@ +import requests +from furl import furl +import time +import json + +file = open("data.json", "w+") + +base_url = "https://www.ttyingqiu.com/" +f = furl(base_url) + +f.path = "/static/no_cache/league/zc/jsbf/ttyq2020/jsbf_2022-11-06.json" +f.args["v"] = int(time.time()*1000) +print(f.url) +print(r.status_code) +print(r.json()) +file.write(json.dumps(r.json())) +file.close() + + +url = "/static/no_cache/league/zc/jsbf/ttyq2020/jczq/jsbf_2022-11-06.json?v=1667799791084" +url = "https://www.ttyingqiu.com/static/no_cache/league/zc/jsbf/ttyq2020/jczq/2022-11-06/oz_407_6.json?v=1667799791169" + +match_list = data["matchList"] \ No newline at end of file diff --git a/sk_test.py b/sk_test.py new file mode 100644 index 0000000..712ebbd --- /dev/null +++ b/sk_test.py @@ -0,0 +1,34 @@ +import sklearn +from sklearn import linear_model, tree + +# 普通最小二乘法 +reg = linear_model.LinearRegression() +reg.fit([[0, 0], [1, 1], [2, 2]], [0, 1, 2]) +result = reg.predict([[3, 1]]) +print(reg.coef_) +print(result) + +# 贝叶斯岭回归 +X = [[0., 0.], [1., 1.], [2., 2.], [3., 3.]] +Y = [0., 1., 2., 3.] +reg = linear_model.BayesianRidge() +reg.fit(X, Y) +result = reg.predict([[1, 0]]) +print(reg.coef_) +print(result) + +# 决策树分类 +X = [[0, 0], [1, 1]] +Y = [0, 1] +clf = tree.DecisionTreeClassifier() +clf = clf.fit(X, Y) +result = clf.predict([[10., 11.]]) +print(result) +print(clf.predict_proba([[10., 11.]])) +# 决策树回归 +X = [[0, 0], [2, 2]] +Y = [1.5, 6.5] +clf = tree.DecisionTreeRegressor() +clf = clf.fit(X, Y) +result = clf.predict([[1, 2]]) +print(result) From d7b4b80f31b98072f2c7773f83a196562bb7ae2f Mon Sep 17 00:00:00 2001 From: chenwj113 Date: Fri, 11 Nov 2022 15:20:55 +0800 Subject: [PATCH 4/5] =?UTF-8?q?fix:=20auto.py=E4=BF=AE=E5=A4=8D=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=99=A8=E5=90=AF=E5=8A=A8=E4=B8=8D=E8=B5=B7=E4=BD=9C?= =?UTF-8?q?=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- auto.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/auto.py b/auto.py index dc56d7b..1ae616e 100644 --- a/auto.py +++ b/auto.py @@ -3,10 +3,13 @@ from selenium.webdriver import ChromeOptions import time chrome_options = ChromeOptions() -mobile_emulation = {'deviceName': 'iPhone XR'} -chrome_options.add_experimental_option("mobileEmulation", mobile_emulation) +# mobile_emulation = {'deviceName': 'Apple iPhone XR'} +# chrome_options.add_experimental_option("mobileEmulation", mobile_emulation) +chrome_options.add_argument('--no-sandbox') +chrome_options.add_argument('--headless') +chrome_options.add_argument('user-agent="Mozilla/5.0 (iPhone; CPU iPhone OS 16_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.29(0x18001d36) NetType/WIFI Language/zh_CN"') +start_chrome("https://youdian.jindianle.com/", options=chrome_options, headless=True) -start_chrome("https://youdian.jindianle.com/", options=chrome_options) click(Text("您尚未登录,点击登录")) click(Text("密码登录")) write("15359827092", into="请输入手机号") @@ -18,7 +21,6 @@ click(_close) #店内账本 click(Text("店内账本")) -# vue2_el > div:nth-child(2) > section > div > div > div.pad30px.mb15.border_b.bgfff.balance_top > div:nth-child(2) > span.gray3.moneynum # moneynum = S('//*[@id="vue2_el"]/div[1]/section/div/div/div[3]/div[2]/span[1]') moneynum = S('//span[contains(@class, "gray3") and contains(@class, "moneynum")]') wait_until(moneynum.exists) @@ -122,4 +124,4 @@ plus = Text("+") confirm = Text("确认") # click(confirm) # time.sleep(5) -# kill_browser() \ No newline at end of file +kill_browser() \ No newline at end of file From 1fe59315139318d1f1f85ef01b772f22dcab7003 Mon Sep 17 00:00:00 2001 From: chenwj113 Date: Thu, 17 Nov 2022 10:15:54 +0800 Subject: [PATCH 5/5] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E6=8F=90=E4=BA=A4=E7=9A=84=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- auto_v2.py | 101 +++++++++++++++++++++++++++++++++++++++++++++++++++++ pls.py | 38 ++++++++++---------- 2 files changed, 120 insertions(+), 19 deletions(-) create mode 100644 auto_v2.py diff --git a/auto_v2.py b/auto_v2.py new file mode 100644 index 0000000..e27f98d --- /dev/null +++ b/auto_v2.py @@ -0,0 +1,101 @@ +import time +import traceback + +from helium import * +from selenium.webdriver import ChromeOptions + +chrome_options = ChromeOptions() +mobile_emulation = {'deviceName': 'iPad Mini'} +chrome_options.add_experimental_option("mobileEmulation", mobile_emulation) +#chrome_options.add_experimental_option('excludeSwitches', ['enable-automation']) +#chrome_options.add_experimental_option('useAutomationExtension', False) +chrome_options.add_argument('--no-sandbox') +chrome_options.add_argument('--headless') +chrome_options.add_argument('user-agent="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"') +driver = start_chrome("https://youdian.jindianle.com/", options=chrome_options) +try: + click(Text("您尚未登录,点击登录")) + click(Text("密码登录")) + write("15359827092", into="请输入手机号") + write("c113w927j", into="请输入6-12位数字或字母") + click(Button("登 录")) + # 进入页面先点击关闭弹窗按钮 + _close = S('//*[@id="vue2_el"]/div/div[10]/div/p') + click(_close) + + #店内账本 + # click(Text("店内账本")) + # moneynum = S('//span[contains(@class, "gray3") and contains(@class, "moneynum")]') + # wait_until(moneynum.exists) + # if moneynum is not None: + # balance = moneynum.web_element.text + # print(f"金额还剩:{balance}") + # else: + # print("元素未找到") + # # 回退 + # back = S('#vue2_el > header > div.back > a') + # click(back) + + #选号记录 + # click(Text("选号记录")) + # # 回退 + # back = S('#vue2_el > header > div.back > a') + # click(back) + + + # 点击排列三 + pls = S('//*[@id="vue2_el"]/div/section/div[6]/div[4]/div[3]') + wait_until(pls.exists) + click(pls) + wait_until(Text('组选').exists) + click(Text('组选')) + result = ['258', '357', '069', '168', '078', '267', '159', '339', '177', '366'] + for index, item in enumerate(result): + if len(set(item)) == 3: + # 普通投注-> 取消组3 + click(Text('普通投注')) + for i in item: + ball_line = S(f'//*[@id="body"]/section/div[3]/div[2]/ul/li[{int(i) + 1}]/p[1]') + if ball_line.exists: + click(ball_line) + print(ball_line.web_element.text) + else: + print(f"{i}不存在") + wait_until(Text("组3").exists) + click(Text("组3")) + else: + click(Text('组3单式')) + if item[0] == item[1]: + double_ball = S(f'//*[@id="body"]/section/div[3]/div[1]/div[2]/ul/li[{int(item[0]) + 1}]/p') + single_ball = S(f'//*[@id="body"]/section/div[3]/div[2]/div[2]/ul/li[{int(item[2]) + 1}]/p') + else: + double_ball = S(f'//*[@id="body"]/section/div[3]/div[1]/div[2]/ul/li[{int(item[2]) + 1}]/p') + single_ball = S(f'//*[@id="body"]/section/div[3]/div[2]/div[2]/ul/li[{int(item[0]) + 1}]/p') + click(double_ball) + click(single_ball) + print(f"对子号:{double_ball.web_element.text}") + print(f"非对子号:{single_ball.web_element.text}") + print(f"{index}: {item}") + wait_until(Text("下一步").exists) + click(Text("下一步")) + if index + 1 != len(result): + wait_until(Text("+继续添加").exists) + click(Text("+继续添加")) + save = Text("保存") + wait_until(save.exists) + click(Text("保存")) + print(save.web_element.text) + # # 设置倍数后,再点击一次下一步 + # plus = Text("+") + # # click(plus) + # wait_until(Text("下一步").exists) + # click(Text("下一步")) + + # # 最后一步, 点击确认 + # wait_until(Text("确认").exists) + # click(Text("确认")) + print("完成。。。") + kill_browser() +except Exception as e: + print(traceback.format_exc()) + kill_browser() diff --git a/pls.py b/pls.py index 7a626e7..16776ef 100644 --- a/pls.py +++ b/pls.py @@ -13,34 +13,34 @@ sum_df = pd.value_counts(sum_list) # 组三 group3 = [ i for i in l if len(set(i)) == 2] -sum_group_dict = {i: [] for i in np.arange(28)} +sum_group3_dict = {i: [] for i in np.arange(28)} for i in group3: - - sum_group_dict[sum(map(int, list(i)))].append(i) - -for i in sum_group_dict.keys(): - f3 = lambda number: True if '7' not in number else False - print(i, list(filter(f3, sum_group_dict[i]))) -# print(sum_group3_dict) -# sum_group3 = [ sum(map(int, list(i))) for i in group3] -# print(pd.value_counts(sum_group3).to_dict()) -for i in range(5, 20): - _result = [item for item in sum_group_dict[i]] + sum_group3_dict[sum(map(int, list(i)))].append(i) # 组六 group6 = [ i for i in l if len(set(i)) == 3] -print(len(group6)/220) sum_group6_dict = {i: [] for i in np.arange(28)} for i in group6: sum_group6_dict[sum(map(int, list(i)))].append(i) +# for i in sum_group3_dict.keys(): +# f3 = lambda number: True if '7' not in number else False +# print(i, list(filter(f3, sum_group3_dict[i]))) +# print(sum_group3_dict) +# sum_group3 = [ sum(map(int, list(i))) for i in group3] +# print(pd.value_counts(sum_group3).to_dict()) +# for i in range(5, 20): +# _result = [item for item in sum_group3_dict[i]] + + for i in sum_group6_dict.keys(): f1 = lambda number: len([i for i in number if int(i) %2 == 0]) != 0 f2 = lambda number: len([i for i in number if int(i) %2 == 1]) != 0 - f3 = lambda number: True if '2' not in number else False - f4 = lambda number: True if max(map(int, number)) - min(map(int, number)) != 2 else False - f5 = lambda number: True if '3' not in number else False - f3 = lambda number: True if '8' not in number else False - print(i, sum_group6_dict[i]) -# print(pd.value_counts(sum_group3).to_dict()) + f3 = lambda number: True if max(map(int, number)) - min(map(int, number)) != 2 else False + f4 = lambda number: True if '3' not in number else False + f5 = lambda number: True if '4' not in number else False + if i in [15, 19]: + result = sum_group6_dict[i]+sum_group3_dict[i] + print(i, list(filter(f5, result))) + # print(i, sum_group3_dict[i]) # 连号 result = []