我想从整数列表中创建一个插值小数列表。我写的代码给了我正在寻找的结果,但它看起来非常麻烦:
integer_list = [288, 289, 290]
increment = 0.1
increment_list = [i * increment for i in range(10)]
interpolated_list = []
for integer in integer_list:
for decimal in increment_list:
interpolated_list.append(integer + decimal)
final_list = [number for number in interpolated_list if number <= integer_list[-1]]
必须有一种更简洁/有效的方法来解决这个问题。
答案 0 :(得分:0)
如果你想要简洁,那么它就足够简单了:
nums = [1, 2, 3]
interp = [num + (dec / 10.)
for num in nums
for dec in range(10)
if num + (dec / 10.) <= max(nums)]
由您决定是否比更明确的循环更清楚。