查看“Python-2020-fall”的源代码
←
Python-2020-fall
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看和复制此页面的源代码。
== Python程序设计课程主页(2020年秋季学期) == Teacher: [http://hlt.suda.edu.cn/~zhli 李正华] Teaching Assistant: 周厚全、刘泽洋、周仕林 上课时间和地点、QQ群 周一13:30-15:20卫校301; 周五13:30-15:20理工楼153 周二13:30-15:20理工楼238、247(上机); python-2020学习交流qq群:893402501 == 考试安排 == * 第一次考试:11.11(周三),考试内容:基础、分支、列表、循环 * 第二次考试:12月 * 第三次考试(期末):1月 * 考试形式:上机考试 ** 选择题 ** 编程题:每一道题对应一个函数(给定了函数名,不能随便修改),所有函数放到一个.py文件中 *** 得至少练一次?可否开一下系统? * [http://192.168.125.3/python/ 考试信息网站] == Mooc混合式教学== 中国大学慕课 Python程序设计 苏州大学 朱晓旭等 请同学们同步学习这个网课。 理论课上,我会留一些时间,来针对网课的内容进行讲解、答疑。 == 参考资料 == * 何俊老师的Python课程教学网站 ** [http://web.suda.edu.cn/hejun/ 校外链接] ** [http://192.168.125.7/local_python/index.html 校内链接] * runoob ** [https://www.runoob.com/python3/python3-tutorial.html python3] ** [https://www.runoob.com/python2/python2-tutorial.html python2] == 实验课安排(有问题多主动问,Python不是教会的,而是不断动手、思考学会的) == * [http://hlt.suda.edu.cn/LA/teach/python-2020-fall/实验报告系统使用手册(学生).docx 实验报告系统使用手册(学生).docx] === 实验报告说明 === 实验报告由两部分组成: * 实验报告:学号-exp-x.pdf (x表示第几次实验) ** 注意文件命名格式,必须用pdf文件 ** 包含题目、流程图、解题思路、运行结果截图、遇到什么问题及如何解决的、总结有哪些收获、对老师的建议 ** 每次会提供一个基本的实验模板,学生按照自己的方式去安排报告的内容 ** 每一个题目,强烈建议都先画流程图,然后写代码。可以手画流程图然后拍照,也可以用画图软件去画。 * 代码:学号-exp-x.py ** 把所有题目的代码放到一个py文件中 ** 注意可读性,方便老师批改,可以写一些必须的注释 注意事项: * <font color="#FF0000">抄袭会严惩!当次实验成绩清0!</font> * <font color="#FF0000"> 实验报告、代码,要保留好,不要删除,期末的时候可能要统一放到一个文件夹中,交给老师。</font> * 除了基本的题目,还可以额外做老师在课堂上提出的思考题、扩展题。 * 根据认真程度、完成的质量、可读性等,来综合评分 * 每次作业批改后,会在理论课或上机课上进行讲解,重点是讲大家常见的错误。 往年的习题集: * [http://hlt.suda.edu.cn/LA/teach/python-2020-fall/Python习题.pdf 习题集PDF] ([http://hlt.suda.edu.cn/LA/teach/python-2020-fall/python-ch10.rar 习题相关数据文件]) === 扩展题目(选做,可以放到实验报告中) === * 2020.10.23:求平方根,是否还有其他更快的解法(之前讲的是二分查找) * 2020.10.15:把求平方根的代码,扩展为x为任何大于0的浮点数。注意一定要先画流程图。 === 实验课常见问题 === 2020.10.20: * input()函数从用户得到的输入类型是字符串,不能直接进行数值的运算,需要类型转换。 * 希望一次性input多个数字,可以用字符串split方法: ** lst = list(map(int, input('please input:').split())) #一次性输入多个数字,按空格隔开;并存储到一个列表中 * 注意变量 x 与字符串 "x" 之间的区别。 === 第一次实验报告 2020.10.20 === * 截止时间: * 报告模板(含基本题目): == 讲义记录 == === TODO === <nowiki> 2020.10.23 关于考试 逻辑运算的操作数、返回值 运算优先级 字符串、特殊字符、字符串拼接+ 字符串 str1 = '123' str2='''hello python''' # python中不区分单引号和双引号;三单引号和三双引号中间的字符串在输出时保持原来的格式。 特殊字符 # 转义符'\' # 换行 print('\n') # 制表符 print('\t') # 空格 print(' ') 重载操作符overloading 'abc'+'adf' 3+5 input(prompt) 内置(工厂)函数,类型转换:int() float() str() 注释、input(prompt) print(end)、random模块的使用 选择 -> 列表 -> 循环 (讲课顺序) 字符串格式化(formating operator)【看看第一次考试是否用到,决定什么时候讲。另一种格式化方法也讲一下,花括号的形式】 以某种格式将n个相同类型或不同类型的对象转化为一个字符串 '%d' % 3 # '3' '%d %d --- %d' % (3, 4, -7) # '3 4 --- -7' '%d %d --- %d' % (0xff, 0o33, 0b011110) # '377 27 --- 30' '%o %x --- %d' % (0xff, 0O33, 0b011110) # '377 1b --- 30' '0x%x' % 255 # '0xff' '%8d %5d --- %10d' % (0xff, 0o33, 0b011110) # 默认右对齐 '%-8d %-5d --- %-10d' % (0xff, 0O33, 0b011110) # 左对齐 ‘%f’ % 9.9 # 输出浮点数‘9.900000’ ‘%10f\n%10f\n%10f’ % (9.9, 12.754, 3.34) ‘%6.3f\n%6.3f\n%6.3f’ % (9.9, 12.754, 3.34) # 占6个字节,小数点后保留3位 ‘%10s’ % 'hi' 字符串方法(方法成员) 'abc'.center(10) # 占10个字节,居中 'abc'.isalpha() # 字符串中所有字符是否都是字母,返回布尔值 ' abc \t\n'.strip() # 去除空白符 '##abc'.strip('#') # 去除指定符号 'abc'.replace('ab','AB') # 替换 'a b c'.split() # 切分字符串 函数要早点讲,考试要用到,只讲基本的即可 python的特点:解释型语言等 字符串对象str(不可变) print(3, sep='#', end='abc') help(print) # 查看帮助文件 ord('a') # 字符对应的ASCII码(American standard code for information interchange) chr(97) # 返回与ASCII码对应的字符 hex(1) # 十六进制 bin(255) # 二进制 成员操作符membership【列表之后讲】 'abc' in 'abcdefg' 'ac' not in 'adf' s = 'abcdef' # 下标s[1]='b',s[-1]='e' #切片操作,前闭后开 s[3:5] # 'de' s[3:] # 'def' s[:3] # 'abc' s[1:5:2] # 'bd',步长为2 s[-5:-2] # 'bcd' s[::2] # 'ace' s[::-1] # 'fedcba' s[-2,-5,-2] # 'ec' 不可变对象immutable、可变对象mutable </nowiki> === 2020.10.23 第4次理论课 === <nowiki> </nowiki> === 2020.10.19 第3次理论课 === * 板书:[[:文件:2020-10-19-1.jpg]] , [[:文件:2020-10-19-2.jpg]] , [[:文件:2020-10-19-3.jpg]] , [[:文件:2020-10-19-4.jpg]] * 视频:[http://hlt.suda.edu.cn/LA/teach/python-2020-fall/Python%E7%AC%AC%E4%B8%89%E6%AC%A1%E7%90%86%E8%AE%BA%E8%AF%BE%20-%202020.10.19.mp4 第3次理论课] <nowiki> 第一次考试:11.11 Wednesday 晚上 2-3小时;考试内容:基础 循环 列表 分支 Python的基础: python(作为语言)和英语作对比, 字符:大小写字母;数字;#’’... 单词:keywords:while; def;函数名;变量名;数字;字符串。和英语语言不一样,单词可以不符合英语字典里的单词,比如'_a123'对于python也是合法的变量名 句子:statement vs sentence 段落:复合语句,文件,包 vs 节,章,篇,书 语法:非常严格(格式和语法都很严格) vs 比较随意 程序语言和英语哪个难?当然是英语,程序语言有唯一语义。 语句 (statement): 简单语句: 1. 赋值语句assignment:把一个对象(object)绑定(binding)到一个名字(name, 标识符, identifier)上。 例如: x = 7 → 把整数对象绑定在了x上。 注:object是内存中实际存在的东西,有4个属性(attribute): id (identity,地址); 类型 (数据类型,类名,type,class); 数据值/内容; 方法 (method / function) (主要是class类中,详情见后面章节)。 程序执行过程中,不会有重名。 2. 函数调用: 内嵌函数 (build-in):print;abs;help;... 。无需引入“包”即可使用,python默认提供。 import math:math.sqrt(); math.pow(); math.log(); ... 3. import:把一个包引入到当前文件。 4. 算数运算(Arithmetic):加 + ;减 - ;乘 * ;除 / ;整除 // ;余数 % 5. 关系运算(Relational):数字或字符串比大小,小于 < ;大于 > ;等于 == ;不等于 != 。返回bool型,即True & False。 6. 逻辑运算(Logical Operation/Calculus):and ;or ;not。 例如:3>2 and 2<1。 注:逻辑运算符号的两边不一定要是bool型,返回的结果也不一定是bool型,请自行测试学习。 注:运算注意object的type类型;注意算术符优先级;字符串比大小有个字母序(alphabetic)。 复杂语句:函数定义;while;if-else;类定义;... </nowiki> [https://note.youdao.com/ynoteshare1/index.html?id=8c10e0dd7d3d3f16e2cc48e48e9ea541&type=note 2017-笔记] === 2020.10.16 === * 板书:[[:文件:2020-10-16-1.jpg]] , [[:文件:2020-10-16-2.jpg]] , [[:文件:2020-10-16-3.jpg]] * 视频:[http://hlt.suda.edu.cn/LA/teach/python-2020-fall/Python%E7%AC%AC%E4%BA%8C%E6%AC%A1%E7%90%86%E8%AE%BA%E8%AF%BE%20-%202020.10.16.mp4 第2次理论课] <nowiki> 计算机组成 冯诺依曼架构 A processing unit that contains an arithmetic logic unit and processor registers (ALU) A control unit that contains an instruction register and program counter (CU) Memory that stores data and instructions External mass storage Input and output mechanisms https://en.wikipedia.org/wiki/Von_Neumann_architecture https://zh.wikipedia.org/zh-hans/%E5%86%AF%C2%B7%E8%AF%BA%E4%BC%8A%E6%9B%BC%E7%BB%93%E6%9E%84 https://www.baidu.com/link?url=WUyrwd9zkEs6eVKyVR9Emg4_pkDsGxJLyrcixtszhapi6XO92QXBlbW-B8f_6dooqxiExzUKir5bCoZhZNvNefxSPO5WSIsI_E-lM2XUgSp5i2i7WY0Ip7tTSwXuy4rEsgtrYO5HOAHElbzI0P1O2mdy-jz9K4-Dx_xvd01rImKxbfrOKyOE4O7cW5U-94xh3XOvQK-8qcWUmN_EnFy2NqauxvnNXHKwWbYN9ZW5JKl8MgTi_HkZ7c6LG75yQ58UZ49MAY98NtbDAVCUXAPruPeO81ozIt36bB1jZOZRQw2PpFK7VV5euTIWOs68_D-i&wd=&eqid=e2294df70000e186000000045f7fd18c 数据和算法 计算 数据 流程图、伪代码:平方根 平方根的其他解法,更优的:https://note.youdao.com/ynoteshare1/index.html?id=828b637ef7ff73a51dd26c1bc59be3e9&type=note </nowiki> === 2020.10.12 === * 板书:[[:文件:2020-10-12-1.jpg]] , [[:文件:2020-10-12-2.jpg]] * 视频:[http://hlt.suda.edu.cn/LA/teach/python-2020-fall/Python%E7%AC%AC%E4%B8%80%E6%AC%A1%E7%90%86%E8%AE%BA%E8%AF%BE%20-%202020.10.12.mp4 第1次理论课] <nowiki> 自我介绍 演示几个平台 对同学的摸底,能力强的同学,不妨做我的基础编程练习,由简入繁,不断积累 几点建议: 计算机英语很重要(1000左右单词),有助于理解和记忆; 逻辑思维能力很重要,从流程图(或伪代码)锻炼起; 多动手、多练习、多思考、多尝试,才能学好编程; 编程只是计算机科学与技术这门学科的最基本能力。要想成为顶尖的编程高手,必须对计算机的硬件、操作系统、数据结构、算法等基础理论理解透彻,所以要长期坚持,不断提高自己的计算机素养和基础。 课程介绍(过程化课程) 课堂提问、上机实验(代码和报告)、期中、期末多次考试 </nowiki>
返回至
Python-2020-fall
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
新闻
成员介绍
研究组
科研项目
发表论文
在线演示
工具
链入页面
相关更改
特殊页面
页面信息