python - Python3.9中的str格式化
问题描述
我正在使用 Python 3.9 并尝试编写函数
def greet(request, name):
return HttpResponse(f'Hello, {name.capitalize}!')
用于格式化f
字符串,但它不起作用。关于为什么的任何想法?
解决方案
capitalize
是str
对象的方法。
因此,您需要添加括号才能调用它:
def greet(request, name):
return HttpResponse(f'Hello, {name.capitalize()}!')
此外,name.capitalize
实际上只是对函数的引用。
尝试在 python 解释器中运行以下命令:
print(str.capitalize)
你甚至可以返回这个函数:
def cap_str(string):
return string.capitalize
s = "programming in python"
capitalize_s = cap_str(s)
s_cap = capitalize_s()
print(s_cap)
我不知道这将如何特别有用,但通常返回一个函数非常有用。
推荐阅读
- python - 将 np.array 数据添加到 pandas 数据框中的列后,我可以对其进行排序吗?
- git - 特定文件的 Git 还原/签出会触及它们,但保持内容不变
- html - 在 2 个固定块之间创建一个块
- javascript - API 文档中的无效对象语法
- java - 无法读取android外部存储
- google-chrome - SSLKEYLOGFILE 环境变量不填充任何文本文件
- angular - 为什么 Angular 会从我的模板中丢失“£”符号?
- sqlite - 为什么 COUNT 在此查询中返回 NULL 而不是 `0`?
- python-3.x - 如何在没有显示错误的情况下在 python3 上运行的 cefpython 上设置高 dpi?
- javascript - 有没有办法在 bot.on("ready") 函数中向特定用户发送消息?