f-string相关内容
在用于Atom的Python3中使用f字符串时,它不会正确地自动完成字符串。键入 types_of_people = 10 x = f"There are {types_of_people} types_of_people." 我开始键入时收到x = f"...,但末尾引号不自动补全 当我键入结束引号时,我得到x = f"There are {types_of_people} ty
..
我正在试用 Python 3.6.通过新代码,我偶然发现了这种新语法: f"我的格式化字符串!" 似乎我们可以这样做: >>>姓名 = "乔治">>>print(f"我很酷的字符串叫做{name}.")我很酷的字符串叫做乔治. 谁能解释一下它的内部运作方式?特别是 f 前缀字符串可以采用的变量范围是什么? 解决方案 参见 PEP 498 文字字符串插值: 从字符串中提取的
..
感谢 David Beazley 的推文,我最近发现新的 Python 3.6 f-strings 也可以嵌套: >>>价格 = 478.23>>>f"{f'${price:0.2f}':*>20s}"'**************** 478.23 美元' 或者: >>>x = 42>>>f'''-{f"""*{f"+{f'.{x}.'}+"}*"""}-''''-*+.42.+*-'
..
我有一个字符串,我想在其中使用大括号,但也要利用 f-strings 功能.是否有一些适用于此的语法? 这里有两种方法不起作用.我想包含文字文本 {bar} 作为字符串的一部分. foo = "test";fstring = f"{foo} {bar}"; NameError: name 'bar' 未定义 fstring = f"{foo} \{bar\}"; SyntaxErro
..
Python f-strings 是否有一种简单的方法来修复小数点后的位数?(特别是 f 字符串,而不是其他字符串格式选项,如 .format 或 %) 例如,假设我想在小数点后显示 2 位数字. 我该怎么做?说吧 a = 10.1234 解决方案 在格式表达式中包含类型说明符: >>>a = 10.1234>>>f'{a:.2f}''10.12'
..
我正在使用模板字符串来生成一些文件,我喜欢为此目的的新 f 字符串的简洁性,以减少我以前的模板代码: template_a = "当前名称是{name}"名称 = ["foo", "bar"]对于名字中的名字:打印 (template_a.format(**locals())) 现在我可以这样做了,直接替换变量: names = ["foo", "bar"]对于名字中的名字:print (f
..
Python 2.6 引入了 str.format() 方法的语法与现有的 % 运算符略有不同.哪个更好,适用于哪些情况? Python 3.6 现在通过语法 f“my string" 引入了另一种字符串格式化格式的字符串文字(又名“f"字符串).这个格式化选项比其他的更好吗? 以下使用每种方法,结果都一样,那么有什么区别? #!/usr/bin/pythonsub1 = "pyt
..
尝试读取 csv 文件并打印内容: with open('C:\test.csv') 作为 csvfile:csv_reader = csv.reader(csvfile, delimiter=',')行数 = 0对于 csv_reader 中的行:如果 line_count == 0:打印(f'列名是{", ".join(row[0])}')行数 += 1别的:print(f'\t{row[
..
这个问题来自处理jupyter magics,但可以用更简单的方式表达.给定一个字符串 s = "the key is {d['key']}" 和一个字典 d = {'key': 'val'},我们想要解析字符串. 旧方法是 .format(),它会引发错误 - 它不处理字典键. "key is {d['key']}".format(d=d) # ERROR 我认为唯一的方法是将字典转换
..
我有一些字符串,它们最初用加号连接并包含正则表达式字符串.举个例子: "Level 4: " + re.sub(r"(\w)([A-Z])", r"\1 \2",人才[1]) + "\n\n" 但是,我一直想使用更合适的格式.我对 f 弦做了一些研究,我想在这里使用它们.我是这样试的: f'Level 4: {re.sub(r"(\w)([A-Z])", r"\1 \2",人才[1])} \
..
众所周知,{} 在 Python f-strings 中的用法是执行代码段并以 string 格式给出结果(一些教程此处).但是,表达式末尾的“="是什么意思? log_file = open("log_aug_19.txt", "w")console_error = '...stuff...' # 真正的代码是用正则表达式生成的log_file.write(f'{console_error='
..
如果我有一个 yaml 文件,其中包含一个带有括号符号 {} 的字符串,与 python f-strings 一起使用,这里如何利用 f-string 插值?以这个简单的 yaml 文件为例: # tmp.yamlk1: val1k2:val2 以及 {x} 如果x = 'val3',我希望k2的值反映val2以及val3 # app.pyx = 'val3'with open('tmp.y
..
我最近尝试学习用 python 编写代码,但我对我们那里的任何编程语言的知识都为零,我在其中遇到了这个问题,我正在尝试使用 f-string 函数. 我的 Python 版本是 3.6.2 这是我要运行的代码 greeting = '你好'姓名 = '约翰'消息 = f'{问候} {名称}.欢迎!'打印(消息) 这是它向我显示的错误. 文件“/Users/RQ/Desktop/i
..
在最近的 Python 3.6 版本中使用新的 f-strings 时,我注意到以下几点: 我们创建一个 foo 变量,值为 bar: >>>foo = '酒吧' 然后,我们声明一个新变量,它是我们的 f 字符串,它应该需要 foo 进行格式化: >>>baz = f'坚持{foo}' 好的,一切顺利,然后我们调用 baz 来检查它的值: >>>巴兹'坚持在酒吧' 让
..
我了解了 python 3.6 中新的 f 字符串的作用,但是下面的代码片段中的结尾 !r 呢? def __repr__(self):return (f'Pizza({self.radius!r}, 'f'{self.ingredients!r})') 解决方案 它只是调用所提供值的 repr. f-strings 通常不需要它的用法,因为使用它们你可以只做 repr(self.ra
..
我一直在使用新的 f-string 格式检查我的一些字符串格式选项.我经常需要解压缩列表和其他未知长度的迭代.目前我使用以下... >>>a = [1, 'a', 3, 'b']>>>("解压一个列表:" + " {} "*len(a)).format(*a)'解压列表:1 a 3 b ' 这虽然有点麻烦,但使用 3.6 之前的 .format 符号来完成这项工作.考虑到运行时字符串连接,
..
如何将经典字符串转换为 f 字符串? 变量 = 42user_input = "答案是{变量}";打印(用户输入) 输出:答案是{variable} f_user_input = # 这里是从一个字符串到一个 f 字符串的操作打印(f_user_input) 期望输出:答案是42 解决方案 f 字符串是语法,而不是对象类型.您不能将任意字符串转换为该语法,该语法会创建一个字符串对象
..
我在 Python 3.5 项目中经常使用 .format(),但我担心它会在下一个 Python 版本中被弃用,因为 f-strings,新的一种字符串文字. >>>名称 = “测试">>>f“我的应用程序名称是 {name}."“我的应用程序名称是测试." 格式化字符串功能是否会完全取代旧的.format()?从现在开始,在所有情况下都使用新样式会更好吗? 我理解它基于“简单胜于
..
Python 2.6引入了 str.format() 方法,其语法与现有的%运算符略有不同.哪种更好,什么情况下适合? Python 3.6现在通过语法 f"my string" 引入了字符串文字(又称"f"字符串)的另一种字符串格式化格式.这个格式选项比其他格式更好吗? 以下内容使用每种方法并具有相同的结果,所以有什么区别? #!/usr/bin/pythonsub1 = "pyt
..
在python文档中 2.4.3.格式化的字符串文字,似乎可以在f字符串的 {} 中写一个星号后跟一个表达式,但是我找不到如何使用它. 那是什么以及我如何使用它?它记录在某处吗? 确切地说,这与以下 我在REPL中尝试过,但是会导致错误. >>>l = [1、2、3]>>>f"{l}"'[1、2、3]'>>>f"{* l}"文件“",第1行SyntaxError
..