python基础问题

5的平方是25,5是25中右端的数,25的平方是625,25是625中右端的数。
根据此规律,找出1-10000以内所有有类似规律的数。并且储存一个列表,索引0列储存这样的数,索
引1列储存这个数的平方。
#程序:
#结果:


lst = []
for i in range(1, 10000):
square = i ** 2
if str(i) == str(square)[-len(str(i)):]:
lst.append([i, square])
print(lst)
def check_rule(n):
    squared = str(n ** 2)
    last_digit = str(n)[-1]
    return squared.endswith(last_digit)

numbers = []
for num in range(1, 10001):
    if check_rule(num):
        numbers.append([num, num ** 2])

# 输出满足规律的数及其平方
for pair in numbers:
    print(pair[0], pair[1])

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7731596
  • 这篇博客你也可以参考下:Python中,数字1-5可以组成的互不相同且无重复数字的三位数。
  • 除此之外, 这篇博客: python_错题本中的 23.编写程序,生成包含1000个0到100之间的随机整数,并统计每个元素的出现次数。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 方法一:

    import random
    
    l = [random.randint(1,100) for i in range(1000)]
    s = set(l)
    for i in s:
        print(i,':',l.count(i))

    方法二:

    import random
    
    l = []
    def js():
        global l
        for i in range(1000):
            n = random.randint(0, 100)
            l.append(n)
    
    js()
    print(l)
    s = set(l)
    for i in s:
        print(i,l.count(i))

  • 您还可以看一下 王进老师的跟着王进老师学开发Python篇:基础入门案例讲解课程中的 案例02: 计算1-100之间后5个质数之和小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:
    # 首先定义一个空列表来存储结果
    result = []
    # 然后从1到10000遍历每个数
    for i in range(1, 10000):
        # 如果这个数的平方末尾两位是它本身
        if (i ** 2) % 100 == i:
            # 将这个数及其平方加入结果列表
            result.append([i, i ** 2])
    # 输出结果列表
    print(result)
    
list=[]
for i in range(10000):
    if str(i*i).endswith(str(i)):
        list.append([i, i*i])
print(list)

[[0, 0], [1, 1], [5, 25], [6, 36], [25, 625], [76, 5776], [376, 141376], [625, 390625], [9376, 87909376]]