Saint_HUFS 发表于 2021-12-2 18:15:45

python if条件句中 or 的相关问题

本帖最后由 Saint_HUFS 于 2021-12-2 18:18 编辑

raw_txt_path = './raw_Tang_poetry_test.txt'

with open(raw_txt_path, encoding='utf-8') as f:
    txt = f.read().split('\n')
# print(txt)
result = []
t = ''# 一首诗的临时存储
f = 0# 本诗是否已经开始存储
for line in txt:
    if line:# 如果本行有字符串
      if',' or '。' or '?' in line:# 如果本行有逗号,问号,或者句号就是诗句
            f = 1
            t += line
      else:# 如果本行是诗的标题
            t += line + ': '
    else:# 如果行没有内容
      if f:# 如果本诗已存储完毕,存储到result列表中
            result.append(t)
            t = ''
            f = 0
print(result)

请问 为什么 if 条件句中 ,如下所示的else部分不执行?可是当if','in line: 却能执行?
      else:# 如果本行是诗的标题
            t += line + ': '

jackz007 发表于 2021-12-2 18:38:42

      这一句
if',' or '。' or '?' in line:
      恐怕得改成这样
if ',' in line or '。' in line or '?' in line :

Saint_HUFS 发表于 2021-12-2 18:54:44

jackz007 发表于 2021-12-2 18:38
这一句

      恐怕得改成这样

感谢!!!!{:5_101:}
页: [1]
查看完整版本: python if条件句中 or 的相关问题