python - 将打印字符串重新格式化为特定格式

标签 python string printing format

我目前正在尝试重新格式化下面的字符串以适应以下格式(日期、数字、数字、数字、数字、数字)。

03262019,3 10 19 30 38 03252019,7 17 23 24 31 03242019,3 7 12 23 32 03232019,6 9 14 19 28 03222019,5 11 12 13 25

进入:

03262019,3,10,19,30,38 03252019,7,17​​,23,24,31 03242019,3,7,12,23,32 03232019,6,9,14,19,28 03222019,5,11,12,13,25

代码:

import requests
from bs4 import BeautifulSoup
from datetime import datetime

response = requests.get('https://www.lotterycorner.com/mi/fantasy-5/2019')
soup = BeautifulSoup(response.text, 'html.parser')
date = soup.find_all("td", {"class":"win-nbr-date col-sm-3 col-xs-4"})
results = soup.find_all("ul",{"class":"nbr-grp"})
for date, results in zip(date, results):
    date2 = (date.get_text())
    date = (datetime.strptime(date2, '%b %d, %Y'))
    Fantasy52019 = (date.strftime("%m%d%Y")+(',')+results.get_text().strip())
    print(Fantasy52019)

和这些字符串:

03262019,4 14224358 巨型球 9 巨型放大器 3 X 03222019,7 36586062 巨型球 10Megaplier 3 X 03192019,10 42536768 巨型球 15Megaplier 3 X 03152019,3 29566264 巨型球 4 巨型放大器 3 X 03122019,10 12164957 巨型球 18Megaplier 4 X 03082019,4 9 426268 巨型球 7 巨型放大器 4 X 03052019,15 20323752 巨型球 6 巨型放大器 5 X

进入:

03262019,4,14,22,43,58,9 03222019,7,36,58,60,62,10 03192019,10,42,53,67,68,15 03152019,3,29,56,62,64,4 03122019,10,12,16,49,57,18 03082019,4,9,42,62,68,7 03052019,15,20,32,37,52,6

最佳答案

Answer Link

import requests
from bs4 import BeautifulSoup
from datetime import datetime

response = requests.get('https://www.lotterycorner.com/mi/mega-millions/2019')
soup = BeautifulSoup(response.text, 'html.parser')
date = soup.find_all("td", {"class":"win-nbr-date col-sm-3 col-xs-4"})

dates = []
for date in date:
    date2 = (date.get_text())
    date = (datetime.strptime(date2, '%b %d, %Y'))
    MegaMillions2019 = (date.strftime("%m%d%Y"))
    dates.append(str(MegaMillions2019))

data = []
for ultag in soup.find_all("ul",{"class":"nbr-grp"}):
    for litag in ultag.find_all('li'):
        results = (litag.get_text().replace(' ','').replace('MegaBall',''))
        data.append(results)

parsed = []
joined = []
for i in range(int(len(data)/7)):
    j = i*7
    parsed.append(data[j:j+6])
    parsedline = [', '.join(parsed[j]) for j in range(len(parsed))][i]
    joined.append(parsedline)

results = '\n'.join(joined)
print(results.replace(' ',''))

关于python - 将打印字符串重新格式化为特定格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55381684/

相关文章:

python - 尝试用Python构建Web服务器和客户端程序

python - 获得跨越networkx.Graph中两组节点的边的快速方法

java - Java中如何隔离字符串到不同类的转换?

jquery simplemodal : move #simplemodal-container to 0, 0 用于打印?

java - 使用 setVisible(false) 打印 JFrame

printing - 谷歌浏览器扩展 : Print the page silently

python - 类型错误 : plotting linear regression

python - 在 Python 中计算低阶近似

java - 逐行执行Java

c++ - 如何在不使用对象的情况下连接字符串、整数和 float ?