Lines Matching refs:prod

1802         prod = math.prod
1803 self.assertEqual(prod([]), 1)
1804 self.assertEqual(prod([], start=5), 5)
1805 self.assertEqual(prod(list(range(2,8))), 5040)
1806 self.assertEqual(prod(iter(list(range(2,8)))), 5040)
1807 self.assertEqual(prod(range(1, 10), start=10), 3628800)
1809 self.assertEqual(prod([1, 2, 3, 4, 5]), 120)
1810 self.assertEqual(prod([1.0, 2.0, 3.0, 4.0, 5.0]), 120.0)
1811 self.assertEqual(prod([1, 2, 3, 4.0, 5.0]), 120.0)
1812 self.assertEqual(prod([1.0, 2.0, 3.0, 4, 5]), 120.0)
1815 self.assertEqual(prod([1, 1, 2**32, 1, 1]), 2**32)
1817 self.assertEqual(prod([1.0, 1.0, 2**32, 1, 1]), float(2**32))
1819 self.assertRaises(TypeError, prod)
1820 self.assertRaises(TypeError, prod, 42)
1821 self.assertRaises(TypeError, prod, ['a', 'b', 'c'])
1822 self.assertRaises(TypeError, prod, ['a', 'b', 'c'], start='')
1823 self.assertRaises(TypeError, prod, [b'a', b'c'], start=b'')
1825 self.assertRaises(TypeError, prod, values, start=bytearray(b''))
1826 self.assertRaises(TypeError, prod, [[1], [2], [3]])
1827 self.assertRaises(TypeError, prod, [{2:3}])
1828 self.assertRaises(TypeError, prod, [{2:3}]*2, start={2:3})
1829 self.assertRaises(TypeError, prod, [[1], [2], [3]], start=[])
1832 self.assertEqual(prod([2, 3], start='ab'), 'abababababab')
1833 self.assertEqual(prod([2, 3], start=[1, 2]), [1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2])
1834 self.assertEqual(prod([], start={2: 3}), {2:3})
1837 prod([10, 20], 1) # start is a keyword-only argument
1839 self.assertEqual(prod([0, 1, 2, 3]), 0)
1840 self.assertEqual(prod([1, 0, 2, 3]), 0)
1841 self.assertEqual(prod([1, 2, 3, 0]), 0)
1851 self.assertEqual(prod(iterable), _naive_prod(iterable))
1853 self.assertEqual(prod(iterable), _naive_prod(iterable))
1855 self.assertEqual(prod(iterable), 0)
1860 self.assertEqual(prod(iterable), _naive_prod(iterable))
1862 self.assertEqual(prod(iterable), _naive_prod(iterable))
1864 self.assertIsNaN(prod(iterable))
1868 self.assertIsNaN(prod([1, 2, 3, float("nan"), 2, 3]))
1869 self.assertIsNaN(prod([1, 0, float("nan"), 2, 3]))
1870 self.assertIsNaN(prod([1, float("nan"), 0, 3]))
1871 self.assertIsNaN(prod([1, float("inf"), float("nan"),3]))
1872 self.assertIsNaN(prod([1, float("-inf"), float("nan"),3]))
1873 self.assertIsNaN(prod([1, float("nan"), float("inf"),3]))
1874 self.assertIsNaN(prod([1, float("nan"), float("-inf"),3]))
1876 self.assertEqual(prod([1, 2, 3, float('inf'),-3,4]), float('-inf'))
1877 self.assertEqual(prod([1, 2, 3, float('-inf'),-3,4]), float('inf'))
1879 self.assertIsNaN(prod([1,2,0,float('inf'), -3, 4]))
1880 self.assertIsNaN(prod([1,2,0,float('-inf'), -3, 4]))
1881 self.assertIsNaN(prod([1, 2, 3, float('inf'), -3, 0, 3]))
1882 self.assertIsNaN(prod([1, 2, 3, float('-inf'), -3, 0, 2]))
1886 self.assertEqual(type(prod([1, 2, 3, 4, 5, 6])), int)
1887 self.assertEqual(type(prod([1, 2.0, 3, 4, 5, 6])), float)
1888 self.assertEqual(type(prod(range(1, 10000))), int)
1889 self.assertEqual(type(prod(range(1, 10000), start=1.0)), float)
1890 self.assertEqual(type(prod([1, decimal.Decimal(2.0), 3, 4, 5, 6])),