Python学习第一周总结
- 写在学习Python之前
一直以来我都对计算机的程序语言都抱有反感的态度。从初、高中的逃计算机课;大学时期的c语言、VF语言的讨好班里同学,好让其在期末考试时的照顾,目的是不挂科;研究生期间,在小导师的监督和催促下,硬着头皮学习MATLAB和IDL,是为了实现论文中处理数据需求。虽然我知道Python语言可以更好的处理、解决我的问题,但是无奈身边没有一个对Python很精通的小伙伴,自己却心有余而力不足,所以只能不了了之。
总之,程序设计语言对我来讲,似乎天然的存有隔阂;但当研究生毕业之际,在与同学、好友一起创业期间,才发现当初错过了太多、太多的机会;浪费了太多、太珍贵的时间,去学习哪怕有一门语言,好让我可以在众多师妹们面前有炫耀码几行代码的机会。
当然打算学习Python,也并非是工作之需,只是从心底想完成那个未曾完成的遗憾,决定之后,就没有任何犹豫……
一、Python简介
Python是由荷兰人Guido von Rossum开发的一门交互式语言,由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。其优缺点如下:
1. Python是一种解释型语言,解释型语言的最大优点是平台可移植性,最大的缺点是执行效率低下。
2. 今天,当计算机硬件已经足够发达的时候,我们追求的更多的并不是程序的执行效率,而是开发效率。
二、Python环境的搭建
1.可以从Python的官方网站下载Python的安装程序以及查看相关文档。
说明:如果要在Linux环境下更新到Python 3.x版本需要通过源代码构建安装。
2. windows10 环境下 Python 3.x 解释器的安装
3. 检查Python 3.x版本是否安装完成:
python --version
或进入交互式环境检查:(>>>: 三个大于号说明进入交互式环境)
import sys
print(sys.version_info)
print(sys.version)
4. 通过使用Python的包管理工具 pip 来安装 ipython 和 jupyter 交互式编程工具。
pip install ipython jupyter
或
python -m pip install ipython jupyter
5. 第一个Python程序: ‘hello, world.’
# 使用了Python内置的print函数打印字符串
print('hello, world!')
6. 如果想用交互式环境进行Python开发,那么可以使用ipython或者jupyter 的notebook项目。
jupyter notebook
7. 用turtle模块绘制一个图形—奥运五环图案。
# 绘制奥运五环
import turtle
turtle.width(8)
turtle.hideturtle()
turtle.speed(8)
turtle.bgcolor("pink")
turtle.pencolor("blue")
turtle.penup()
turtle.goto(-120, -20)
turtle.pendown()
turtle.circle(50)
turtle.pencolor("black")
turtle.penup()
turtle.goto(0, -20)
turtle.pendown()
turtle.circle(50)
turtle.pencolor("red")
turtle.penup()
turtle.goto(120, -20)
turtle.pendown()
turtle.circle(50)
turtle.pencolor("yellow")
turtle.penup()
turtle.goto(-60, -70)
turtle.pendown()
turtle.circle(50)
turtle.pencolor("")
turtle.pencolor("green")
turtle.penup()
turtle.goto(60, -70)
turtle.pendown()
turtle.circle(50)
turtle.width(60)
turtle.pencolor("brown")
turtle.penup()
turtle.goto(-20, 20)
turtle.pendown()
turtle.write("奥运五环")
turtle.mainloop()
三、 变量
1.指令和程序
1. 计算机的硬件系统由五大部分组成:运算器、控制器、存储器、输入设备及输出设备。
2. 运算器和控制器加起来即为中央处理器,其功能为:执行各种运算和控制指令,处理计算机软件中的数据。
3. 我们通常所说的程序,实际上就是指令的集合。
4. 程序:将一系列的指令按照某种方式组织在一起,然后通过这些指令去控制计算机做我们想让它做的事情。
5. 冯* 诺依曼结构特点:
1)将存储设备与中央处理器分开。
2)提出数据以二进制方式编码。
6. 二进制的计数方法:逢二进一的计数法。了解二进制与十进制的转换关系,二进制与八进制、十六进制的转换关系。
2.变量和类型
1. 在程序设计中,变量是一种存储数据的载体,计算机中的变量是实际存在的数据,或者说是存储器中存储数据的一块内存空间,变量的值可以被读取和修改,这是所有计算和控制的基础。
2. 数据类型:
整型(int)
浮点型(float),也就是小数,按照科学计数法表示,浮点数的小数点位置是可变的。
字符串型(str),是以单引号或双引号括起来的任意文本。
布尔型(bool),有True和False两种,首字母大写,布尔可以直接参加运算。
复数型,3 + 2j,与数学中的复数一致,只是把虚部的i换成了j。
3.变量的命名
1. 硬性规则
a. 变量名有字母(广义的Unicode字符,不包括特殊字符)、数字觉下划线组成,数字不能开头。
b. 大小写敏感(大写和小写是两个不同的变量)。
c. 不要跟关键字(有特殊含义的单词)和系统保留字(如函数、模块的名字)冲突。
2. PEP8(Index of Python Enhancement Proposals的缩写,译为:Python增强建议书索引。)要求:
a. 用小写字母拼写,多个单词用下划线连接。
b. 受保护的实例属性用单个下划线开头。
c. 私有的实例属性用2个下划线开头。
d. 见名知意。
4.变量的使用
1. 使用input()函数输入;int()进行类型转换;占位符格式化输出的字符串。
# input()函数,int(),占位符的输出。
a = int(input('a = '))
b = int(input('b = '))
print('%d + %d = %d' % (a, b, a + b))
print('%d + %d = %d' % (a, b, a - b))
print('%d + %d = %d' % (a, b, a * b))
2. 使用type()检查变量的类型。
# type()的使用
a = 100
b = 12.345
c = 1 + 5j
d = 'hello, world!'
e = True
print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(e))
说明:在对变量类型进行转换时,可以使用Python的内置函数(准确的说,下面列出的并不是真正意义上的函数,而是后面要讲到的创建对象的构造方法)。
int(): 将一个数值或字符串转换成整数,可以指定进制。
float():将一个字符串转换成浮点数。
str():将指定的对象转换成字符串的形式,可以指定编码。
chr():将整数转换成该编码对应的字符串(一个字符)
ord():将字符串(一个字符)转换成对应的编码(整数)。
5.运算符
Python运算符的优先级
# 运算符的优先级
a = 5
b = 10
c = 3
d = 4
e = 5
a += b # a = a + b
a -= c
a *= d
a /= e
print('a = ', a)
# 逻辑运算符
flag1 = 3 > 2
flag2 = 2 < 1
flag3 = flag1 and flag2
flag4 = flag1 or flag2
flag5 = not flag1
print('flag1 = ', flag1)
print('flag2 = ', flag2)
print('flag3 = ', flag3)
print('flag4 = ', flag4)
print('flag5 = ', flag5)
print(flag1 is True)
print(flag2 is not False)
5. 变量的练习
1. 将华氏温度转化为摄氏温度。
# 将华氏温度转化为摄氏温度(F = 1.8C + 32)
f = float(input('请输入华氏温度: ')) # f: 华氏温度
c = (f - 32) / 1.8 # 摄氏温度
print(c)
print('%.2f华氏度 = %.2f摄氏度' % (f, c)) # 本段是参考老师给的答案,学习的输出形式
2. 输入圆的半径,计算周长和面积。
import math # 导入math函数模块
radius = float(input('请输入圆的半径:')) # 输入圆的半径
c = 2 * math.pi * radius # c : 圆的周长
s = math.pi * radius ** 2 # s: 圆的面积
print('圆的周长为: %.2f' % c)
print('圆的面积为: %.2f' % s)
3. 输入任意年份判断是不是闰年,如果是闰年,输出True,否则输出False。
year = int(input('请输入年份: '))
if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
print('该年为闰年')
else:
print('不是闰年')
# 以下为老师给的答案
year = int(input('请输入年份: '))
# 如果代码太长,写成一行不便于阅读,可以使用\或()折行。
is_leap = (year % 4 == 0 and year % 100 != 0 or + \
year % 400 == 0)
print(is_leap) # is_leap为bool型判断
- 未完待更新