开始学习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相关推荐

  1. Python学习系列(六)(模块)

    Python学习系列(六)(模块) Python学习系列(五)(文件操作及其字典) 一,模块的基本介绍 1,import引入其他标准模块 标准库:Python标准安装包里的模块. 引入模块的几种方式: ...

  2. Python学习系列(五)(文件操作及其字典)

    Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件      在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出 ...

  3. Python: 学习系列之七:模块、PIPY及Anaconda

    系列 Python: 学习系列之一:Python能做什么 Python: 学习系列之二:基础介绍(int/float/string/range/list/tuple/dict/set) Python: ...

  4. Python学习系列(一)(基础入门)

    Python入门 本系列为Python学习相关笔记整理所得,IT人,多学无害,多多探索,激发学习兴趣,开拓思维,不求高大上,只求懂点皮毛,作为知识储备,不至于落后太远.如果兴趣学习者,推荐一个基础视频 ...

  5. [转载] Python学习系列之下划线与变量命名规则

    参考链接: Python中的命名空间和范围 一.定义 1.1 从入口函数谈起 从其他语言比如C++和Java,转到Python的同学经常遇到这个问题,入口函数是什么?Python如何执行? 后来我们发 ...

  6. 【Python学习系列六】Python语言基本语法

    1. Python语言简介 Python是一种面向对象的解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. Python是纯粹的自由软件, ...

  7. 【Python学习系列一】Windows下Python及其IDE(eclipse+pydev)安装

    为了爬虫和数据分析工作,python无可避免要学习. 1.Python语言的特点:    1)Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节.类似于PHP和Perl语言.   ...

  8. Python学习系列day1-python基础

    python开发学习目录 开发: 开发语言: 高级语言:Java.python(网页和后台).c#.c++.PHP(写网页).go===>字节码 底层语言:c.汇编===>机器码 pyth ...

  9. Python学习系列:PyCharm CE 安装与测试

    开坑啦开坑啦~最近比赛要用Python了,开始强行学习. Mac下PyCharm CE 安装 先去百度PyCharm,一个很好用IDE,下载免费版的就够用啦: https://www.jetbrain ...

最新文章

  1. ffmpeg解码视频存为BMP文件
  2. 解析不是utf-8的xml文件 附(tag 属性的获取 )
  3. 【BZOJ2245】[SDOI2011]工作安排 拆边费用流
  4. android简化log输出方法
  5. 更改系统的默认安装路径
  6. 词频统计 求最大k个数
  7. python统计提取数量_python中统计计数的几种方法和Counter的介绍
  8. 电脑技巧:如何彻底关闭电脑右下角闪烁弹窗广告?
  9. 【算法分析与设计】实验 分治算法解决中位数问题
  10. C Tricks(十九)—— 求以任意数为底的对数
  11. 《推荐系统笔记(十)》CTR预估以及一般算法介绍(GBDT+LR)
  12. 【JavaScript回顾】闭包
  13. 数据库基础操作:建立学生表
  14. 变频电源基本控制电路系统
  15. 斑马打印机链接数据库实现自动打印
  16. 阿里安全SQL注入检测 前五名队伍分享
  17. 【资源分享新方式】基于IPv6+Windows的共享文件夹,从此告别第三方云盘
  18. mx播放器有没有投屏功能_手机投屏到电视有5种方法,跟我这样操作,仅需2步就搞定...
  19. 计算机与网络之间是红叉,雨林木风win7系统网络连接出现红叉无法上网的解决办法...
  20. Mac idea 导入maven 工程提示 Malformed \uxxxx encoding

热门文章

  1. linux drm 架构及linux drm 架构 之代码分析
  2. 处理Activity#onResume()遇到java.lang.IllegalArgumentException诡异异常
  3. 7-41 高空坠球(20 分)
  4. H5跳转小程序(详)
  5. 学习个人网页制作全过程
  6. 无人驾驶运动控制(二):模型预测控制
  7. idea 自定义插件存储位置
  8. 嵌入式入门———开发板文件烧录
  9. 自动Emergency Responder
  10. java查询时间代码实现