好吧,我给自己定了个挑战,这样我就可以做些编程了。
但是我遇到了一些问题。

adtprice = {19.99 , 49.99}
chldprice = adtprice * (3/4) - 7.5

这就是我得到的结果。
Traceback (most recent call last):
File "C:/Users/Owner/Desktop/Programming Scripts/park.py", line 2, in <module>
chldprice = adtprice * (3/4) - 7.5
TypeError: unsupported operand type(s) for *: 'set' and 'float'

我希望它简单实用,因为我会经常使用adtprice和chldpice。

最佳答案

首先,你有一套,而不是一个清单使用方括号创建列表,而不是大括号。
正如其他人提到的,您需要对列表中的各个元素进行操作。
你可以通过一个列表来理解

adtprice  = [19.99, 49.99]
chldprice = [p * (3./4) - 7.5
             for p in adtprice]

或者使用map,如果您愿意:
adtprice  = [19.99, 49.99]
chldprice = map(lambda p: p * (3./4) - 7.5,
                adtprice)

如果您想对序列执行这些类型的批量操作,请考虑使用numpy它是一组库,以简洁而强大的方式高效地处理矩阵和向量数学。例如:
adtprice  = numpy.array([19.99, 49.99])
chldprice = adtprice * (3./4) - 7.5

10-01 06:43