计算机二级练习仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

401 line
13 KiB

2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
2 年之前
  1. {
  2. "cells": [
  3. {
  4. "cell_type": "markdown",
  5. "metadata": {},
  6. "source": [
  7. "# 实践1 python初印象\n",
  8. "\n",
  9. "## 学习目标\n",
  10. "1. 熟悉Jupyter lab交互开发环境\n",
  11. "2. 掌握Python 语句的编写,运行和修改\n",
  12. "3. 阅读Python微程序,尝试模仿改写程序"
  13. ]
  14. },
  15. {
  16. "cell_type": "markdown",
  17. "metadata": {},
  18. "source": [
  19. "## 1. 安装Jupyter lab \n",
  20. "如要在自己电脑本地使用 Jupyterlab 需要在命令提示符窗口(CMD)先用 Python 的包管理工具 pip 来安装:\n",
  21. "\n",
  22. "`pip install jupyterlab` \n",
  23. "\n",
  24. "然后就可以用\n",
  25. "\n",
  26. "`jupyter lab`\n",
  27. "\n",
  28. "来运行 Jupyterlab,打开 notebook 进行交互式编程的尝试。"
  29. ]
  30. },
  31. {
  32. "cell_type": "markdown",
  33. "metadata": {},
  34. "source": [
  35. "## 2.创建使用Notbook文件\n",
  36. "\n",
  37. "(1)Notbook文件 \n",
  38. "File菜单 -> New Notebook 创建一个新的Notbook文件 \n",
  39. "\n",
  40. "(2)单元格 \n",
  41. "Notbook文件是有若干单元格构成,单元格的类型可区分为:Code(代码)、Markdown、RAW。 \n",
  42. "\n",
  43. "Code类型的单元格中可以编写一条或多条python语句。按上方三角形运行(Run)按钮执行,或快捷键Ctrl+Enter;\n",
  44. "RAW类型的单元格是纯文本;\n",
  45. "Markdown类型的单元格支持Markdown格式,请自行查阅。 \n",
  46. "\n",
  47. "(3)使用工具栏命令可以增加,复制,删除,移动单元格。 "
  48. ]
  49. },
  50. {
  51. "cell_type": "code",
  52. "execution_count": null,
  53. "metadata": {},
  54. "outputs": [],
  55. "source": [
  56. "#示例1 一条语句\n",
  57. "print(\"Hello Python World!\")"
  58. ]
  59. },
  60. {
  61. "cell_type": "raw",
  62. "metadata": {},
  63. "source": [
  64. "说明: \n",
  65. "(1)print是一个Python标准输出函数,函数的功能是执行“打印”的功能。 \n",
  66. "(2)\"Hello, Python World!\"是字符串,在一对双引号中你可以输入任意文字,包括中文和标点符号,但使用引号要慎重。 \n",
  67. "(3)一对圆括号是函数的标志,和print函数名配合使用,不可缺少。 \n",
  68. "(4)圆括号里的是函数的参数。此处参数是一个字符串,也就是print函数输出的内容。 \n"
  69. ]
  70. },
  71. {
  72. "cell_type": "raw",
  73. "metadata": {},
  74. "source": [
  75. "请在此下方增加一个code单元格,输入一个print命令并执行"
  76. ]
  77. },
  78. {
  79. "cell_type": "code",
  80. "execution_count": null,
  81. "metadata": {},
  82. "outputs": [],
  83. "source": [
  84. "# 示例2 多条语句\n",
  85. "#Fl1-1 重要的事情说三遍\n",
  86. "print(\"重要的事情说三遍\")\n",
  87. "print(\"Hello Python World!\")\n",
  88. "print(\"Hello Python World!\")\n",
  89. "print(\"Hello Python World!\")"
  90. ]
  91. },
  92. {
  93. "cell_type": "markdown",
  94. "metadata": {},
  95. "source": [
  96. "## 3.认识程序的语法错误\n",
  97. "当编写的python程序代码没有遵循Python的语法规定时,会报错显示错误信息。学习阅读错误信息,快速定位错误位置,编写程序的基本功。 \n",
  98. " File \"C:\\Users\\qtzhu\\AppData\\Local\\Temp/ipykernel_5712/281370357.py\", line 1 \n",
  99. " print(\"重要的事情说三遍) <-- 出错的语句 \n",
  100. " ^\n",
  101. "SyntaxError: EOL while scanning string literal \n",
  102. "出错的类型:语法错误 文本串没有结束 \n",
  103. " \n",
  104. "下面程序有三处语法错误,你能找出来吗?(每找到一个错误,修改后重新执行,阅读错误信息提示)"
  105. ]
  106. },
  107. {
  108. "cell_type": "code",
  109. "execution_count": null,
  110. "metadata": {},
  111. "outputs": [],
  112. "source": [
  113. "print(\"重要的事情说三遍)\n",
  114. "print(\"Hello Python World!\")\n",
  115. "print(\"Hello Python World!\"\n",
  116. "prin(\"Hello Python World!\")"
  117. ]
  118. },
  119. {
  120. "cell_type": "markdown",
  121. "metadata": {},
  122. "source": [
  123. "## 4.阅读Python微程序"
  124. ]
  125. },
  126. {
  127. "cell_type": "code",
  128. "execution_count": null,
  129. "metadata": {},
  130. "outputs": [],
  131. "source": [
  132. "#Fl1-2\n",
  133. "s = 99999 * 99999\n",
  134. "print(s)"
  135. ]
  136. },
  137. {
  138. "cell_type": "raw",
  139. "metadata": {},
  140. "source": [
  141. "##### 对此程序简单解读如下:\n",
  142. "(1)s是一个变量,它引用不同数据的值。 \n",
  143. "(2)\tPython语言允许采用大写字母、小写字母、数字、下划线_和汉字等字符及其组合给变量命名,但名字的首字母不能是数字,中间不能出现空格。 \n",
  144. "(3)\tPython语言中,“=”表示赋值运算,左侧变量s引用等号右侧的计算结果,包含赋值运算符(=)的语句称为赋值语句。 \n",
  145. "(4)\tprint函数可以输出字符串,例如\"Hello Python World\",也可以直接输出变量(如s作为变量名)的值。 \n",
  146. "(5)\tPython中不需要加符号表示语句结束,换行表示一条语句的结束。 \n",
  147. "(6)\tFL1-2的程序功能是计算99999*99999并输出结果。 \n"
  148. ]
  149. },
  150. {
  151. "cell_type": "code",
  152. "execution_count": 2,
  153. "metadata": {},
  154. "outputs": [
  155. {
  156. "name": "stdout",
  157. "output_type": "stream",
  158. "text": [
  159. "Apr\n"
  160. ]
  161. }
  162. ],
  163. "source": [
  164. "# Fl1-3\n",
  165. "months=\"MonFebMarAprMayJunJulAugSepOctNovDec\" \n",
  166. "monthAbbrev = months[(4-1)*3:(4-1)*3+3]\n",
  167. "print(monthAbbrev)"
  168. ]
  169. },
  170. {
  171. "cell_type": "raw",
  172. "metadata": {},
  173. "source": [
  174. "##### 对此程序简单解读如下: \n",
  175. "(1)\"JanFebMarAprMayJunJulAugSepOctNovDec\" 是一个字符串常量,一对西文双引号是字符串常量的界定符,一对西文单引号也是字符串常量的界定符。 \n",
  176. "(2)months是字符串变量。可以通过[ ]和下标来访问字符串中的一个或连续多个字符。 \n",
  177. " 一个字符:month[i] ,i表示下标,下标从0开始,month[0]表示第一个字符。 \n",
  178. " 多个字符:month[a:b]表示下标从a到b-1的子串。当n=1时,month[0:3]表示’Jan’ \n",
  179. "(3)FL1-3的程序功能是通过计算从字符串months中读出第4月的月份缩写。\n",
  180. "(4)试将第2句中的4改为1到12的任意整数,观察运行结果。\n"
  181. ]
  182. },
  183. {
  184. "cell_type": "code",
  185. "execution_count": null,
  186. "metadata": {},
  187. "outputs": [],
  188. "source": [
  189. "# Fl1-4\n",
  190. "name=input(\"姓名:\")\n",
  191. "gender=input(\"性别:\")\n",
  192. "if gender==\"男\":\n",
  193. " print(\"{}先生,您好!\".format(name))\n",
  194. "else:\n",
  195. " print(\"{}女士,您好!\".format(name))"
  196. ]
  197. },
  198. {
  199. "cell_type": "raw",
  200. "metadata": {},
  201. "source": [
  202. "对此程序简单解读如下:\n",
  203. "(1)input函数是一个标准输入函数,接受从键盘输入的字符串数据。函数的参数是一个字符串。执行input函数,首先会输出字符串,提示用户要输入的数据是什么,然后等待用户键盘输入数据,按回车键结束。程序开始的两条输入语句分别接受姓名和性别,数据类型为字符串。\n",
  204. "(2)if语句是一条选择语句,根据条件gender==\"男\"为真还是为假,进行不同的处理。\n",
  205. "(3)“==”是关系运算符”等于” ,判断左右两边是否相等,相等为True,不相等为False。注意和赋值运算符“=” 区分。\n",
  206. "(4)Python采用严格的“缩进”(指每一行代码开始前的空白区域)来表明程序的格式框架,即表示代码之间的包含和层次关系。两句print语句缩进表示了所属关系。\n",
  207. "(5)\"{}先生,您好!\".format(name)是格式化的字符串,name变量的值在输出时出现在{}位置。\n",
  208. "(5)FL1-4的功能是输入姓名和性别,根据性别的不同,选择不同的称呼输出问候语。\n"
  209. ]
  210. },
  211. {
  212. "cell_type": "code",
  213. "execution_count": null,
  214. "metadata": {},
  215. "outputs": [],
  216. "source": [
  217. "# Fl1-5\n",
  218. "n=int(input(\"n=\"))\n",
  219. "s=0\n",
  220. "for i in range(n+1):\n",
  221. " s=s+i\n",
  222. "print(\"s=1+2+...{}={}\".format(n,s))"
  223. ]
  224. },
  225. {
  226. "cell_type": "raw",
  227. "metadata": {},
  228. "source": [
  229. "对此程序简单解读如下:\n",
  230. "(1)input函数能够接受一个键盘输入的字符串。int函数将输入的字符串转化整数,例如输入100,第一条语句的功能为从键盘接受一个整数100,赋值给变量n。\n",
  231. "(2)Python通过保留字for实现迭代循环,基本使用方法如下:\n",
  232. " for <循环变量> in <可迭代对象> :\n",
  233. " <语句块>\n",
  234. "(3)range(n+1)函数生成一个0~n的整数序列,变量i遍历取值整数序列0~n中的每一个整数,执行s=s+i,实现将序列中每一个整数累加到s。\n",
  235. "(4)print函数中使用字符串的format方法构造了一个格式输出串,每一个占位槽{}对应一个format函数的一个参数。此处第一个{}对应n的值,第二个{}对应s的值。\n",
  236. "(5)FL1-5的程序功能是输入一个n,累计1到n的所有整数的和并输出。\n"
  237. ]
  238. },
  239. {
  240. "cell_type": "code",
  241. "execution_count": null,
  242. "metadata": {},
  243. "outputs": [],
  244. "source": [
  245. "# Fl1-6\n",
  246. "nums = [12,50,21,56,8,19]\n",
  247. "n=len(nums)\n",
  248. "s=sum(nums)\n",
  249. "average=s/n\n",
  250. "print(\"average=\",average)"
  251. ]
  252. },
  253. {
  254. "cell_type": "raw",
  255. "metadata": {},
  256. "source": [
  257. "对此程序简单解读如下:\n",
  258. "(1)nums是一个列表变量,其中存储了一组整数。\n",
  259. "(2)len和sum是内置函数,len函数求一个序列的长度,可以计算列表、字符串等对象的长度。sum函数是累加和函数,返回列表nums中所有整数的和。\n",
  260. "(3“/”是除法运算符,执行除法运算。\n",
  261. "(4)FL1-6的程序功能是求得一组整数的平均值并输出。\n"
  262. ]
  263. },
  264. {
  265. "cell_type": "code",
  266. "execution_count": null,
  267. "metadata": {},
  268. "outputs": [],
  269. "source": [
  270. "# Fl1-6-1\n",
  271. "def mean(numbers):\n",
  272. " s = 0.0\n",
  273. " for num in numbers:\n",
  274. " s = s + num\n",
  275. " return s / len(numbers)\n",
  276. "\n",
  277. "nums = [0,1,2,3,4,5,6,7,8,9]\n",
  278. "print(mean(nums))"
  279. ]
  280. },
  281. {
  282. "cell_type": "code",
  283. "execution_count": null,
  284. "metadata": {},
  285. "outputs": [],
  286. "source": [
  287. "对此程序简单解读如下:\n",
  288. "(1)nums是一个列表变量,其中存储了一组整数。\n",
  289. "(2)def定义个一个函数mean,函数有一个列表参数numbers,函数实现的功能是求列表numbers的平均值,return语句返回平均值\n",
  290. "(3)mean(nums)是调用函数mean的语句,讲列表nums传递(赋值)给列表参数numbers,函数返回nums的平均值。\n",
  291. "(4)FL1-6的程序功能是求得一组整数的平均值并输出。\n"
  292. ]
  293. },
  294. {
  295. "cell_type": "markdown",
  296. "metadata": {},
  297. "source": [
  298. "## 小试身手 "
  299. ]
  300. },
  301. {
  302. "cell_type": "raw",
  303. "metadata": {},
  304. "source": [
  305. "(1)使用for语句改写下面程序,实现一下输出。\n",
  306. "重要的事情说三遍\n",
  307. "Hello Python World!\n",
  308. "Hello Python World!\n",
  309. "Hello Python World!"
  310. ]
  311. },
  312. {
  313. "cell_type": "code",
  314. "execution_count": null,
  315. "metadata": {},
  316. "outputs": [],
  317. "source": [
  318. "print(\"重要的事情说三遍\")\n",
  319. "print(\"Hello Python World!\")\n"
  320. ]
  321. },
  322. {
  323. "cell_type": "raw",
  324. "metadata": {},
  325. "source": [
  326. "(2)改写程序Fl1-2,实现求任意两个整数的乘积并输出。\n",
  327. " 要求:增加变量a和b,表示乘法运算的2个操作数,改写乘法的表达式。\n",
  328. " a变量和b变量的值由用户输入,输入两个整数。\n"
  329. ]
  330. },
  331. {
  332. "cell_type": "code",
  333. "execution_count": null,
  334. "metadata": {},
  335. "outputs": [],
  336. "source": [
  337. "s = 99999 * 99999\n",
  338. "print(s)"
  339. ]
  340. },
  341. {
  342. "cell_type": "raw",
  343. "metadata": {},
  344. "source": [
  345. "(3)改写程序FL1-3.py,实现输入一个月份,输出对应的英文缩写。"
  346. ]
  347. },
  348. {
  349. "cell_type": "code",
  350. "execution_count": null,
  351. "metadata": {},
  352. "outputs": [],
  353. "source": [
  354. "months=\"MonFebMarAprMayJunJulAugSepOctNovDec\" \n",
  355. "n = 4\n",
  356. "monthAbbrev = months[(n-1)*3:(n-1)*3+3]\n",
  357. "print(monthAbbrev)"
  358. ]
  359. },
  360. {
  361. "cell_type": "raw",
  362. "metadata": {},
  363. "source": [
  364. "(4)改写程序FL1-3.py,实现顺序输出12月份对应的英文缩写。"
  365. ]
  366. },
  367. {
  368. "cell_type": "code",
  369. "execution_count": null,
  370. "metadata": {},
  371. "outputs": [],
  372. "source": [
  373. "months=\"MonFebMarAprMayJunJulAugSepOctNovDec\" \n",
  374. "n = 4\n",
  375. "monthAbbrev = months[(n-1)*3:(n-1)*3+3]\n",
  376. "print(monthAbbrev)"
  377. ]
  378. }
  379. ],
  380. "metadata": {
  381. "kernelspec": {
  382. "display_name": "Python 3 (ipykernel)",
  383. "language": "python",
  384. "name": "python3"
  385. },
  386. "language_info": {
  387. "codemirror_mode": {
  388. "name": "ipython",
  389. "version": 3
  390. },
  391. "file_extension": ".py",
  392. "mimetype": "text/x-python",
  393. "name": "python",
  394. "nbconvert_exporter": "python",
  395. "pygments_lexer": "ipython3",
  396. "version": "3.9.5"
  397. }
  398. },
  399. "nbformat": 4,
  400. "nbformat_minor": 4
  401. }