Python 3,如果存在str则替换为s

2024-05-16 10:04:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个相当简单的python程序来查找和下载特定站点的视频。我想让我的脚本使用页面标题命名文件,除了页面标题包含我想删除的各种字符串,例如

The title is: 
The Big Bang Theory S09E15 720p HDTV X264-DIMENSION

但标题并不总是一致的,例如

^{pr2}$

如果字符串存在,如何替换它们? 可能创建一个列表或字典,如果可能的字符串存在,则删除它们(或替换为空字符串)?我一直试图找到一个答案,但找不到任何有助于我处境的东西。在

基本上,如果"HDTV", "HDRip", "720p", "X264", etc存在,则替换它们,否则继续吗?在


Tags: 文件the字符串程序脚本标题视频站点
3条回答
for undesired_word in ("HDTV", "HDRip", "720p", "X264"):
    title = title.replace(undesired_word, "")
title = 'The Big Bang Theory S09E15 720p HDTV X264-DIMENSION'

if 'HDTV' in title:
    title = title.replace('HDTV', '')

不是很像Python,但它会做你想做的

简单示例:

string = 'The Big Bang Theory S09E15 720p HDTV X264-DIMENSION'
dict = {'720p':'1080p'} # format 'substring':'replacement'

for key, value in dict.iteritems():
  if key in string:
    string.replace(key,value)          

唯一的问题是如果你想替换一个可能是另一个单词的一部分的单词。例如,如果你想用a替换“an”,那么这个例子中的字符串将变成“the Big Bag Theory…”。为了解决这个问题,我将尝试将字符串分解为一组单词,并将这些单词与字典条目进行比较。在

相关问题 更多 >