编写程序按行读取键盘输入的文本(古诗一首,内容不限),然后按行写入“古诗名称.txt”文件中, 要求每行前面添加一个行序号,并在文件最后一行写入自己的名字
时间: 2024-03-11 22:47:01 浏览: 19
好的,让我来为您编写这个程序。以下是 Python 代码:
```python
poem_name = input("请输入古诗名称:")
with open(poem_name + ".txt", "w") as f:
line_num = 1
while True:
line = input("请输入古诗的一行(输入 q 退出):")
if line == "q":
break
f.write(str(line_num) + ". " + line + "\n")
line_num += 1
f.write("作者:Your Name")
```
首先,程序会要求您输入古诗名称,然后创建一个以该名称命名的 .txt 文件。接下来,程序会循环读取键盘输入的每一行古诗,将其写入文件中,并在每一行前添加行序号。如果您输入了 q,程序会退出循环。最后,程序会在文件末尾写入您的名字。
请注意,以上代码仅供参考,您需要根据实际情况进行修改。
相关问题
Java完整代码编写程序按行读取键盘输入文本(古诗一首,内容不限),然后按行写入”古诗名称.txt”文件中,要求每行前面添加一个行序号,并在文件最后一行写入自己名字
好的,以下是Java代码:
```java
import java.io.*;
public class Main {
public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter writer = null;
try {
// 从键盘读取文本
String poem = "";
System.out.println("请输入古诗:");
while (true) {
String line = reader.readLine();
if (line.equals("EOF")) break;
poem += line + "\n";
}
// 写入文件
writer = new BufferedWriter(new FileWriter("古诗名称.txt"));
String[] lines = poem.split("\n");
for (int i = 0; i < lines.length; i++) {
String line = i + 1 + ". " + lines[i] + "\n";
writer.write(line);
}
writer.write("——by your name");
System.out.println("写入成功!");
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (writer != null) writer.close();
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
```
这个程序会让用户从键盘输入古诗,直到输入 "EOF" 结束输入。然后程序会按行写入文件,并在每一行前加上行号。最后一行会写入用户的名字。
编写程序按行读取键盘输入的文本(古诗一首,内容不限),然后按行写入“古诗名称.txt”文件中, 要求每行前面添加一个行序号,并在文件最后一行写入自己的名字。
好的,以下是 Python 的代码实现:
```python
poem_name = "静夜思" # 古诗名称
filename = f"{poem_name}.txt" # 文件名
# 读取键盘输入的文本,按行写入文件
with open(filename, "w", encoding="utf-8") as f:
line_num = 1 # 行序号
while True:
line = input() # 读取一行输入
if not line: # 输入为空,跳出循环
break
f.write(f"{line_num}. {line}\n") # 写入文件
line_num += 1
# 写入自己的名字
f.write("——来自xxx的问候")
```
你可以按照上述代码操作,在输入完古诗后,程序会自动将古诗按行写入以古诗名称命名的文件中,每行前面都会添加行序号,最后一行会写上自己的名字。注意,这里使用了 f-string 来拼接字符串,需要 Python 3.6 及以上版本支持。