python习题16

 1 from sys import argv
 2
 3 script, filename = argv
 4
 5 print(f"We‘re going t o erase {filename}.")
 6 print("If you don‘t want that, hit CTRL-(^C).")
 7 print("If you do want that, hit RETURN.")
 8
 9 input("?")
10
11 print("Open the file...")
12 target = open(filename, ‘w‘)
13
14 print("Truncating the file.  Goodbye!")
15 target.truncate()
16
17 print("Now I‘m going to ask you for three lines.")
18
19 line1 = input("line1: ")
20 line2 = input("line2: ")
21 line3 = input("line3: ")
22
23 print("I‘m going to write these to the file.")
24
25 target.write(line1)
26 target.write("\n")
27 target.write(line2)
28 target.write("\n")
29 target.write(line3)
30 target.write("\n")
31
32 print("And finally, we close it.")
33 target.close()

写一段与上个习题类似的脚本,使用read和argv读取你刚刚新建的文件

1 from sys import argv
2
3 script, filename = argv
4
5 txt = open(filename)
6 print(f"现在我们来打开名字叫做{filename}的文件:")
7 print(txt.read())

这个文件中重复的地方太多了,试着用一个target.write()将line1,2和3打印出来,替换原先的六行代码,你可以用字符串  、格式化和转义字符

1 target.write(line1 + "\n" + line2+ "\n" + line3+ "\n")

找出需要给open多传入一个‘w’参数的原因

w: 打开一个文件,只用于写入,如果这个文件已经存在,那就先打开,再从头编辑(原有内容会被删除),如果这个文件不存在,就创建。

如果用‘w’模式打开文件,其实是不需要target.truncate()的,因为回先清空文件原有内容再编辑。

原文地址:https://www.cnblogs.com/shadowyuriya/p/9998355.html

时间: 2024-10-14 09:51:57

python习题16的相关文章

C/C++算法竞赛入门经典Page16 习题1-6 三角形

题目:输入三角形 3 条边长度值(均为正整数),判断是否能为直角三角形的3个边长.如果可以,则输出yes,不能输出no,如果无法构成三角形,则输出 not a triangle 分析能构成三角形的条件:两边之和大于第三边,两边之差小于第三边. 再分析能够成直角三角形的条件:a2+b2=c2. (1)声明三角形的三边变量a,b,c,并输入a,b,c: int a,b,c;//三角形的三边 scanf("%d%d%d",&a,&b,&c); (2)先判断是否为三角形

python习题20190130

#encoding=utf-8 ''' 一家商场在降价促销.如果购买金额50-100元(包含50元和100元)之间,会给10%的折扣,如果购买金额大于100元会给20%折扣.编写一程序,询问购买价格,再显示出折扣(10%或20%)和最终价格 ''' def print_zekou(): aount = int(input("请输入你购买的金额:")) if aount < 50: print("不好意思你购买的金额没有折扣,需要支付的金额为:",aount)

Python的16个“坑”

1. 不要使用可变对象作为函数默认值 代码如下: In [1]: def append_to_list(value, def_list=[]): ...: def_list.append(value) ...: return def_list ...: In [2]: my_list = append_to_list(1) In [3]: my_list Out[3]: [1] In [4]: my_other_list = append_to_list(2) In [5]: my_other_

笨方法学Python——习题40

之前例子讲过关于字典.列表.字符串.元组,按书中所述,其实这些已经足够写一些代码,但Python属于面向对象的编程语言,本节所讲的类,是必须要掌握的,虽然现在有些懵逼 1 class Song(object): 2 3 def __init__(self, lyrics): 4 self.lyrics = lyrics 5 6 def sing_me_a_song(self): 7 for line in self.lyrics: 8 print line 9 10 happy_bday = S

Python基础16 - RabbitMQ队列、Redis缓存数据库

@@@文章内容参照老男孩教育 Alex金角大王,武Sir银角大王@@@ RabbitMQ队列 下载安装http://www.rabbitmq.com/install-windows.html RabbitMQ 教程官网:http://www.rabbitmq.com/getstarted.html RabbitMQ:erlang语言 开发的. Python中连接RabbitMQ的模块:pika .Celery(分布式任务队列) .haigha可以维护很多的队列 几个概念说明: Broker:简单

python习题15

1 # 从python的内置模块中引入模组 2 from sys import argv 3 4 # 解包,获取文件名 5 script, filename = argv 6 7 #返回某文件对象 8 txt = open(filename) 9 10 #打印这句话,嵌入文件名 11 print(f"Here's your file {filename}:") 12 #读取文件内容并且打印 13 print(txt.read()) 14 15 print("Type the

笨办法学Python - 习题3: Numbers and Math

Exercise2是注释和井号 Comments and Pound Characters 具体详情请参考习题一,这里就不在做过多的赘述. 习题 3: 数字和数学计算 学习目标:了解Python中常用的算术运算符,并了解运算符之间的先后运算顺序 在各大常用的计算机语言中都有常见的算术运算符,Python也是大同小异,下面我们来了解一下Python中常见的算术运算符: 算术运算符 以下假设变量x = 10 ,y = 20 运算符 描述 实例 + 加 - 两个对象相加 x+y = 30 - 减 -

笨办法学Python - 习题8-10: Printing &amp; Printing, Printing

目录 1.习题 8: 打印,打印 2.习题 9: 打印,打印,打印 3.习题 10: 那是什么? 3.1.转义序列: 4.习题总结: 1.习题 8: 打印,打印 学习目标:继续学习 %r 的格式化输出. 习题八中的练习代码是: #! -*-coding=utf-8 -*- formatter = "%r %r %r %r %r " print formatter % (1, "hello", [1,2,3], (1,2,3), {"name":&

Python学习-16.Python中的错误处理

虽然叫错误,但跟 C# 中的异常是一回事.只不过 Python 中叫错误(Error)而 C# 中叫异常(Exception). 先手工产生一个异常: 1 file = open('','r') 上面一句由于路径是空路径,因此文件肯定是不存在的,执行这一句会引发 FileNotFoundError 这个错误. 既然是错误的,程序也停止了,这是我们不希望的,因此得想办法处理一下. 在 Python 中,异常处理使用 try.except.finally 这三个关键字. 修改代码如下: 1 path