生成文件的代码问题,
关于生成文件,我用的f=open('name','w'),输入name=abc.txt时但是结果输出的文件类型只是文件,不像标准答案那样,能生成一个txt文本,想问问各位这是为什么 全部代码呢,都没有写操作,咋能生成文件 wp231957 发表于 2021-7-3 21:54
全部代码呢,都没有写操作,咋能生成文件
name=input('请输入文件名(含拓展名):')
str1=input('请输入内容:【单独输入\':w\'保存退出】:')
f=open('name','w')
list1=[]
for each in str1:
if each==':' and each+1=='w':
break
else:
list1.append(each)
f.writelines(list1)
f.close() 月半三木 发表于 2021-7-3 21:59
name=input('请输入文件名(含拓展名):')
str1=input('请输入内容:【单独输入\':w\'保存退出】:')
...
两点
if each==':' and each+1=='w':
①是要注意冒号的中西文状态
②是each并不是索引,你用each+1是神马鬼 你直接把这里name的引号去掉就可以了
name=input('请输入文件名(含拓展名):')
str1=input('请输入内容:【单独输入\':w\'保存退出】:')
f=open(name,'w')
list1=[]
for each in str1:
if each==':' and each+1=='w':
break
else:
list1.append(each)
f.writelines(list1)
f.close()
wp231957 发表于 2021-7-3 22:04
两点
if each==':' and each+1=='w':
①是要注意冒号的中西文状态
欸,之前看一个课后作业里面有用number,然后以为可以用,那我这样只能按答案中的,直接用Input来判断是否等于:w吗 不能懒 发表于 2021-7-3 22:06
你直接把这里name的引号去掉就可以了
试了一下,不行欸,会在第六行报错
Traceback (most recent call last):
File "D:\Python\Python练习\生成文件.py", line 6, in <module>
if each==':' and each+1=='w':
TypeError: can only concatenate str (not "int") to str 月半三木 发表于 2021-7-3 22:23
试了一下,不行欸,会在第六行报错
Traceback (most recent call last):
File "D:\Python\Python练习 ...
请输入文件名(含拓展名):abc.txt
请输入内容:【单独输入':w'保存退出】:666
>>>
没有报错啊,并且也有生成txt文件 不能懒 发表于 2021-7-3 22:26
请输入文件名(含拓展名):abc.txt
请输入内容:【单独输入':w'保存退出】:666
>>>
你这个没有输入:w,所以没有执行那个each+1那一行,执行之后就会有问题了
页:
[1]