python - .split() 的 int 列表上出现语法错误

标签 python list python-3.x terminal

不知道为什么我似乎会遇到这个语法错误,当我在 pycharm 中运行代码时它工作得很好

我有:

import sys
import os.path
sys.path.append(os.path.join(os.path.dirname(__file__), '..'))

from DiceRolls import RandomDiceRoll

num = [int(n) for n in input("Enter Numbers: ").split(",")]
for n in num:
    print(RandomDiceRoll.diceRoll(n))

RandomDiceRoll 执行以下操作:

import sys
import random

def diceRoll(n1):
    w = random.randint(1,n1)
    return w

现在,当我在 pycharm 中运行它时,它运行良好,并打印出我想要的结果。

但是,如果我使用 python scriptName.py 从终端运行它,我会得到:

Enter Numbers: 4 0 0 
Traceback (most recent call last):
  File "userEnter.py", line 9, in <module>
    num = [int(n) for n in input("Enter Numbers: ").split(",")]
  File "<string>", line 1
    4 0 0 
      ^

我觉得我正在做一些我应该继续做的事情,但我似乎找不到它,任何帮助都会很棒!

最佳答案

问题是您的命令行使用的是 python2 而不是 python3。

你现在有两个选择

  • 使用 python 3 执行脚本,如 python3 scriptName.py
  • 将代码转换为 py2(不好的替代方案),如 num = [int(n) for n in raw_input("Enter Numbers: ").split(",")]

由于您没有使用 , 进行分隔,您也可以删除它并使用

关于python - .split() 的 int 列表上出现语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28378569/

相关文章:

python - 我如何打印/返回文件中的行数

java - Thymeleaf 在对象列表上进行多重选择

python - 使用 Python 将 url 作为文本获取时出现关键错误

python - 如何根据引号在csv中写入值并忽略引号内的逗号?

python - 矩阵行组合的生成

python - 从字典列表中获取值列表

python - 如何计算客户状态变更次数

python - 如果指定了 file,则创建并打印到新文件,否则只是 std.out

javascript - Material UI 列表组件不显示

c++ - 如何在 C++ 中创建 shared_ptr 列表?