Python基础 -- 01


<<Python 基础>>
简介
python的诞生
  创建人:Guido van Rossum(荷兰人)
  时 间:1989年
python语言的应用领域:
  系统运维
  网络编程(搜索引擎,爬虫,服务器编程)
  科学计算
  人工智能,机器人
  web 开发
  云计算
  大数据以及数据库编程
  教育
  游戏,图像处理
  其他...

优缺点:
  优点:
    面向对象(Java, C++, Python, C#, Swift)
  免费
  可移植(Windows, Linux, Unix, IOS, 安卓)
  可混合编程(C/ C++/ Java/ .net)
  简单易学易用
  应用领域广泛
  开源
缺点:
    与C/C++相比,执行速度不够快
    不能封闭源代码

python的官网
  https://www.python.org

python的版本
  python V2.7(2020年结束维护)
python V3.5(当前教学)
python V3.8(最新)

python的运行:
  python的解释执行器的类型
    CPython    (C语言开发)
    JPython    (Java语言开发)
    IronPython (.net开发)
    PyPy (Python语言开发)

第一个python程序
  编写:hello.py

执行python程序
  $ python3 文件路径名.py
例:
  $       

常用的文件后缀:
    .py            python后缀
    .c            c语言后缀
    .cpp/.cc/.cxx  C++语言后缀
    .java          Java语言后缀

在python交互模式下编写并执行代码
  进入交互模式
    $ python3 <回车>
  退出交互模式:
    >>> quit() <回车>
>>> exit() <回车>
或输入: ctrl + d (输入文件结束符)

python 的注释
  以#开头,直至行尾
  作用:
    让注释的内容不参加执行
  sublime 注释快捷键 ctrl + /

python程序的组成:
程序由模块组成
模块由数据,函数,类等组成
函数由语句组成
语句由表达式组成

python 的核心数据类型
  数字(整型数int, 浮点型数 float, 复数complex, 布尔型bool)
  字符串 str, 列表 list 等

整型数 int
  整型是不带小数部分的数字

  整数的字面值表示方式
    十进制表示方式
      如:
        10
200
-100
八进制表示方式
  如:
    0o177(127)
0o11(9)
十六进制表示方式
  如:
    0x11 (17)
0xFF (255)
0x1a2b
二进制表示方式
  如:
    0b111
0b101
浮点型数 float
浮点数是带有小数部分的数字(小数部分可以是0)
浮点数的字面值表示方式:
  小数表示法:
    如:
      3.14 3.1 3.0 0.14 .14
 科学计数法
   如:
     小数e/E (正负数) 指数
   如:
     6.18E-1 (等同于 0.618)
2.9979E8 (等同于 299790000.0)
复数型 complex
分为两部分:
实部(real)
虚部(image)
虚部是以j或J结尾的数

字面值:
  1j
(2J)
1+2j
3-4j

布尔型数 bool
用来表求真和假两种状态的数字
  True 表示真(条件满足或成立)
    False 表示假(条件不满足或不成立)
  说明:
    True 的值为1
    False 的值为0


内置对象
  空值 None
None 是一个表示不存在的特殊对象
作用:
  用来占位
  变量解

表达式和运算符
表达式 expression
由一个数字或数字和运算符等组成
作用:
  通常让计算机做一些事情并返回结果
如:
  1 + 2
1 +2 * 3 + 4 / 5
运算符:
  算术运算符:
    + 加法
    - 减法
    * 乘法
    / 除法
    // 地板除floordiv
% 求余
** 幂运算
/ 除法
  除法得到的数是浮点型数,不会丢弃小数部分
  1/3 # 得 0.33333333
8/2 # 得 4.0

// 地板除
   除的结果去掉小数部分向下取整
   如:
   7/3 # 得 2.33333333
7//3 # 得 2
3.25//1.5 # 得 2.0
% 求余
  如:
    7%3 # 得 1
3.25%1.5 # 得 0.25
** 幂运算
   格式:
     x**y
  意为 x的y次方
如:
  4**2 # 得 16
3**4.0 #得 81.0

练习:
   1. 一个商店卖西瓜,7元一个,您带20元钱能买几个西瓜?剩多少元?
   2.一个同学毕业薪资10000元,每年涨薪20%,请问十年后这个同学的薪资是多少?
   答案:
      1. 1) 20//7 # 买到2个西瓜
           2) 20%7 # 剩6 元
      2. 10000*(1+0.2)**10

