Python学习之旅

          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型判断
  • 未完待更新

猜你喜欢

转载自blog.csdn.net/momow26/article/details/79439518