1801967725 发表于 2022-10-12 08:55:21

find 函数求助

    if op == 2:
      name = input("请输入电影名称:")
      for each in movies:
            if each.find(name) != -1:
                print(f"电影名称:{each}")
                print(f"上映日期:{dates}")
                print(f"导演名单:{directors}")
                print(f"演员名单:{actors}")
                print(f"当前评分:{scores}")
                break
      else:
            print("查无此片!")


请问print(f"上映日期:{dates}") 中的f是什么意思?为什么要加上去?

jackz007 发表于 2022-10-12 09:26:01

本帖最后由 jackz007 于 2022-10-12 10:05 编辑

       这是 f-格式化字符串(f-string),在 Python v3.6+ 版本才支持的新功能,其作用是插入并格式化字符串中的变量,也就是说,用来把变量按要求的格式插入到字符串中。
       例如:
>>> year = 2016
>>> event = 'Referendum'
>>> f'Results of the {year} {event}'   # 把字符串内花括号中的变量(year、event)按照各自的缺省格式添加到花括号所在的位置
'Results of the 2016 Referendum'
       又例如:
>>> import math
>>> print(f'The value of pi is approximately {math.pi:.3f}.')   # 把字符串内花括号中的参数(math . pi)按照 '.3f' 的格式(浮点数,保留 3 位小数)添加到花括号所在的位置
The value of pi is approximately 3.142.
       以楼主提问为例,就是为了把字符串里花括号里的变量值添加到字符串中花括号所在的位置,其效果相当于:
print("上映日期:" + str(dates))

dragov 发表于 2022-10-12 10:21:13



print(f"上映日期:{dates}")

相当于:

print("上映日期:{0}".format(dates))

print("上映日期:%s"%(dates))
页: [1]
查看完整版本: find 函数求助