python学习系列--1

开始学习python

part 1 前言

今天是学习python的第一天…觉得有必要做点记录,加上编程学习做纸质笔记个人觉得不太合适,于是将这里当成记录学习编程的本吧。

part 2 正式学习

安装python

访问官网 点击download选择合适版本即可
(本来想用python123上面的链接直接下载,但是家里WiFi可能有点问题,死活下不了)
python学习系列--1_第1张图片
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开始的
((这个性质很重要))
两种序号方式
python学习系列--1_第2张图片

字符串的索引和切片操作

索引:返回字符串中的单个字符 <字符串>[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.8
    print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1]in['c','C']:
    F=1.8*eval(TempStr[0:-1])+32
    print("转换后的温度是{:.2f}F".format(F))
else:
    print("输入格式错误")

step1:
提示用户输入温度并利用TempStr储存字符串
step2:
利用索引获得用户输入的代表温度种类的字符(同时我们要设计用户输入的是错误情况的分支),并进入相应的分支
step3:
利用截取获得相应的数值之后,进行转换
step4:
控制输出格式并输出结果

感言

这两天算是学习python的初体验了,mooc的老师很可爱!讲得也很不错。觉得py部分设计比c++更合理,是个很好的开始,希望自己可以坚持下来。
第一章入门就打了这么多,我真是废话之王…如果特长表里可以写喷空,那我应该挺适合的:)
眼睛好累,我要去健身了。我爱健身!

想每次在记录的最后放首诗,毕竟我话这么多,即使是未来的我自己,看了也会忍不住先骂自己一句吧…如果你坚持看到了这里!那给你分享一首诗!

祝愿我们永远幸运
生命的力量不要太强
生活的惯性不要太弱
顾城 《活命歌》

aaaaaa我真的不太熟这个的排版怎么弄,想弄个落款也太难了吧!
That’s all,thanks for your reading!

你可能感兴趣的:(python)