运算符的优先级
   **
* / // %
+ -
示例:
1+3*3**2+4//2

括号分组子表达式
  ()内部的表达式先进行计算
混合类型自动升级
  1+ 2.14 返回类型为浮点型 3.14
3+4.0 返回7.0

基本输出函数 print
格式:
  print('要打印的东西')
多个数据用逗号分隔开

变量 variable
  什么是变量
    变量是关联一个对象的标识符

标识符的命名规则:
  必须以字母或下划线开头,后跟字母或下划线或数字
  不能使用python的关键字

  说明:
    python 的变量名区分大小写
  合法的标识符(变量名) 举例:
   abc a1b2 _abc _Abcd var
不合法的标识符(变量名):
  1a2b $abc +a #sde @sdfh
python关键字
  True, False, None, is, del, if, elif...等
赋值语句
  =
语法:
  变量名=表达式
  或
  变量名1=变量名2=表达式
  或
  变量名1,变量名2=序列
作用:
   1.创建一个变量,此变量用来绑定数据对象
   2.修改一个变量的绑定关系,让其绑定另一个数据对象
说明:
  当变量不存在时,创建该变量,同时将变量绑定在这个对象上
  当变量存在时,改变此变量绑定的额对象
  一个人变量只能绑定一个对象
  两个变量可以同时绑定同一个对象
示例:
  pi=3.1415926535897932
pi2=pi #pi变量 和 pi2变量同时绑定 3.1415936
x=y=100 # x变量 和 y变量同时绑定100
x,y=100,200 # 序列赋值

python 中的自动化内存管理
  a=10000
b=20000
a=a+b # 释放10000这个对象,a重新绑定30000
c=a # c同时绑定在30000上

练习:
  1.指定一个园的半径r=9cm
1) 计算圆的周长
 2)计算圆的面积
2.变量交换练习
已知有两个变量:
  a绑定 10000
b绑定 20000
问,在不创建任何新的数据对象的情况下,如何让a和b交换绑定的对象

del 语句:
  作用:
    用于删除变量,同时解除与对象的关联关系,如果可能释放对象
  语法:
    del 变量名
  在交互模式下查看当前作用域的所有变量
  >>>help('_main_')
退出键:q
示例:
   a=10000 # 创建a变量,绑定10000
print(a) # 10000
del a # 删除了a变量,释放了10000这个数据对象
print(a) # 出错

自动化内存管理和引用计数:
  每个对象都会记录有几个变量绑定(引用)自身,当引用的数量为0时,则此对象被销毁(释放内存资源),此种自动化内存管理的方式叫引用计数
  例:
   a=10000
b=a # 两个变量同时绑定10000这个数据对象
del a
del b # 此时会释放10000这个数据对象

is/ is not 运算符
  作用:
     判断两个对象是否是同一个对象,当是同一个对象时返回True,
否则返回Flase
说明:
is not 返回值和 is相反
   x is y
x is not y
id(obj) 函数
  作用:
     返回一个人对象在内存中的地址

小整数对象池
  CPython, 整数 -5至256的数永远存在于小整数池中,不会释放且可以重复使用
  示例:
     a=100
b=100
a is b # True

符合赋值算术运算符
   运算符:
   y+=x 等同于  y=y+x
y-=x 等同于  y=y-x
y*=x 等同于  y=y*x
y/=x 等同于  y=y/x
y//=x 等同于  y=y//x
y%=x 等同于  y=y%x
y**=x 等同于  y=y**x
例:
  x=100
x=x*2 # x=200

练习:
   1.中国古代的称是16 两一斤,请问古代的216两是几斤几两,用程序打印出来
   2.从凌晨0:00计时,到现在已经过了63320秒,请问现在是几时,几分,几秒,写程序打印出来
   3.温度转换:
  摄氏温度= 5.0/9.0*(华氏温度-32)
请问100华氏温度是多少摄氏温度,写程序算出来
思考:
   如果知道当前温度是摄氏温度,能否算出华氏温度是多少?

 

 

 


 

 

 

 

 

   

 

posted on 2018-11-16 17:34  xiaohuatongxue  阅读(167)  评论(0)    收藏  举报