新手求助!一个关于简易信息管理系统的求助
本帖最后由 AresFC 于 2021-1-8 15:08 编辑000 帖子发不出去了!问题放在二楼!
麻烦各位大神看看哪里错了{:10_266:}
address=list()
print("1.显示所有信息")
print("2.追加信息")
print("3.删除信息")
print("4.退出")
number=['1','2','3','4']
while True:
n=(input('请输入数字1-4选择功能:'))
if n in number:
break
else:
print('输入错误,请重新输入!')
continue
while True:
if n=='1':
f=open('address.txt')
f.seek(0)
for line in f:
print(line,end='')
f.close()
elif n=='2':
a=str(input('请输入学生信息并用逗号隔开:'))
b=('\n')
f=open('address.txt','a')
f.write(b)
f.write(a)
f.close()
f=open('address.txt')
f.seek(0)
for line in f:
print(line,end='\n')
f.close()
elif n=='3':
f=open('address.txt')
student=list(f)
f.close()
f=open('address.txt','w')
d=input('请输入要删除的学生学号:')
for s in student:
if s[:1]==d:
print('已删除学号为'd'的学生信息')
else:
f.write(s)
f.close()
else:
break 你应该自己说说错哪了吧,你怎么发现错的 tryhi 发表于 2021-1-8 15:07
你应该自己说说错哪了吧,你怎么发现错的
运行的时候显示invalid syntax,定位在第42行 AresFC 发表于 2021-1-8 15:02
帖子发不出去了!问题放在二楼!
麻烦各位大神看看哪里错了
第四十一行
改成 print('已删除学号为'+d+'的学生信息') AresFC 发表于 2021-1-8 15:10
运行的时候显示invalid syntax,定位在第42行
print('已删除学号为'd'的学生信息')
那就研究一下这行哪里错咯,提取出来,把d赋个值,在运行,不就发现了 需求为:有一txt文档命名为‘address.txt’,里面有多条数据,需要完成1.显示所有信息2.追加信息3.删除信息4.退出 这样四个操作,用户通过输入数字选择功能 print('已删除学号为'd'的学生信息')
改为
print('已删除学号为 %s 的学生信息' % d)
或
print('已删除学号为' , d , '的学生信息')
或
print('已删除学号为' + d + '的学生信息')
都可以,唯独不改不可以 AresFC 发表于 2021-1-8 15:13
需求为:有一txt文档命名为‘address.txt’,里面有多条数据,需要完成1.显示所有信息2.追加信息3.删除信息 ...
看五楼回复,八楼正解 昨非 发表于 2021-1-8 15:12
第四十一行
改成
谢谢!请问这里为什么一定需要加号呢?
刚刚开始学习Python还不太熟练望谅解 AresFC 发表于 2021-1-8 15:19
谢谢!请问这里为什么一定需要加号呢?
刚刚开始学习Python还不太熟练望谅解
d是字符串类型(input函数的返回值就是字符串)
print函数中,字符串的拼接需要用+实现
要么就用逗号隔开,分开打印 谢谢大家!默默问一下如果出现报错应该如何找原因啊
比如出现类似报错(invalid syntax)是要先检查前面一行吗 AresFC 发表于 2021-1-8 15:43
谢谢大家!默默问一下如果出现报错应该如何找原因啊
比如出现类似报错(invalid syntax)是要先检查前面一 ...
英文报错看不懂的话建议复制到百度翻译上去,
看看中文意思,然后再定位错误位置,一般都在报错位置的上下两行
当然要具体问题具体分析哈
还有,
楼主问题解决了记得设置最佳答案,养成及时结帖的好习惯,
这样以后再提问题大家才会积极回答
页:
[1]