【问题标题】:invalid syntax error : Quine McCluskey Algorithm in python无效的语法错误:python 中的 Quine McCluskey 算法
【发布时间】:2019-07-07 22:28:32
【问题描述】:

我是 python 的新手,这是我朋友发给我的一些代码,这是 Quine-McCluskey 算法,它提供了获取 minterms 的答案,代码有点简单,但因为我不是经验丰富的 python 程序员我没有太多的想法来解决这个问题

这是源代码:Quine-McCluskey (github)

def find_minimum_cost(Chart, unchecked):
P_final = []
#essential_prime = list with terms with only one 1 (Essential Prime Implicants)
essential_prime = find_prime(Chart)
essential_prime = remove_redundant_list(essential_prime)

#print out the essential primes
if len(essential_prime)>0:
    s = "\nEssential Prime Implicants :\n"
    for i in range(len(unchecked)):
        for j in essential_prime:
            if j == i:
                s= s+binary_to_letter(unchecked[i])+' , '
    print s[:(len(s)-3)] #ERROR  <-------- 

#modifiy the chart to exclude the covered terms
for i in range(len(essential_prime)):
    for col in range(len(Chart[0])):
        if Chart[essential_prime[i]][col] == 1:
            for row in range(len(Chart)):
                Chart[row][col] = 0

-

File "C:\Users\Lenovo\Desktop\main.py", line 204
  print s[:(len(s)-3)]
        ^
SyntaxError: invalid syntax

错误在这一行:print s[:(len(s)-3)]

【问题讨论】:

  • 这是 python 2 代码,但你用 python 3 标记了问题 - 你使用的是什么版本的 python?
  • 如果你使用 Python 3 那么你需要print() 而不是print - 这意味着print( s[:(len(s)-3)] )

标签: python python-3.x algorithm


【解决方案1】:

原作者打算用python2解释器执行程序。 他(大致)写道:

print s

要使用现代 python3 解释器执行,您需要:

print(s)

【讨论】:

    猜你喜欢
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-07
    • 1970-01-01
    • 2015-04-01
    • 1970-01-01
    • 2016-08-07
    相关资源
    最近更新 更多