1. #.python学习笔记:在文本编辑器中新创建一个文件,写几句话老总结你至此学到的python知识
  2. #其中‘In Python you can’ 打头。将这个文件命名为learning_python.txt.并将其存储到为本章学习目录下
  3. #编写一个程序,它读取这个文件,并将你序偶写的内容打印三次:第一次打印时读取整个文件
  4. #第二次打印时遍历文件对象,第三次打印时将各行存储在一个列表中,再在with代码块外打印它们
  5.  
  6. with open('learning_python.txt') as file_object:
  7. contents = file_object.read()
  8. print(contents)
  9.  
  10. filename = 'learning_python.txt'
  11.  
  12. with open(filename) as file_object1:
  13. for line in file_object1:
  14. print(line.rstrip())
  15.  
  16. print('\n')
  17. with open(filename) as file_object2:
  18. lines = file_object2.readlines()
  19.  
  20. for line in lines:
  21. print(line.rstrip())
  22.  
  23. print('\n')
  24. #.在1中完成的基础上,使用方法replace()将learning_python.txt中的Python替换成其它任意一门语言
  25. filename = 'learning_python.txt'
  26. with open(filename) as file_object1:
  27. for line in file_object1:
  28. line = line.replace('Python','Java')
  29. print(line.rstrip())
  30. #.访客:编写一个程序,提示用户输入其名字;用户作出响应后,将其名字写入到文件guest.txt中
  31.  
  32. guest_names = input("Enter your name: ")
  33. with open('guest.txt','a') as file_object:
  34. file_object.write(guest_names + '\n')
  35.  
  36. #.访问名单:编写一个while循环,提示用户输入其名字。用户输入其名字后,在屏幕打印一句问候语
  37. #并将一条访问记录添加到文件guest_book.txt中。确保这个文件中的每条记录都独占一行
  38.  
  39. while True:
  40. print("Enter a to quit.")
  41. names = input("Enter your name: ")
  42. if names == 'q':
  43. break
  44. messages = "Hello! " + names
  45. print(messages)
  46.  
  47. with open('guest_book.txt','a') as file_object:
  48. file_object.write(messages + '\n')
  49.  
  50. #.关于编程的调查:编写一个while循环,询问用户为何喜欢编程。每当用户输入一个原因后,
  51. #都将其添加到一个存储所有原因的文件中
  52.  
  53. while True:
  54. print("Enter q to quit.")
  55. reasons = input("Why do you like programming? ")
  56. if reasons == 'q':
  57. break
  58. with open('reason_books.txt','a') as file_object:
  59. file_object.write(reasons + '\n')
  60.  
  61. #.加法运算:提示用户提供数值输入时,常出现的一个问题是,用户提供的是文本而不是数字
  62. #在这种情况下,当你尝试将输入转换为整数时,将引发TypeError异常。
  63. #编写一个程序,提示用户输入两个数字,再将它们相加并打印结果。在用户输入的任一个值不是
  64. #数字时都铺获TypeError异常,并打印一条友好的错误消息。
  65.  
  66. while True:
  67.  
  68. try:
  69. first_number = int(input("Enter to the first number: "))
  70. second_number = int(input("Enter to the second number: "))
  71. sum = first_number + second_number
  72. except ValueError:
  73. print("Sorry,TypeError! please input again."
  74. else:
  75. print("The add result of two numbers:",sum)
  76.  
  77. #.猫和狗:创建两个文件cat.txt和dog.txt,在第一个文件中至少存储三只猫的名字
  78. #在第二个文件中至少存储三条狗的名字。编写一个程序,尝试读取这些文件,
  79. #并将其内容打印到屏幕上。将这些代码放在一个try-except代码块中,以便文件
  80. #不存在是捕获FileNotFound错误,并打印一条友好的消息,将其中一个文件移到另一个
  81. #地方,并确认except代码块中的代码将正确执行。
  82.  
  83. def Openfile(filename):
  84. try:
  85. with open(filename) as file_read:
  86. contents = file_read.read()
  87. print(contents.rstrip())
  88.  
  89. except FileNotFoundError:
  90. print("Sorry,The file " + filename + " does not exit!")
  91.  
  92. filename = 'alice.txt'
  93. Openfile(filename)
  94. filename ='dog.txt'
  95. Openfile(filename)
  96.  
  97. #.修改在2中所编写的except代码块,让程序不存在时一言不发
  98.  
  99. def Openfile(filename):
  100. try:
  101. with open(filename) as file_read:
  102. contents = file_read.read()
  103. print(contents.rstrip())
  104.  
  105. except FileNotFoundError:
  106. pass
  107.  
  108. filename = 'alice.txt'
  109. Openfile(filename)
  110. filename ='dog.txt'
  111. Openfile(filename)
  112.  
  113. #.常见单词:找一些你想分析的图书,使用方法count()来确定特定单词或短语在字符串中出现的次数
  114. def Ludong(filename):
  115. try:
  116. with open(filename) as file_object:
  117. contents = file_object.read()
  118. print(contents.rstrip())
  119. print("The word appears " + str(contents.lower().count('ludong')) + " times.")
  120. except FileNotFoundError:
  121. print("The file " + filename + " does not exit!")
  122.  
  123. filename = 'ludong.txt'
  124. Ludong(filename)
  125. #.喜欢的数字:编写一个程序,提示用户输入他喜欢的数字,并使用
  126. #json.dump()将这个数字存储到文件中。再编写一个程序,从文件中读取这个值
  127. #并打“I know your favorite number! It's 。。
  128.  
  129. import json
  130.  
  131. def StoreNumber():
  132. #如果存储数字就获取它
  133. filename = 'usernumber.json'
  134. try:
  135. with open(filename) as f_obj:
  136. usernumber = json.load(f_obj)
  137. except FileNotFoundError:
  138. return None
  139. else:
  140. return usernumber
  141.  
  142. def get_new_number():
  143. #提示用户输入数字
  144. usernumber = input("Enter to your favorite number: ")
  145. filename = 'usernumber.json'
  146. with open(filename,'w') as f_obj:
  147. json.dump(usernumber,f_obj)
  148. return usernumber
  149.  
  150. def ReadNumber():
  151. #读取数字
  152. usernumber = StoreNumber()
  153. if usernumber:
  154. print("I Know your favorite number! It's " + str(usernumber))
  155. else:
  156. usernumber = get_new_number()
  157. print("I'll remember the number: " + str(usernumber))
  158.  
  159. ReadNumber()
  160.  
  161. #.验证用户:最后一个remember_me.py版本假设用户要么已输入其用户名,要么是首次运行改程序。
  162. #我们应修改这个程序,应对这样的情形:当前和最后一次运行该程序的用户并非同一个人
  163. #因此,在greet_user()中打印欢迎用户回来的消息前,先询问用户名是否是对的
  164. #如果不对,就调用get_new_username()让用户输入正确的用户名
  165. import json
  166.  
  167. def get_stored_username():
  168. #如果存储了用户名就获取它
  169. filename = 'username.json'
  170. try:
  171. with open(filename) as f_obj:
  172. username = json.load(f_obj)
  173. except FileNotFoundError:
  174. return None
  175. else:
  176. return username
  177.  
  178. def get_new_user():
  179. #提示用户输入名字
  180. username = input("What's your name? ")
  181. filename = 'username.json'
  182. with open(filename,'w') as f_obj:
  183. json.dump(username,f_obj)
  184. return username
  185.  
  186. def greet_user():
  187. #问候用户
  188. username = get_stored_username()
  189. if username:
  190. ask = "Your username is " + username +"?"+ "if not,please input N, "
  191. ask += "if yes,input Y: "
  192. ask_msg = input(ask)
  193. if ask_msg == 'Y':
  194. print("Welcome back," + username + '!')
  195. else:
  196. username = get_new_user()
  197. print("We'll remember you when you come back, " + username + '!')
  198. else:
  199. username = get_new_user()
  200. print("We'll remember you when you come back, " + username + '!')
  201.  
  202. greet_user()

Python:从入门到实践--第十章--文件和异常--练习的更多相关文章

  1. python从入门到实践-10章文件和异常(括号问题)

    #!/user/bin/env python# -*- coding:utf-8 -*- # 1.从文件中读取数据with open('pi_digits.txt') as file_object: ...

  2. 【Python编程:从入门到实践】chapter10 文件和异常

    chapter10 文件和异常 10.1 从文件中读取数据 10.1.1 读取整个文件 with open("pi.txt") as file_object: contents = ...

  3. 读书笔记「Python编程:从入门到实践」_10.文件和异常

    10.1 从文件中读取数据  10.1.1 读取整个文件 with open(~) as object: contents=object.read() with open('C:/Users/jou/ ...

  4. Python 从入门到实践 试一试 参考代码

    这两天学习Python 看了python从入门到实践的书籍,里面有课后题“试一试” 然后就跟着写了,代码在以下地址,如果需要自取 https://files.cnblogs.com/files/fud ...

  5. Python数据分析入门与实践 ✌✌

    Python数据分析入门与实践 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 这是一个数据驱动的时代,想要从事机器学习.人工智能.数据挖掘等前沿技术,都离不开 ...

  6. Python数据分析入门与实践

    Python数据分析入门与实践 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看的时候可以关 ...

  7. Python从入门到超神之文件处理

    一.文件处理流程(python默认是utf-8编码) 打开文件函数:open(文件路径,encoding=‘utf-8’)注意:open会检索系统的编码,所以需要调整一致否则报错 例如:fi=open ...

  8. Python 从入门到实践 - Web应用程序

    一.创建项目 1.建立虚拟环境 python -m venv ll_env # 出现ll_env文件夹 2.激活虚拟环境 source ll_env/bin/activate # 要停止使用虚拟环境, ...

  9. Python数据分析入门与实践 学习

    pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库.本文是对它的一个入门教程.pandas提供了快速,灵活和富有表现力的数据结构 ...

随机推荐

  1. WEB 前端插件整理

    Vs Code 系统插件 #1 Bracket Pair Colorizer 让括号拥有独立的颜色,易于区分.可以配合任意主题使用. #2 Code Runner 非常强大的一款插件,能够运行多种语言 ...

  2. 2、haproxy配置参数详解

    代理相关配置参数 内容参考自马哥教育 HAProxy官方文档 https://cbonte.github.io/haproxy-dconv/2.0/configuration.html URI Syn ...

  3. Leetcode480-Binary Tree Paths-Easy

    480. Binary Tree Paths Given a binary tree, return all root-to-leaf paths. Example Example 1: Input: ...

  4. 小程序之 tab切换(选项卡)

    好久没有写东西了   今天写一个简单的东西 小程序tab切换 (选项卡功能) .wxml <view class="swiper-tab"> <view < ...

  5. vue--音乐播放器

    github: https://github.com/vinieo/vue-music 效果: 基础组件: 1.confirm:确认对话框组件 2.listview:通讯录列表组件 3.loading ...

  6. DAY15 模块

    一.模块 1.1 模块的定义:模块就是一系列功能的集合体 1.2 模块的四种存在方式: 1.使用python编写的.py文件(任一py文件都可以作为模块) 2.包:一堆py文件的集合体 3.使用C编写 ...

  7. 大数据新手之路一:安装JDK

    Ubuntu16.04 1.下载jdk-8u192-linux-x64.tar.gz https://www.oracle.com/technetwork/java/javase/downloads/ ...

  8. word常用功能

    1. 安装office2013 cn_office_professional_plus_2013_x86_dvd_1134005 密钥激活 (1)用专用软件彻底卸载原来的 (2)安装 (3)用暴风激活 ...

  9. 浅谈中大型企业CMDB的建设

    作者:嘉维蓝鲸产品总监,贺勇 针对CMDB这个主题,之前一直想写一篇文章来表达我的看法,但是之前一直不敢写,为什么?因为CMDB这个主题属于一提大家都懂,但是深入讨论大家都晕菜的一个话题:在2018年 ...

  10. 『OpenCV3』滤波器实现及使用滤波器降噪

    一.滤波器实现 我们实现这样一个基于拉普拉斯算子的滤波器核心,并使用它进行滤波,这可以做到锐化图像的效果, 0 -1 0 -1 5 -1 0 -1 0 首先我们完全手动的进行滤波,依赖指针操作, vo ...