簡體   English   中英

為什么會出現語法錯誤?

[英]Why does this come up with a syntax error?

這是我的代碼(其中IDLE強調'print'並說'無效語法':

import random
initial_val = 10
attributes = str("Character 1's Strength: ",(random.randint(1,12)/random.randint(1,4) +         initial_val), \
"\nCharacter 1's Skill: ",(random.randint(1,12)/random.randint(1,4) + initial_val), \
"\n\nCharacter 2's Strength: ",(random.randint(1,12)/random.randint(1,4) + initial_val), \
"\nCharacter 2's Skill: ",(random.randint(1,12)/random.randint(1,4) + initial_val)
print(attributes)
file = open("Attribute.txt", "w")
file.write(attributes)
file.close()
input("\n\nPress enter to exit")

為什么這樣做? 這可能非常明顯,但我是編程新手。 非常感謝

一行缺少結束)括號:

attributes = str("Character 1's Strength: ",(random.randint(1,12)/random.randint(1,4) +         initial_val), \
"\nCharacter 1's Skill: ",(random.randint(1,12)/random.randint(1,4) + initial_val), \
"\n\nCharacter 2's Strength: ",(random.randint(1,12)/random.randint(1,4) + initial_val), \
"\nCharacter 2's Skill: ",(random.randint(1,12)/random.randint(1,4) + initial_val)

str(函數調用從未關閉。

使用字符串格式和"""三重引號”字符串代替更易讀的聲明:

attributes = """\
Character 1's Strength: {}
Character 1's Skill: {}

Character 2's Strength: {}
Character 2's Skill: {}
""".format(
    random.randint(1, 12) / random.randint(1, 4) + initial_val,
    random.randint(1, 12) / random.randint(1, 4) + initial_val,
    random.randint(1, 12) / random.randint(1, 4) + initial_val,
    random.randint(1, 12) / random.randint(1, 4) + initial_val)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM