题 Python:SyntaxError:关键字arg之后的非关键字


当我运行以下代码时

def regEx1():
  os.chdir("C:/Users/Luke/Desktop/myFiles")
  files = os.listdir(".")
  os.mkdir("C:/Users/Luke/Desktop/FilesWithRegEx")
  regex_txt = input("Please enter the website your are looking for:")
  for x in (files):
    inputFile = open((x), encoding = "utf8", "r")
    content = inputFile.read()
    inputFile.close()
    regex = re.compile(regex_txt, re.IGNORECASE)
    if re.search(regex, content)is not None:
      shutil.copy(x, "C:/Users/Luke/Desktop/FilesWithRegEx")

我收到以下错误消息,指向for循环后的第一行。

      ^

SyntaxError: non-keyword arg after keyword arg

导致此错误的原因是什么?


38
2018-01-09 22:35


起源


编码意味着追求 'r' 我认为 - Volatility


答案:


这就是它所说的:

inputFile = open((x), encoding = "utf8", "r")

你已经指定了 encoding 作为关键字参数,但是 "r" 作为一种位置论证。关键字参数后不能有位置参数。也许你想做:

inputFile = open((x), "r", encoding = "utf8")

71
2018-01-09 22:36



谢谢,这么简单,但如果你不知道怎么...
几秒钟打败我。荣耀是你的这次:) +1 - mgilson