《Python程序设计基础 》课堂笔记整理
1 数据
1.1 基本数据类型
1.1.2 数字类型
x//y x与y整数商,即不大于x与y之商的最大整数
x的y次幂,即
(x+yj).real 复数的实部;(x+yj).imag 复数的虚部
1.1.3 优先级
等于,顺序从右向左
1.2 组合数据类型
1.2.1 序列类型
列表类型
字符串使用双引号或单引号括起来的零个或多个字符,字符串是字符的序。1.正向递增序号:正向递增以最左侧字符序号为0,向右依次递增,最右侧字符序号为L-1;反向递减序号:以最右侧字符序号为-1,向左依次递减,最左侧字符序号为-L; 2.区间访问[N:M],表示字符串中从N到M(不包含M)的子字符串,N、M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号; 注意N和M之间的符号是引号 ;
1.2.2 集合类型
1.2.4 映射类型
1.3
(1)保留字(也称为关键字)def可以定义函数(见附录3)
(2)缩进用来表示代码之间的包含和层次关系,表达了所属关系
(3)IPO(Input,Process,Output)
(4)编译是将源代码转换成目标代码的过程;解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程。解释和编译的区别在于编译是一次性的翻译,一旦程序被编译,不再需要编译程序或源代码;解释则在每次程序运行时都需要解释器和源代码。
(5)使用保留字import引用函数库:
① import <库名>;在之后使用函数库中的函数:<库名>.<函数名>(<函数参数>);
②from <库名> import <函数名,函数名,.....,函数名> 或 from <库名> import * (*是通配符,表示所有函数);调用函数:<函数名>(<函数参数>);
③import <库名> as t (t是标识符);调用函数:t.<函数名>(<函数参数>)
个人感觉,要是在程序开发时,①合适,在做acm之类的题时,③合适
(6)命名标识符:首字母不能是数字,中间不能出现空格,长度理论上没有限制
(7)(python)如何让两个连续print函数的输出在同一行显示_ohplz的博客-CSDN博客_python两个print输出在同一行
(8)同步赋值语句;
>>>x=1,y=2
>>>x,y=y,x
x = 2, y = 1
1.4 基本结构
1.5 函数和代码复用
3 标准库
3.1 内置函数
input()函数:无论用户输入什么,input()函数都以字符串类型返回结果
eval(<字符串>):将输入的字符串转变为Python语句,并执行该语句。输入字符串“hello”,eval()函数去掉引号后,将其解释为一个变量,由于之前没有定义过hello变量解释器会报错;如果输入字符串“‘hello’”,eval()函数去掉
print(<待输出字符串>):print()函数用槽格式和format()方法将变量和字符串结合到一起输出
3.1.1 数值运算函数
abs(x) x的绝对值,复数x的模
divmod(x,y) 返回(x//y,x%y),输出为二元组形式
pow(x,y[,z]) (x**y)%z,[...]表示该参数可以省略,与math库中的pow(x,y)函数区别;
round(x[,ndigits]) 对x进行常规的四舍五入,保留ndigits位小数
max(,,...,)
min(,,...,)
3.1.2 数字类型转换函数
int(x) 将浮点数形式、整数或浮点数的字符串的x转换为整数,不可以是复数
float(x) 将整数形式、整数或浮点数的字符串的x转换为浮点数,不可以是复数
complex(re[,im]) 将整数形式、整数或浮点数或复数的字符串的x转换为复数,自动加括号
3.1.3 eval()与三种数字类型转换函数的区别
eval() 在转换复数的字符串时自动加小括号
3.2 turtle库
import turtle as t
t.setup(width,height,startx,starty)设置主窗体的大小和位置,width:窗口宽度,整数表示像素值,值是小数,表示窗口宽度与屏幕的比例;height:窗口高度,如果值是整数,表示像素值,值是小数,表示窗口高度与屏幕比例;startx窗口左侧与屏幕左侧的像素距离,None,窗口位于屏幕水平中央;starty窗口顶部与屏幕顶部的像素距离,若为None,表示窗口位于屏幕垂直中央
t.penup()[t.pu();t.up()];t.pemdown()[t.pd();t.down()];这两个总是忘记加括号QWQ,作用顾名思义
t.circle(radius,extent=None)根据半径绘制extent角度的弧形,可不设置extent
t.pensize(width)(或t.width())用来设置画笔尺寸,若width为None或空,函数返回当前画笔宽度
t.pencolor("colorstring")给画笔设置颜色
3.3 time库
time库与datetime的区别
3.4 radom库
附录 程序实例
附录1 典型问题
1、忘记缩进;
2、Python是区分大小写
3、if i %7 in (0)错误小括号内不能只有0,原因;
附录2 温度转换
2.1 输入N或n时退出
TemStr = input("请输入带有符号的温度值:")
while TempStr[-1] not in ['N','n']: #列表if TempStr[-1] in ['F','f']:C = (eval(TempStr[0:-1]) - 32) / 1.8print("转换后的温度是{:.2f}C".format(C))elif TempStr[-1] in ['C','c']:F = 1.8 * eval(TempStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))else:print("输入格式错误")TempStr = input("请输入")
2.2用保留字def定义函数
def tempConvert(ValueStr):if ValueStr[-1] in ['f','F']:C = (eval(ValueStr[0:-1]) - 32) / 1.8print("转换后的温度是:{:.2f}C".format(C))elif ValueStr[-1] in ['C','c']:F = eval(ValueStr[0:-1]) * 1.8 - 32print("转换后的温度是:{:.2f}F".format(F))else:print("输入格式错误")TempStr = input("请输入带符号的温度值:")
tempConvert(TempStr)
附录3 天天向上的力量
def dayUP(df):dayup = 1.0for i in range (365)://也可以range(365)if i % 7 in [6,0]:dayup = dayup * (1 - 0.01)else:dayup = dayup * (1 + df)return dayup
dayfactor = 0.01
while (dayUP(dayfactor) < 37.78):dayfactor += 0.001
print("每天努力的参数是:{:.3f}.".format(dayfactor))
附录4 科赫曲线
4.1
#科赫曲线
import turtle
def koch(size,n):if n==0:turtle.fd(size)else:for angle in (0,60,-120,60):turtle.left(angle)koch(size/3,n-1)def main():turtle.setup(800,400)turtle.speed(0)turtle.penup()turtle.goto(-300,-50)turtle.pendown()turtle.pensize(2)koch(600,3)turtle.hideturtle()main()
4.2 雪花
# # This is a sample Python script.
#
# # Press Shift+F10 to execute it or replace it with your code.
# # Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings.
#
#
# def print_hi(name):
# # Use a breakpoint in the code line below to debug your script.
# print(f'Hi, {name}') # Press Ctrl+F8 to toggle the breakpoint.
#
#
# # Press the green button in the gutter to run the script.
# if __name__ == '__main__':
# print_hi('PyCharm')
#
# # See PyCharm help at https://www.jetbrains.com/help/pycharm/from math import sqrt
def GetNum():nums = []iNumStr = input("请输入数字(直接输入回车退出):")while iNumStr != "":nums.append(eval(iNumStr))iNumStr = input("请输入数字(直接输入回车退出):")return numsdef mean(numbers): #平均值s = 0.0for num in numbers:s = s + numreturn s / len(numbers)def dev(numbers,mean): #计算标准差sdev = 0.0for num in numbers:sdev = sdev + (num-mean) ** 2return sqrt(sdev / (len(numbers)-1))
def median(numbers): #;sorted是python的内置函数,并不是可变对象(列表、字典)的特有方法,sorted()函数需要一个参数(参数可以是列表、字典、元组、字符串),无论传递什么参数,都将返回一个以列表为容器的返回值,如果是字典将返回键的列表。new = sorted(numbers)size = len(numbers)if size % 2 == 0:med = (new[size//2-1]+new[size//2])/2 #//整数商,不大于x与y之商的最大整数else:med = new[size//2]return meddef main(): #主函数n = GetNum()m = mean(n)print("平均值:{},标准差:{:.2},中位数:{}.".format(m,dev(n,m),median(n)))return 0
main()
《Python程序设计基础 》课堂笔记整理相关推荐
- Python程序设计基础第七章笔记:字符串
Python程序设计基础笔记 目录 Python程序设计基础笔记 第七章:文本处理(一):字符串 7.1 字符串编码格式简介 7.2 转义字符与原始字符串 7.3 字符串格式化 7.3.1 使用 % ...
- Python程序设计基础第一章笔记:Python概述
Python程序设计基础笔记 目录 Python程序设计基础笔记 第一章:python概述 1.1 python是这样一种语言 1.2 python版本之争 略 1.3 python编程规范与代码优化 ...
- 职教云python程序设计答案_智慧职教云课堂Python程序设计基础题目及答案
智慧职教云课堂Python程序设计基础题目及答案 更多相关问题 轻症感染合理应用抗菌药物A.内服给药疗效差B.治疗剂量高限,静脉滴注 C.治疗剂量低限,静脉滴注D. 传导速度最慢的是A.窦房结 B.心 ...
- 职教云python题和答案_智慧职教云课堂Python程序设计基础题目答案
智慧职教云课堂Python程序设计基础题目答案 更多相关问题 [单选] 以下描述中不属于网络财务内涵的是(). [单选] ERP与ECP指的是哪个商品设置类型(). [多选] EXCEL提拱的筛选操作 ...
- 职教云python题和答案_智慧职教云课堂Python程序设计基础题库及答案
智慧职教云课堂Python程序设计基础题库及答案 更多相关问题 一个抗体分子上有几个抗原结合的位点 Flash可以用()命令将其它的图片.声音.动画文件导入到Flash文件中. 将场景中的对象转换为元 ...
- 非计算机专业《Python程序设计基础》教学参考大纲
<Python程序设计基础> 教 学 大 纲 目 录 一. 课程简介 二. 教学目的和要求 三. 教学中应注意的问题 四. 教学内容 五. 教学课时分配 六. 教材与参考书目 一 ...
- 董付国老师《Python程序设计基础》完美落幕
2002年,我第一次在安全焦点网站看到有人在使用Python,2010年我个人全面接触这门语言,当时市面上这方面的图书很少,很多时候只能查阅官方文档,2013年我开始策划Python编程相关课程,但是 ...
- Python程序设计基础教学大纲
转载网址:https://mp.weixin.qq.com/s?__biz=MzI4MzM2MDgyMQ==&mid=2247486738&idx=1&sn=c56247741 ...
- 嬴群的Python程序设计基础学期总结 2021.01.04
Python程序设计基础学期总结 ## 时光像水中的倒影,一晃大一上学期就过去了.昨日那埋怨时间太慢的情愫似乎还游离在脑际,而今大一下学期生活正向我们走来,蓦然回首,感慨颇多.刚迈入大学的时候对一切似 ...
- 已知x=python是一种非常好的编程语言-智慧树知到《Python程序设计基础》章节测试答案...
智慧树知到<Python程序设计基础>章节测试答案 绪论 1.学好Python程序设计要注意的几个问题是 A:多看多练 B:多想多整理 C:多交流多请教 D:只看视频,不思考.不练习 答案 ...
最新文章
- 由浅入深理解java集合(二)——集合 Set
- Xamarin.Forms Shell基础教程(1)
- Windows Phone笔记(3)触摸简介
- mysql win10 5.5_win10上MySql5.5版本升级到5.7
- get_metrology_object_result_contour查询计量对象的结果轮廓
- (4)编写一个程序,输出三角形字符阵列图形
- python列表乘数值_《利用Python进行数据分析》十一章· 时间序列·学习笔记(一)...
- 【报告分享】2020中国电商直播粉丝价值研究报告.pdf(附下载链接)
- java调试程序(eclipse)
- MySQL之Got fatal error 1236 from master when reading data from binary log
- 网吧的监控系统和服务器如何连接,网吧监控系统安装解决方案
- Scrapy0.24.1_中文文档
- 游山西村 陆游- 南宋
- ZOC7 for Mac(终端仿真器)含注册码 v7.22.7激活版
- 移动二班钟静雯1853230244 0416
- Linux-Shell脚本练习
- ESP8266固件烧录教程
- 潜力无限的BTF,开启区块链金融新格局
- 用for循环求零到一百的偶数和
- 字节码文件魔数0xCAFEBABE
热门文章
- 360Tray.exe是什么进程?360Tray.exe程序及常见问题介绍
- windows下System Volume Information Folder文件夹过大的处理
- 彻底搞懂CNN中的卷积和反卷积
- 《男孩别哭》海龟先生
- 阳春3月,这个技术博客要暂停1月!!!!
- 阳春三月,放飞希望---希望今年不再碌碌无为
- 金蝶显示服务器许可,金蝶K3服务器分配许可数已经全部使用,无法建立新的连接怎么办...
- springside mysql_SpringSide4之SpringDataJpa测试
- 瑞幸的野望,小鹿茶的突袭
- 戴尔DELLWIN10简体中文专业版原版光盘镜像64位