有关特定于该语言版本3+的Python编程的问题。如果您的问题不是特定于版本,请使用更通用的[python]标记。
我正在尝试在 Numba 中指定命名元组的返回类型,但我无法这样做。有人可以帮忙吗?考虑以下最少代码: 将 numba 导入为 nb 从集合导入
我使用 Python 和 Selenium 创建了一个脚本,将图像从本地文件夹上传到此网页。该网站需要 Google 登录才能访问带有上传选项的页面。 一旦登录...
我有这个 test.html,我需要找到以 和 开头的所有行,并用 而不是 clos... 我有这个 test.html,我需要找到以 <p class="text_obisnuit"> 和 <p class="text_obisnuit2"> 开头的所有行,并用 <br> 而不是关闭标签 </p>。所以,我必须删除 并替换为 </p> . 问题: 一切都有效,除了这个。我有一条只有 <br><br> 的行,必须从查找和替换列表中排除 <!-- ARTICOL START --> <div align="justify"> <table width="552" border="0"> <tr> <td><h1 class="den_articol" itemprop="name">Zbuciumul sufletelor tenace (II)</h1></td> </tr> <tr> <td class="text_dreapta">On Aprilie 27, 2013, in <a href="https://neculaifantanaru.com/leadership-fx-intensive.html" title="Vezi toate articolele din Leadership FX-Intensive" class="external" rel="category tag">Leadership FX-Intensive</a>, by Neculai Fantanaru</td> </tr> </table> <p class="text_obisnuit"><span class="text_obisnuit2">Zbuciumul sufletelor tenace </span>evidenţiază tendinţa de a transforma evoluţia în involuţie, atunci când zbuciumul tău existenţial pare că începe să se înăsprească. Astfel se creează o adevărată degringoladă în careul trăirilor şi gândurilor sale, o adevărată luptă între tine şi propriul tău Ego.<br> </p> <p class="text_obisnuit">Dacă vrei să ştii care este nivelul de leadership la care te afli, dacă vrei să ştii în ce categorie de lideri te încadrezi, atunci dezleagă adevăratul înţeles din spatele acelor vagi derute care îi despart pe oameni de cele două constante: “ <em>a fi</em> ” şi “ <em>a nu fi</em> ”, fără să te pierzi tu însuţi într-o mare de îndoială.</p> <br><br> <p class="text_obisnuit"><span class="text_obisnuit2">* Notă:</span> “ <em><a href="http://www.imdb.com/title/tt0780516/" target="_new">Flawless (2007)</a>"</em></p> </div> <p align="justify" class="text_obisnuit style3"> </p> <!-- ARTICOL FINAL --> Python代码: import os import regex as re def process_file_content(content): lines = content.split('\n') processed_lines = [] for line in lines: stripped_line = line.strip() # Păstrăm liniile cu <br><br> neschimbate if '<br><br>' in line: processed_lines.append(line) continue # Procesăm doar liniile care conțin taguri <p> if '<p class="text_obisnuit"' in line or '<p class="text_obisnuit2"' in line: # Înlocuim <br> la sfârșitul liniei cu </p> line = re.sub(r'(<p class="text_obisnuit2?">.*?)<br>\s*$', r'\1</p>', line) # Eliminăm spațiile inutile de la început line = re.sub(r'^\s*(<p class="text_obisnuit2?">)', r'\1', line) # Eliminăm </p> dublu line = re.sub(r'(<p class="text_obisnuit2?">.*?</p>)\s*</p>\s*', r'\1', line) processed_lines.append(line) content = '\n'.join(processed_lines) # Adăugăm spații între paragrafe content = re.sub(r'(</p>)\s*(<p class="text_obisnuit">)', r'\1\n\n\2', content) content = re.sub(r'(</p>)\s*(<p class="text_obisnuit2">)', r'\1\n\n\2', content) return content def process_html_files(directory): excluded_files = [ 'aforisme-si-pareri-bine-slefuite-III.html', 'aforisme-si-pareri-bine-slefuite-II.html', 'aforisme-si-pareri-bine-slefuite.html', 'cartea-cartilor.html', 'cartea-creatiei.html', 'cartea-de-nisip.html', 'ganduri-din-colturile-memoriei-III.html', 'imagini-din-muzeul-mitropolitan-iasi.html', 'ganduri-din-colturile-memoriei-II.html', 'ganduri-din-colturile-memoriei.html' ] for filename in os.listdir(directory): if filename.endswith('.html') and filename not in excluded_files: file_path = os.path.join(directory, filename) with open(file_path, 'r', encoding='utf-8') as file: content = file.read() processed_content = process_file_content(content) if content != processed_content: print(f"\nModificări în fișierul: {filename}") with open(file_path, 'w', encoding='utf-8') as file: file.write(processed_content) # Verificăm dacă mai există linii cu <br><br> după procesare if '<br><br>' in processed_content: print(f"\nLinia <br><br> păstrată în fișierul: {filename}") # Specificați directorul cu fișierele HTML directory = r'd:\55' process_html_files(directory) Face bine toate schimbarile, in afara de cazul ca linia care contine doar <br><br> este inlocuita cu <p class="text_obisnuit"></p> . Ei bine, trebuie o clauda prin care linia care contine doar <br><br> sa nu fie inclusa in celelalte Find and Replace. <!-- ARTICOL START --> <div align="justify"> <table width="552" border="0"> <tr> <td><h1 class="den_articol" itemprop="name">Zbuciumul sufletelor tenace (II)</h1></td> </tr> <tr> <td class="text_dreapta">On Aprilie 27, 2013, in <a href="https://neculaifantanaru.com/leadership-fx-intensive.html" title="Vezi toate articolele din Leadership FX-Intensive" class="external" rel="category tag">Leadership FX-Intensive</a>, by Neculai Fantanaru</td> </tr> </table> <p class="text_obisnuit"><span class="text_obisnuit2">Zbuciumul sufletelor tenace </span>evidenţiază tendinţa de a transforma evoluţia în involuţie, atunci când zbuciumul tău existenţial pare că începe să se înăsprească. Astfel se creează o adevărată degringoladă în careul trăirilor şi gândurilor sale, o adevărată luptă între tine şi propriul tău Ego.</p> <p class="text_obisnuit">Dacă vrei să ştii care este nivelul de leadership la care te afli, dacă vrei să ştii în ce categorie de lideri te încadrezi, atunci dezleagă adevăratul înţeles din spatele acelor vagi derute care îi despart pe oameni de cele două constante: “ <em>a fi</em> ” şi “ <em>a nu fi</em> ”, fără să te pierzi tu însuţi într-o mare de îndoială.</p> <p class="text_obisnuit"></p> <p class="text_obisnuit"><span class="text_obisnuit2">* Notă:</span> “ <em><a href="http://www.imdb.com/title/tt0780516/" target="_new">Flawless (2007)</a>"</em></p> </div> <p align="justify" class="text_obisnuit style3"> </p> <!-- ARTICOL FINAL --> 这一定是输出: <!-- ARTICOL START --> <div align="justify"> <table width="552" border="0"> <tr> <td><h1 class="den_articol" itemprop="name">Zbuciumul sufletelor tenace (II)</h1></td> </tr> <tr> <td class="text_dreapta">On Aprilie 27, 2013, in <a href="https://neculaifantanaru.com/leadership-fx-intensive.html" title="Vezi toate articolele din Leadership FX-Intensive" class="external" rel="category tag">Leadership FX-Intensive</a>, by Neculai Fantanaru</td> </tr> </table> <p class="text_obisnuit"><span class="text_obisnuit2">Zbuciumul sufletelor tenace </span>evidenţiază tendinţa de a transforma evoluţia în involuţie, atunci când zbuciumul tău existenţial pare că începe să se înăsprească. Astfel se creează o adevărată degringoladă în careul trăirilor şi gândurilor sale, o adevărată luptă între tine şi propriul tău Ego.</p> <p class="text_obisnuit">Dacă vrei să ştii care este nivelul de leadership la care te afli, dacă vrei să ştii în ce categorie de lideri te încadrezi, atunci dezleagă adevăratul înţeles din spatele acelor vagi derute care îi despart pe oameni de cele două constante: “ <em>a fi</em> ” şi “ <em>a nu fi</em> ”, fără să te pierzi tu însuţi într-o mare de îndoială.</p> <br><br> <p class="text_obisnuit"><span class="text_obisnuit2">* Notă:</span> “ <em><a href="http://www.imdb.com/title/tt0780516/" target="_new">Flawless (2007)</a>"</em></p> </div> <p align="justify" class="text_obisnuit style3"> </p> <!-- ARTICOL FINAL --> 已解决: import os import regex as re def process_file_content(content): lines = content.split('\n') processed_lines = [] for line in lines: # Păstrăm spațiile inițiale ale fiecărei linii leading_spaces = re.match(r'^\s*', line).group() stripped_line = line.strip() # Păstrăm liniile cu <br><br> neschimbate if '<br><br>' in stripped_line: processed_lines.append(line) continue # Procesăm doar liniile care conțin taguri <p> if '<p class="text_obisnuit"' in stripped_line or '<p class="text_obisnuit2"' in stripped_line: # Înlocuim <br> la sfârșitul liniei cu </p> stripped_line = re.sub(r'(<p class="text_obisnuit2?">.*?)<br>\s*$', r'\1</p>', stripped_line) # Eliminăm spațiile inutile de la început stripped_line = re.sub(r'^\s*(<p class="text_obisnuit2?">)', r'\1', stripped_line) # Eliminăm </p> dublu stripped_line = re.sub(r'(<p class="text_obisnuit2?">.*?</p>)\s*</p>\s*', r'\1', stripped_line) # Adăugăm spațiile inițiale înapoi processed_lines.append(leading_spaces + stripped_line) content = '\n'.join(processed_lines) # Adăugăm spații între paragrafe # content = re.sub(r'(</p>)\s*(<p class="text_obisnuit">)', r'\1\n\n\2', content) # content = re.sub(r'(</p>)\s*(<p class="text_obisnuit2">)', r'\1\n\n\2', content) # Eliminăm liniile care conțin doar </p> content = re.sub(r'^\s*</p>\s*$', '', content, flags=re.MULTILINE) return content def process_html_files(directory): excluded_files = [ 'aforisme-si-pareri-bine-slefuite-III.html', 'aforisme-si-pareri-bine-slefuite-II.html', 'aforisme-si-pareri-bine-slefuite.html', 'cartea-cartilor.html', 'cartea-creatiei.html', 'cartea-de-nisip.html', 'ganduri-din-colturile-memoriei-III.html', 'imagini-din-muzeul-mitropolitan-iasi.html', 'ganduri-din-colturile-memoriei-II.html', 'ganduri-din-colturile-memoriei.html' ] for filename in os.listdir(directory): if filename.endswith('.html') and filename not in excluded_files: file_path = os.path.join(directory, filename) with open(file_path, 'r', encoding='utf-8') as file: content = file.read() processed_content = process_file_content(content) if content != processed_content: print(f"\nModificări în fișierul: {filename}") with open(file_path, 'w', encoding='utf-8') as file: file.write(processed_content) # Verificăm dacă mai există linii cu <br><br> după procesare if '<br><br>' in processed_content: print(f"\nLinia <br><br> păstrată în fișierul: {filename}") # Specificați directorul cu fișierele HTML directory = r'd:\55' process_html_files(directory)
这两个程序消耗相同的内存和时间吗? def 转换(txt): a=int(txt) #变量a是否消耗额外内存? 返回一个 打印(转换(“4”)) 定义转换...
shebang在构建python rpm包时更改为/usr/libexec/platform-python
我正在尝试在 RHEL8.2 机器上从 python 应用程序构建 RPM。 脚本上的 shebangs 已正确设置为 #!/usr/bin/python3 然而由于某种原因,shebang 被更改为 #!/...
pip install pycrypto 错误(子进程退出并出现错误)
我正在安装 pycrypto 来编码 AES 128 CBC 算法。 但我得到了这个错误(如图)。我应该怎么办? C:\python\python_InternalLock>pip 安装 pycrypto 收集pycrypto 正在下载
我正在尝试向用户显示图像,并要求用户单击矩形的 4 个点,一旦用户完成,他将按“c”并退出,我的脚本应返回用户的触摸点。 对于
原文: @client.tree.command() @app_commands.describe(members='您想要获取加入日期的成员;默认为使用该命令的用户') 异步 def 加入(交互:不和谐。
在我最近的一次采访中,我被要求实现一个 ID 分配器。 问题是这样的: 实现一个 id 分配器类,可以分配 0~size-1 范围内的 id。有 2 种方法
我想创建一个带有一个 /get 端点的 FastAPI 服务,它将返回 ML 模型推理结果。实现起来非常容易,但问题是我需要定期更新......
我正在按照课程的示例进行操作,最后一个打印函数给出了错误。使用Python3 x = 4 如果 x > 2: 打印('更大') 别的: 打印('较小') print('全部完成') 那么
我知道这是一个常见问题,但我需要序列化一个表示无法序列化的对象。我正在使用外部库 pyarrow,并且我专门使用 ParquetDataset...
我想创建一个 docker 镜像,使用 python 代码抓取一些网站。 我使用 x11vnc 作为虚拟监视器,使用 firefox-esr 作为浏览器,使用 nodriver 作为 python scraper。 其实我可以开始一个包含...
Langchain sql代理未连接到databricks统一目录表
我正在尝试使用 Langchain sql 代理连接到 databricks unity 目录中的表。 我收到错误 InvalidRequestError: 未找到资源 这是我写的代码...
这是代码,我想在主屏幕上添加文本,但在互联网上没有找到解决方案。 请帮忙)谢谢) 从 kivy.app 导入 App 从 kivy.core.window 导入窗口 来自 kivy.uix.button
我试图通过单击将变量传递给类中的方法。我不确定单击装饰器是否应该位于 init 之上或方法本身之上。 导入点击 导入操作系统 从日期时间开始我...
如何在 MacOS 上的 ipynb 文件上的 vscode 中安装 Folium?
我使用 Python 设置了 VS code,我也可以在 VS Code 中运行 Jupyter Notebook Kernel。现在,当我尝试 pip install folium 时,它给出了 ModuleNotFoundError。 我怎样才能
Python 3.8、Celery 4.4.4、Redis、Django 寻找一些指导来帮助完善我的 Celery 重启逻辑和设置。我有一系列复杂的过程,广泛使用和弦来
我正在查看谷歌,但找不到答案。 如果 5 != 10: 打印('真') # 真的 如果不是 5 == 10: 打印('真') # 真的 两者似乎都做同样的事情。何时使用“not ==”和“
我想获取在运行时传递给 get_schema 方法的表的 Python 模式定义。 类测试: def __init__(自身): self.schema_table1 = { "name": "str&q...