我在课堂上遇到了这个问题,我的问题是,有没有其他方法可以解决这个问题?只打印一次吗?

我try 进行计数,每次在两个列表中都没有解决方案时,将该计数加+1.一旦数量超过436,这一点就起作用了.但我想知道是否有更有效的解决方案.谢谢你的帮助!

a = int(input())
b = int(input())
c = int(input())
d = int(input())
e = int(input())
f = int(input())
x = [-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y = [-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
count = 0
for i in x:
    for o in y:
        if a*i + b*o == c and d*i + e*o == f:
            print('x =', i,',', 'y =', o)
        elif a*i + b*o != c and d*i + e*o !=f:
            count += 1
            if count > 436:
                print('There is no solution')

推荐答案

令人好奇的是,你也可以使用for else个语法:

import itertools

for i, o in itertools.product(range(-10,11), range(-10,11)):
    if a*i + b*o == c and d*i + e*o == f:    
        print('x =', i,',', 'y =', o)
        break
else:
    print('There is no solution')

Python相关问答推荐

如何检测背景有噪的图像中的正方形

将数据框架与导入的Excel文件一起使用

如何在Django基于类的视图中有效地使用UTE和RST HTIP方法?

Python导入某些库时非法指令(核心转储)(beautifulsoup4."" yfinance)

Pandas Data Wrangling/Dataframe Assignment

在Docker容器(Alpine)上运行的Python应用程序中读取. accdb数据库

polars:有效的方法来应用函数过滤列的字符串

如何使用正则表达式修改toml文件中指定字段中的参数值

不允许 Select 北极滚动?

BeautifulSoup-Screper有时运行得很好,很健壮--但有时它失败了::可能这里需要一些更多的异常处理?

获取git修订版中每个文件的最后修改时间的最有效方法是什么?

为什么dict. items()可以快速查找?

Python协议不兼容警告

如何根据一定条件生成段id

read_csv分隔符正在创建无关的空列

如何在Python中解析特定的文本,这些文本包含了同一行中的所有内容,

在matplotlib中重叠极 map 以创建径向龙卷风图

EST格式的Azure数据库笔记本中的当前时间戳

根据两个lambda条件筛选组并根据条件创建新列的最佳方式是什么?

使用pytest测试是否缺少导入