Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在答案中加上一个美元符号_Python_Python 3.x_Currency - Fatal编程技术网

Python 在答案中加上一个美元符号

Python 在答案中加上一个美元符号,python,python-3.x,currency,Python,Python 3.x,Currency,当我试着在这里写这段代码时,我得到了一个与预期不同的答案 print("Cost of purchasing",color,"paint:",'$',(cost)) 我知道:购买红色油漆的成本:$35 相反:购买红色油漆的成本:$35 在Python3中执行此代码时,如何在加上美元符号引号后去掉空格?顺便说一句,这是一个更大问题的一部分,因为我对它的方式有疑问。格式化。使用加号: print("Cost of purchasing: " + color + "Paint: $" + cost)

当我试着在这里写这段代码时,我得到了一个与预期不同的答案

print("Cost of purchasing",color,"paint:",'$',(cost))
我知道:
购买红色油漆的成本:$35

相反:
购买红色油漆的成本:$35

在Python3中执行此代码时,如何在加上美元符号引号后去掉空格?顺便说一句,这是一个更大问题的一部分,因为我对它的方式有疑问。格式化。

使用加号:

print("Cost of purchasing: " + color + "Paint: $" + cost)
甚至更好-格式:

print(f"Cost of purchasing: {color} Paint: ${cost}")

将多个值传递给print语句会在它们之间放置分隔符,默认情况下,分隔符是一个空格。如果您不需要空间,最简单的更改方法是使用
+
连接项目,而不是同时打印这两个项目

print("Cost of purchasing",color,"paint:",'$' + (cost))

在Python中对字符串使用
+
运算符效率低下,不应该这样做。使用字符串格式或(在较新的Python版本中)
f
-strings取而代之:
f“购买成本:{color}Paint:${Cost}”
@klauds。只是好奇,怎么会这样?就时间而言,从我从其他人和我的机器上看到的结果来看,连接和f字符串往往非常接近,甚至在大样本大小上也会来回移动,但
.format()
的速度要慢一些。由于串联的性能非常好,我看不出有什么理由违背个人偏好。使用
+
操作符n次会创建n+1个对象,这些对象的大小会增加,必须进行垃圾收集。我无法完全复制它。但是,
cost
周围的括号可能使它成为一个集合。不过我不确定。