我正在尝试编写一个代码,让我找到一个数字的前几个倍数。这是我的一次尝试:
def printMultiples(n, m):
for m in (n,m):
print(n, end = ' ')
我发现,通过放置for m in (n, m):
,无论数字为m
,它都会在循环中运行。
def printMultiples(n, m):
'takes n and m as integers and finds all first m multiples of n'
for m in (n,m):
if n % 2 == 0:
while n < 0:
print(n)
经过多次搜索,我只能在java中找到示例代码,所以我尝试将其转换为python,但我没有得到任何结果。我有一种感觉,我应该在这里使用range()
函数,但我不知道在哪里。
答案 0 :(得分:7)
如果您要查找count
的第一个m
倍数,可以使用以下内容:
def multiples(m, count):
for i in range(count):
print(i*m)
或者,您可以使用范围:
执行此操作def multiples(m, count):
for i in range(0,count*m,m):
print(i)
请注意,这两项都会在0
处开始倍数 - 如果您想从m
开始,则需要将其抵消:
range(m,(count+1)*m,m)
答案 1 :(得分:4)
这样做你想要的吗?
print range(0, (m+1)*n, n)[1:]
对于m = 5,n = 20
[20, 40, 60, 80, 100]
或者更好,
>>> print range(n, (m+1)*n, n)
[20, 40, 60, 80, 100]
对于Python3 +
>>> print(list(range(n, (m+1)*n, n)))
[20, 40, 60, 80, 100]
答案 2 :(得分:1)
对于前10个倍数,请说
>>> [5*n for n in range(1,10+1)]
[5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
答案 3 :(得分:0)
def multiples(n,m,starting_from=1,increment_by=1):
"""
# Where n is the number 10 and m is the number 2 from your example.
# In case you want to print the multiples starting from some other number other than 1 then you could use the starting_from parameter
# In case you want to print every 2nd multiple or every 3rd multiple you could change the increment_by
"""
print [ n*x for x in range(starting_from,m+1,increment_by) ]
答案 4 :(得分:0)
基于数学概念,我理解:
n
,剩下的0
是n
的倍数因此,以下计算也适用于解决方案(1到100之间的倍数):
>>> multiples_5 = [n for n in range(1, 101) if n % 5 == 0]
>>> multiples_5
[5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100]
进一步阅读:
答案 5 :(得分:0)
您可以这样做:
def mul_table(n,i=1):
print(n*i)
if i !=10:
mul_table(n,i+1)
mul_table(7)
答案 6 :(得分:0)
如果这是您要寻找的-
查找给定数字和限制之间的所有倍数
def find_multiples(integer, limit):
return list(range(integer,limit+1, integer))
这应该返回-
Test.assert_equals(find_multiples(5, 25), [5, 10, 15, 20, 25])
答案 7 :(得分:0)
对于前 10 个 5 的倍数,您可以这样做
import numpy as np
#np.arange(1,11) array from 1 to 10
array_multipleof5 = [5*n for n in np.arange(1,11)]
array_multipleof5 = np.array(array_multipleof5)
print(array_multipleof5)