将代码从当前文件复制到另一个python文件
我试图将几行代码从一个python文件复制到另一个python文件 这里的想法是,我正在为基于文本的冒险游戏设置一个简单的角色创建者,我需要将代码转移到角色表中,以便稍后在项目中使用 我尝试过使用.write函数,但它不接受整数 编辑;文法 编辑2;在“其他”部分搞砸了将代码从当前文件复制到另一个python文件,python,python-3.x,Python,Python 3.x,我试图将几行代码从一个python文件复制到另一个python文件 这里的想法是,我正在为基于文本的冒险游戏设置一个简单的角色创建者,我需要将代码转移到角色表中,以便稍后在项目中使用 我尝试过使用.write函数,但它不接受整数 编辑;文法 编辑2;在“其他”部分搞砸了 import sys C_sheet=open("CharacterSheet.txt", 'w') strength=10 dexterity=10 cunning=10 magic=10 mana=200 health_
import sys
C_sheet=open("CharacterSheet.txt", 'w')
strength=10
dexterity=10
cunning=10
magic=10
mana=200
health_points=100
name=input("Name your character; ",)
C_sheet.write(name)
invalid2=True
def job():
role=input("Choose your role: Fighter(F), Mage(M), Thief(T): ", )
role=role.upper()
if role=="F":
st=(strength+5)
dex=(dexterity+0)
cun=(cunning-3)
mag=(magic-5)
mn=(mana-50)
hp=(health_points+25)
C_sheet.write("Fighter")
C_sheet.write(st)
C_sheet.write(dex)
C_sheet.write(cun)
C_sheet.write(mag)
C_sheet.write(mn)
C_sheet.write(hp)
C_sheet.close()
invalid2=False
else:
print("invalid")
invalid2=True
while invalid2:
job()
我想让另一个文件看起来像这样
name=("placeholder")
st=15
dex=10
cun=7
mag=5
mn=150
hp=225
你说得对,
fh.write
只对在w
或wt
模式下打开的文件使用字符串。要解决此问题,您可以使用:
字符串格式
打开('somefile.txt',w')作为fh的:
fh.写入(“%d”%5)#用于整数
浮点数的fh写入(“%f”%6)#
fh.write(“%s”'%string')#用于字符串
#或str.format语法
打开('somefile.txt','w')作为fh:
write({}.format(5))#可传输到所有类型的变量
f字符串(仅限python 3.5+版本)
打开('somefile.txt',w')作为fh的:
write(f'{5}')#将适用于所有变量
f-strings将是我的选择,因为它对所有变量的作用都是一样的,尽管使用{}
和%
的字符串格式对于python3和python2是可移植的,如果这是一个问题的话
要使用这两个选项获得所需的格式,请执行以下操作:
字符串格式
打开('somefile.txt',w')作为fh的:
fh.write('dex=%d'%dextrity)
#将写上“dex=10”或您已替换的任何内容
f字串
打开('somefile.txt',w')作为fh的:
write(f'dex={dexterity})
.read()
给出一个str
值,除非文件打开到字节
位置,它将给出字节
,也请清理你的代码。我应该清理哪些部分?@EricJin这条评论不仅对新用户没有帮助,而且我认为它很漂亮condescending@bootsocks你说得对,file.write
仅对在w
或wt
模式下打开的文件使用字符串。您可以使用字符串格式或python3.5+的字符串格式也可以指“{}”.format('foo')