shell模式下 input多行字符
各位大神 问一个比较初级的问题。。。。就是关于python里我想输入在shell里 input里 多行字符 应该怎么输啊,是直接enter 报错了。。。 \n 存入的文本默认为字符串输进去了(如图)
所以多行字符要input需要怎么弄啊 ,我看小甲鱼的这个多行直接换行就输入了 。。
重复 input 吧...... 你在说什么,报错在哪里 hrpzcf 发表于 2022-4-13 11:52
你在说什么,报错在哪里
文件内容
'''小客服:小甲鱼,今天有客户问你有没有女朋友?
小甲鱼:咦??
小客服:我跟她说你有女朋友了!
小甲鱼:。。。。。。
小客服:她让你分手后考虑下她!然后我说:"您要买个优盘,我就帮您留意下~"
小甲鱼:然后呢?
小客服:她买了两个,说发一个货就好~
小甲鱼:呃。。。。。。你真牛!
小客服:那是,谁让我是鱼C最可爱小客服嘛~
小甲鱼:下次有人想调戏你我不阻止~
小客服:滚!!!'''
Traceback (most recent call last):
File "C:\Users\zhuzj\Desktop\python\test\老教材\29.py", line 14, in <module>
save_file(file_name = input('文件名'),file_content = input('文件内容') )
File "C:\Users\zhuzj\Desktop\python\test\老教材\29.py", line 4, in save_file
f = open(file_name,file_type)
ValueError: Must have exactly one of create/read/write/append mode and at most one plus
结尾没输入:w, 里面会取最后一个冒号后面的内容当作文件打开的模式, 如'w'写入模式, 'r'读取模式 Victor0321 发表于 2022-4-13 12:15
文件内容
'''小客服:小甲鱼,今天有客户问你有没有女朋友?
小甲鱼:咦??
不管你是一行一行输入还是粘贴多行,file_content=input("文件内容:")读一行就结束了,file_type=file_content.split()[-1]是得不到正确的结果的。 hrpzcf 发表于 2022-4-13 14:35
不管你是一行一行输入还是粘贴多行,file_content=input("文件内容:")读一行就结束了,file_type=file_c ...
emmm 对就是我想知道 shell模式下如何输入多行文字啊,因为我一按enter 就自动input就切完了 本帖最后由 hrpzcf 于 2022-4-13 18:33 编辑
Victor0321 发表于 2022-4-13 15:34
emmm 对就是我想知道 shell模式下如何输入多行文字啊,因为我一按enter 就自动input就切完了
既然input只读一行那就加个循环让它一直读
def save_file(file_name=input("文件名:")):
####### 方法一
# with open(file_name, "w", encoding="utf-8") as f:
# content = []
# while True:
# line = input()
# if line.endswith(":w"):
# content.append(line[:-2])
# break
# else:
# content.append(line + "\n")
# f.writelines(content)
###### 方法二
with open(file_name, "w", encoding="utf-8") as f:
for line in iter(input, ":w"):
if line.endswith(":w"):
f.write(line[:-2])
break
f.write(line + "\n")
###### 其他方法略
if __name__ == "__main__":
save_file() 不知道
页:
[1]