Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中给出语法错误的掷骰程序_Python - Fatal编程技术网

python中给出语法错误的掷骰程序

python中给出语法错误的掷骰程序,python,Python,该程序的目标是按照用户的意愿掷骰子2次,然后列出骰子掷1、2、3、4等的次数。行“die1=random.randint(1,6)和die2=random.randint(1,6)给我一个语法错误并突出显示“die1”“介意告诉我我做错了什么吗?在等式中,运算符是=而不是= import random #set counters counter2=0 counter3=0 counter4=0 counter5=0 counter6=0 counter7=0 counter8=0 cou

该程序的目标是按照用户的意愿掷骰子2次,然后列出骰子掷1、2、3、4等的次数。行“die1=random.randint(1,6)和die2=random.randint(1,6)给我一个语法错误并突出显示“die1”“介意告诉我我做错了什么吗?

在等式中,运算符是
=
而不是
=

    import random
#set counters
counter2=0
counter3=0
counter4=0
counter5=0
counter6=0
counter7=0
counter8=0
counter9=0
counter9=0
counter10=0
counter11=0
counter12=0
doubles=0

def main():
    #get input from user
    rolls = int(input("How many times would you like to roll the dice?")
    for count in range(rolls+1)
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 = 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
如果die1+die2==2:

rolls=int(输入(“您想掷骰子多少次?”)中的相等运算符是
=
而不是
=

    import random
#set counters
counter2=0
counter3=0
counter4=0
counter5=0
counter6=0
counter7=0
counter8=0
counter9=0
counter9=0
counter10=0
counter11=0
counter12=0
doubles=0

def main():
    #get input from user
    rolls = int(input("How many times would you like to roll the dice?")
    for count in range(rolls+1)
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 = 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
如果die1+die2==2:

rolls=int(输入(“您想掷骰子多少次?”)中的相等运算符是
=
而不是
=

    import random
#set counters
counter2=0
counter3=0
counter4=0
counter5=0
counter6=0
counter7=0
counter8=0
counter9=0
counter9=0
counter10=0
counter11=0
counter12=0
doubles=0

def main():
    #get input from user
    rolls = int(input("How many times would you like to roll the dice?")
    for count in range(rolls+1)
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 = 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
如果die1+die2==2:

rolls=int(输入(“您想掷骰子多少次?”)中的相等运算符是
=
而不是
=

    import random
#set counters
counter2=0
counter3=0
counter4=0
counter5=0
counter6=0
counter7=0
counter8=0
counter9=0
counter9=0
counter10=0
counter11=0
counter12=0
doubles=0

def main():
    #get input from user
    rolls = int(input("How many times would you like to roll the dice?")
    for count in range(rolls+1)
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 = 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
如果die1+die2==2:
rolls=int(输入(“您想掷骰子多少次?”)一些错误:

  • if
    不带冒号的语句
  • 相等性测试是
    =
    ,而不是
    =
  • 缺少的右括号
  • 全局变量在函数中不可访问,请将其设置为局部变量
下面是正确的版本:

if die1 + die2 == 2:



rolls = int(input("How many times would you like to roll the dice?")) <- missing this parentheses
有几个错误:

  • if
    不带冒号的语句
  • 相等性测试是
    =
    ,而不是
    =
  • 缺少的右括号
  • 全局变量在函数中不可访问,请将其设置为局部变量
下面是正确的版本:

if die1 + die2 == 2:



rolls = int(input("How many times would you like to roll the dice?")) <- missing this parentheses
有几个错误:

  • if
    不带冒号的语句
  • 相等性测试是
    =
    ,而不是
    =
  • 缺少的右括号
  • 全局变量在函数中不可访问,请将其设置为局部变量
下面是正确的版本:

if die1 + die2 == 2:



rolls = int(input("How many times would you like to roll the dice?")) <- missing this parentheses
有几个错误:

  • if
    不带冒号的语句
  • 相等性测试是
    =
    ,而不是
    =
  • 缺少的右括号
  • 全局变量在函数中不可访问,请将其设置为局部变量
下面是正确的版本:

if die1 + die2 == 2:



rolls = int(input("How many times would you like to roll the dice?")) <- missing this parentheses

与前面的答案一致,for
循环的
存在问题,并且缺少
。 但是,如果您愿意接受,您的代码可以大大简化 这将有助于防止进一步的语法错误,因为代码更加精简且相对简单。主要区别在于使用了
defaultdict

import random

def main():
    #set counters
    counter2=0
    counter3=0
    counter4=0
    counter5=0
    counter6=0
    counter7=0
    counter8=0
    counter9=0
    counter10=0
    counter11=0
    counter12=0
    doubles=0

    #get input from user
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls+1):
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 == 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
当然,输出可以按照您喜欢的任何方式进行格式化,以满足您的需要,即排序、排序等


基本上,在这种情况下,如果字典中不存在键,则将创建一个键,并为其分配整数值0。实际上,对代码的唯一更改是删除所有初始化并合并if检查。数字只能是一个数值,并且可能是“双倍的”。

与前面的答案一致,循环的
存在问题,并且缺少
。 但是,如果您愿意接受,您的代码可以大大简化 这将有助于防止进一步的语法错误,因为代码更加精简且相对简单。主要区别在于使用了
defaultdict

import random

def main():
    #set counters
    counter2=0
    counter3=0
    counter4=0
    counter5=0
    counter6=0
    counter7=0
    counter8=0
    counter9=0
    counter10=0
    counter11=0
    counter12=0
    doubles=0

    #get input from user
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls+1):
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 == 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
当然,输出可以按照您喜欢的任何方式进行格式化,以满足您的需要,即排序、排序等


基本上,在这种情况下,如果字典中不存在键,则将创建一个键,并为其分配整数值0。实际上,对代码的唯一更改是删除所有初始化并合并if检查。数字只能是一个数值,并且可能是“双倍的”。

与前面的答案一致,循环的
存在问题,并且缺少
。 但是,如果您愿意接受,您的代码可以大大简化 这将有助于防止进一步的语法错误,因为代码更加精简且相对简单。主要区别在于使用了
defaultdict

import random

def main():
    #set counters
    counter2=0
    counter3=0
    counter4=0
    counter5=0
    counter6=0
    counter7=0
    counter8=0
    counter9=0
    counter10=0
    counter11=0
    counter12=0
    doubles=0

    #get input from user
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls+1):
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 == 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
当然,输出可以按照您喜欢的任何方式进行格式化,以满足您的需要,即排序、排序等


基本上,在这种情况下,如果字典中不存在键,则将创建一个键,并为其分配整数值0。实际上,对代码的唯一更改是删除所有初始化并合并if检查。数字只能是一个数值,并且可能是“双倍的”。

与前面的答案一致,循环的
存在问题,并且缺少
。 但是,如果您愿意接受,您的代码可以大大简化 这将有助于防止进一步的语法错误,因为代码更加精简且相对简单。主要区别在于使用了
defaultdict

import random

def main():
    #set counters
    counter2=0
    counter3=0
    counter4=0
    counter5=0
    counter6=0
    counter7=0
    counter8=0
    counter9=0
    counter10=0
    counter11=0
    counter12=0
    doubles=0

    #get input from user
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls+1):
        #roll dice
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        #add up dice totals to counters
        if die1 + die2 == 2:
            counter2 += 1
        if die1 + die2 == 3:
            counter3 += 1
        if die1 + die2 == 4:
            counter4 += 1
        if die1 + die2 == 5:
            counter5 += 1
        if die1 + die2 == 6:
            counter6 += 1
        if die1 + die2 == 7:
            counter7 += 1
        if die1 + die2 == 8:
            counter8 += 1
        if die1 + die2 == 9:
            counter9 += 1
        if die1 + die2 == 10:
            counter10 += 1
        if die1 + die2 == 11:
            counter11 += 1
        if die1 + die2 == 12:
            counter12 += 1
        if die1 == die2:
            doubles += 1
    #print data
    print("2 - ", counter2, \
          "3 - ", counter3, \
          "4 - ", counter4, \
          "5 - ", counter5, \
          "6 - ", counter6, \
          "7 - ", counter7, \
          "8 - ", counter8, \
          "9 - ", counter9, \
          "10 - ", counter10, \
          "11 - ", counter11, \
          "12 - ", counter12, \
          "Doubles - ", doubles)
main()
当然,输出可以按照您喜欢的任何方式进行格式化,以满足您的需要,即排序、排序等


基本上,在这种情况下,如果字典中不存在键,则将创建一个键,并为其分配整数值0。实际上,对代码的唯一更改是删除所有初始化并合并if检查。数字只能是一个数值,并且可能是“双倍的”。

我对您的程序做了一些调整

请注意,在嵌套联接调用中使用生成器表达式可以提高效率

import random
from collections import defaultdict    


def main():
    counter = defaultdict(int)
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls):
        die1,die2 = random.randint(1,6),random.randint(1,6)
        counter[die1+die2]+=1
        if die1 == die2:
            counter['Doubles']+=1
    counter
    print('\n'.join('%s - %s '%(key,value) for key,value in counter.iteritems()))

我把你的程序修好了一点

请注意,在嵌套联接调用中使用生成器表达式可以提高效率

import random
from collections import defaultdict    


def main():
    counter = defaultdict(int)
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls):
        die1,die2 = random.randint(1,6),random.randint(1,6)
        counter[die1+die2]+=1
        if die1 == die2:
            counter['Doubles']+=1
    counter
    print('\n'.join('%s - %s '%(key,value) for key,value in counter.iteritems()))

我把你的程序修好了一点

请注意,在嵌套联接调用中使用生成器表达式可以提高效率

import random
from collections import defaultdict    


def main():
    counter = defaultdict(int)
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls):
        die1,die2 = random.randint(1,6),random.randint(1,6)
        counter[die1+die2]+=1
        if die1 == die2:
            counter['Doubles']+=1
    counter
    print('\n'.join('%s - %s '%(key,value) for key,value in counter.iteritems()))

我把你的程序修好了一点

请注意,在嵌套联接调用中使用生成器表达式可以提高效率

import random
from collections import defaultdict    


def main():
    counter = defaultdict(int)
    rolls = int(input("How many times would you like to roll the dice?"))
    for count in range(rolls):
        die1,die2 = random.randint(1,6),random.randint(1,6)
        counter[die1+die2]+=1
        if die1 == die2:
            counter['Doubles']+=1
    counter
    print('\n'.join('%s - %s '%(key,value) for key,value in counter.iteritems()))

for
行末尾缺少冒号。将冒号放在for行末尾也会在冒号处出现语法错误。为什么?”