문자열 형식은 필요한 모든 경우에 작동합니다.
message = "Character x, your strength: {} \n".format(characterXStrength)
print(message)
print는 본질적으로 이미 개행 문자를 추가하므로 \n
두 개를 원하는 경우 에만 포함 하십시오.
print('Character one , your strength:',str(characterOneStrength) + '\n')
거의 있습니다.
print("character one your strength is:"+str(characterOneStrength)+"
당신은 양쪽에 플러스가 필요합니다
-------------------다음은 확장 버전입니다. 추적 해보세요. 많은 것을 배워야합니다.
import random
import sys
if sys.hexversion < 0x3000000:
# Python 2.x
inp = raw_input
rng = xrange
else:
# Python 3.x
inp = input
rng = range
NAMES = [
"Akhirom", "Amalric", "Aratus", "Athicus", "Bragoras", "Cenwulf", "Chiron",
"Crassides", "Dayuki", "Enaro", "Farouz", "Galbro", "Ghaznavi", "Godrigo",
"Gorulga", "Heimdul", "Imbalayo", "Jehungir", "Karanthes", "Khossus"
]
NUM_CHARS = 5
OUTPUT = "CharacterAttributes.txt"
def roll(*args):
"""
Return the results of rolling dice
"""
if len(args) == 1: # roll(num_sides)
sides, = args
return random.randint(1, sides)
elif len(args) == 2: # roll(num_dice, num_sides)
num, sides = args
return sum(random.randint(1, sides) for _ in rng(num))
else:
raise TypeError("roll() takes 1 or 2 arguments")
class Character:
def __init__(self, name=None):
if name is None:
name = inp("Please input character name: ").strip()
self.name = name
self.strength = 10 + roll(10) // roll(4)
self.skill = 10 + roll(10) // roll(4)
def __str__(self):
return "{}: strength {}, skill {}".format(self.name, self.strength, self.skill)
def main():
# generate names (assumes len(NAMES) >> NUM_CHARS)
names = random.sample(NAMES, NUM_CHARS - 1)
# make a character for each name
chars = [Character(name) for name in names]
# add an unnamed character (prompt for name)
chars.append(Character())
# write characters to file
with open(OUTPUT, "w") as outf:
for ch in chars:
outf.write("{}\n".format(ch))
if __name__=="__main__":
main()
그리고 흥미를 위해 다음은 힘과 기술 속성에 대한 기대 값 분포입니다.
10: ****** (15.0%)
11: ********** (25.0%)
12: ********* (22.5%)
13: ***** (12.5%)
14: *** ( 7.5%)
15: ** ( 5.0%)
16: * ( 2.5%)
17: * ( 2.5%)
18: * ( 2.5%)
19: * ( 2.5%)
20: * ( 2.5%)
출처
https://stackoverflow.com/questions/22050356