python学习系列--1
开始学习python
part 1 前言
今天是学习python的第一天…觉得有必要做点记录,加上编程学习做纸质笔记个人觉得不太合适,于是将这里当成记录学习编程的本吧。
part 2 正式学习
安装python
访问官网 点击download选择合适版本即可
(本来想用python123上面的链接直接下载,但是家里WiFi可能有点问题,死活下不了)
embeddable zip 嵌入式 可以集成到其他应用
executable 可执行 意思是下载一个exe来安装
web-based 在联网的基础上在线下载
编程思维
1.程序编写的基本方法
IPO——input-process-output
2.解决编程问题的步骤
分析问题:分析问题的计算部分,理清思路
划分边界:划分问题的功能边界,规划IPO
设计算法:设计问题的求解算法,关注算法
编写程序:编写问题的计算程序,敲代码
调试测试:调试程序使正确运行,运行调试
升级维护:适应问题的升级维护,更新完善
实践案例1——温度转换
问题分析思路
需求:通过程序实现华氏度与摄氏度的转换
即输入华/摄氏度 输出为摄/华氏度
我们首先考虑输入部分(I–Input)的形式:
获得温度数值的方式:
① 直接转换温度值
② 将包含温度信息的声音/图像进行理解和转换
③ 通过温度信息发布渠道,获取并转换温度(与导论课上通过百度天气API获得实时天气的形式类似)
在当前阶段我们只能选择方法一,那么下一个问题也自然出现了:
如何判断用户输入的是摄氏度还是华氏度?
利用带华氏度/摄氏度的标志的温度值即可
(在这一阶段我们只需要构思出方式,在思考处理时再考虑如何识别等问题)((循序渐进))
接下来考虑处理部分(P–Process)
要解决的问题
①识别华氏度与摄氏度的标志
②根据不同的标志进行相应的温度转换运算
(由于转换运算要用到的公式并不复杂,所以在这里没有把转换本身作为一个需要解决的点)
(这个示例的解决我就直接在代码里解释吧)
输出部分(O–Output)
要解决的问题
①让输出的温度值带有相应的温度种类标识
基础概念
概念1——程序框架
小概念-代码高亮:在编写代码的时候,我们会发现代码中存在高亮部分,这是编程的色彩辅助体系,不是语法要求~
缩进用来表达程序的格式框架。
①python中缩进是语法的一部分,如果缩进不正确则程序可能运行错误
②缩进是表达代码间包含和层次关系的唯一手段
③要注意在同一程序中,缩进的长度需要一致
(个人觉得这个要求很好的改善了程序员的习惯,也提升了之后检查代码的速度,平时看同学写的c++代码不好好缩进就难受)
概念2——注释
python注释的方式:
①单行注释:用#开头
#TempConvert.py
②多行注释:’’'
'''
这是多行注释的例子
'''
概念3——命名与保留字
命名规则:大小写字母、数字、下划线和汉字等字符及组合
首字符不可以是数字
(除了python可以用汉字之外,我觉得大致还是和c++差不多的)
((接下来只写自己觉得有必要的地方了))
概念4——字符串
字符串由一对单引号或一对双引号表示
字符串是字符的有序序列,可以对其中的字符进行索引,注意序号是从0开始的
((这个性质很重要))
两种序号方式
字符串的索引和切片操作
索引:返回字符串中的单个字符 <字符串>[M]
代码中
TempStr[-1] 意思是获得字符串TempStr的最后一个字符,即利用反向递减序号。
切片:返回字符串中的一段字符子串 <字符串>[M:N]
TempStr[0:-1]表示从字符串开始但不到最后一个的字符串,那么,就相当于把TempStr的最后一个字符去掉
概念5——列表类型
列表类型:由0个或多个数据组成的有序序列
我们可以使用保留字in判断某一个元素是否在列表中
if TempStr[-1] in ['f','F']:
比如我们用这个来判断TempStr的最后一个字符是否为f/F,以此实现判断是否为华氏度
概念6——分支语句
注意else if与c++中有所不同 python中使用elif,且if后面是冒号
概念7——输入函数
input()函数的使用格式:
<变量>=input(<提示信息字符串>)
用户输入的信息以字符串的形式保存在变量中
概念8——输出函数print()的格式化
print("转换后的温度是{:.2f}C".format(C))
{}表示槽,将format中的后续变量填充到槽中,{:.2f}表示将变量C填充到这个位置时取小数点后两位
概念9——eval评估函数
作用:去掉参数最外侧引号并执行余下语句的函数
>>> eval("1+1")
2
>>> eval('"1+2"')
'1+2'
>>> eval('print("hello")')
hello
注意是只去掉最外侧的引号!所以去掉之后该执行什么就执行什么!
代码分析
#TempConvert.py
TempStr = input("请输入带有符号的温度值")
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("输入格式错误")
step1:
提示用户输入温度并利用TempStr储存字符串
step2:
利用索引获得用户输入的代表温度种类的字符(同时我们要设计用户输入的是错误情况的分支),并进入相应的分支
step3:
利用截取获得相应的数值之后,进行转换
step4:
控制输出格式并输出结果
感言
这两天算是学习python的初体验了,mooc的老师很可爱!讲得也很不错。觉得py部分设计比c++更合理,是个很好的开始,希望自己可以坚持下来。
第一章入门就打了这么多,我真是废话之王…如果特长表里可以写喷空,那我应该挺适合的:)
眼睛好累,我要去健身了。我爱健身!
想每次在记录的最后放首诗,毕竟我话这么多,即使是未来的我自己,看了也会忍不住先骂自己一句吧…如果你坚持看到了这里!那给你分享一首诗!
祝愿我们永远幸运
生命的力量不要太强
生活的惯性不要太弱
顾城 《活命歌》
aaaaaa我真的不太熟这个的排版怎么弄,想弄个落款也太难了吧!
That’s all,thanks for your reading!
python学习系列--1相关推荐
- Python学习系列(六)(模块)
Python学习系列(六)(模块) Python学习系列(五)(文件操作及其字典) 一,模块的基本介绍 1,import引入其他标准模块 标准库:Python标准安装包里的模块. 引入模块的几种方式: ...
- Python学习系列(五)(文件操作及其字典)
Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件 在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出 ...
- Python: 学习系列之七:模块、PIPY及Anaconda
系列 Python: 学习系列之一:Python能做什么 Python: 学习系列之二:基础介绍(int/float/string/range/list/tuple/dict/set) Python: ...
- Python学习系列(一)(基础入门)
Python入门 本系列为Python学习相关笔记整理所得,IT人,多学无害,多多探索,激发学习兴趣,开拓思维,不求高大上,只求懂点皮毛,作为知识储备,不至于落后太远.如果兴趣学习者,推荐一个基础视频 ...
- [转载] Python学习系列之下划线与变量命名规则
参考链接: Python中的命名空间和范围 一.定义 1.1 从入口函数谈起 从其他语言比如C++和Java,转到Python的同学经常遇到这个问题,入口函数是什么?Python如何执行? 后来我们发 ...
- 【Python学习系列六】Python语言基本语法
1. Python语言简介 Python是一种面向对象的解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. Python是纯粹的自由软件, ...
- 【Python学习系列一】Windows下Python及其IDE(eclipse+pydev)安装
为了爬虫和数据分析工作,python无可避免要学习. 1.Python语言的特点: 1)Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节.类似于PHP和Perl语言. ...
- Python学习系列day1-python基础
python开发学习目录 开发: 开发语言: 高级语言:Java.python(网页和后台).c#.c++.PHP(写网页).go===>字节码 底层语言:c.汇编===>机器码 pyth ...
- Python学习系列:PyCharm CE 安装与测试
开坑啦开坑啦~最近比赛要用Python了,开始强行学习. Mac下PyCharm CE 安装 先去百度PyCharm,一个很好用IDE,下载免费版的就够用啦: https://www.jetbrain ...
最新文章
- ffmpeg解码视频存为BMP文件
- 解析不是utf-8的xml文件 附(tag 属性的获取 )
- 【BZOJ2245】[SDOI2011]工作安排 拆边费用流
- android简化log输出方法
- 更改系统的默认安装路径
- 词频统计 求最大k个数
- python统计提取数量_python中统计计数的几种方法和Counter的介绍
- 电脑技巧:如何彻底关闭电脑右下角闪烁弹窗广告?
- 【算法分析与设计】实验 分治算法解决中位数问题
- C Tricks(十九)—— 求以任意数为底的对数
- 《推荐系统笔记(十)》CTR预估以及一般算法介绍(GBDT+LR)
- 【JavaScript回顾】闭包
- 数据库基础操作:建立学生表
- 变频电源基本控制电路系统
- 斑马打印机链接数据库实现自动打印
- 阿里安全SQL注入检测 前五名队伍分享
- 【资源分享新方式】基于IPv6+Windows的共享文件夹,从此告别第三方云盘
- mx播放器有没有投屏功能_手机投屏到电视有5种方法,跟我这样操作,仅需2步就搞定...
- 计算机与网络之间是红叉,雨林木风win7系统网络连接出现红叉无法上网的解决办法...
- Mac idea 导入maven 工程提示 Malformed \uxxxx encoding