Py学习  »  Yakov Dan  »  全部回复
回复总数  2
6 年前
回复了 Yakov Dan 创建的主题 » 从python的第二行读取文本文件内容

您可以从如下文件创建行列表:

with open('output.txt') as input_file:
    lines_list = input_file.readlines()    
if len(lines_list) > 1:
    lines_list=lines_list[1:] # drop the first line
    send_mail()
else:
    print ("else condition")

打开要读取的文件时使用 "r" 然后你建立一个行列表。如果列表长于1,则通过删除第一行来构建新列表

6 年前
回复了 Yakov Dan 创建的主题 » 两个n位数的乘积的最大回文(python)

代码方面,这并不太困难:

    n = 999999
    max_pali =0
    t = ()
    for i in range(1,n+1):
        for j in range(i,n+1):
            m = i*j
            s = str(m)
            if s == s[::-1] and m > max_pali:
                max_pali = m
                t = (i,j)
    print(max_pali,t)

然而,这是一种暴力手段。对于6位数的数字,这不会在合理的时间内终止。即使可以,我也可以问你同样的问题7或42位数。我建议你找一些结构或属性,这些数字的倍数是一个回文。这样的一对可以是一对数字吗?案例91*99=9009只是巧合,还是有规律?