基础 day01

day01笔记

python程序的组成:

程序由模块组成

模块由语句,函数,类,数据等组成

语句包含表达式

表达式建立并处理数据对象

 

python 注释

# 号开头,至直行尾

 

python 核心数据类型:

数字(整型int,浮点型float,复数complex, 布尔型bool)

字符串

列表等

 

整型数int

整型数是不带小数部分的数字。包括自然数,0,及负数

: -5, 10000, 0等

 

整型数的字面值表示方式:

十进制表示:

    10

    200

    99999999

    9999999999999999999999999999999999

二进制表示(0b开头,后跟0~1):

    0b111

    0b101

    0b11111111

八进制方式表示(0o开头,后跟0~7)

0o177  # 127

    0o11   # 9

十六进制表示(0x开头,后跟0~9, A~F,a-f)

0x11  # 17

0xFF  # 255

    0x1234ABCD  

 

进制转换:

十进制(逢十进一)

二进制(逢二进一)

八进制(逢八进一)

十六进制(逢十六进一)

 

练习:

计算 0xFFFF 表示多少 65535

计算 0b1001 表示多少 9

计算 0o71   表示多少  57

试把 13   转为二进制表示  0b1101

18   转为十六进制表示 0x12

浮点型数 float

浮点型数是带有小数部分的数字

表示方式:

小数形式:

3.14  3.1  3.   0.14  .14

科学计数法:

格式:

小数 e/E(正负号) 指数

:

      6.18E-1

      2.9979e8

 

 

复数 complex

分为两部分:

实部(real)

虚部(image)

虚部以j或J结尾

字面值

    1j, (2j), 1+1J, 3-4J, (-100+100J)

 

 

布尔类型数bool

用来表示真和假两个状态的类型

    True 表示真(条件满足或成立)

Flase表示假(条件不满足或不成立)

说明:

    True 的值为1

    False 的值为0

空值 None 对象

  None 是一个表示不存在的特殊对象

作用:

用来占位

用来变量解除绑定

 

 

表达式和运算符(也叫操作符)

表达式 expression

由一个数字或数字和运算符组成

作用:

通常让计算机做一些事情并返回结果

:

    1 + 2

 

运算符:

算术运算符:

    +  加法

    -  减法

    *  乘法

    /  除法

    // 地板除

    % 求余

    ** 幂运算

除法:

除法得到的数是浮点数,不会丢弃小数部分

  1/3 = 0.3333333333333333

  4/2 = 2.0

 

// 地板除

除的结果去掉小数部分向下取整

  7 / 3   # 得2.333333333333

  7 // 3  # 得2

  8 // 3  # 得2

  3.25 // 1.5 # 得 2.0

 

% 求余(也叫取模)

  10 % 3      # 得 1

  3.25 % 1.5  # 得 0.25

 

** 幂运算

格式:

x ** y

意为 x 的 y次方

  4 ** 2        # 得 16

  3.0 ** 4.0    # 得 27

  5.6 ** 1.418  # 得

 

用交互模式求:

  1. 一个商店卖西瓜7元一个,你带20元组能买几个西瓜,找零多少钱?

  2. 一个学生毕业的薪资10000元,每年涨20% 十年后他的薪资是多少?

 

 

运算符的优先级

  **

  *  /  //  %

  +  -

示例:

  1 + 3 * 3 ** 2 + 4 // 2

  1 + 3 * 9 + 4 // 2

  1 + 27 + 4 // 2

  1 + 27 + 2

  28 + 2

  30

 

括号分组子表达式

()可以将表达式分组,()内的表达式先进行计算

 

混合类型自动升级

  1 + 2.14 返回浮点数 3.14

 

 

基本输出函数:print

格式:print(要打印的数据),各个数据可以用逗号“,”隔开

示例:print('hello')

print(1+2+3)

练习:在终端打印:

       *********

       *       *

       *       *

       *********

 

     2. 已知矩形的边长6厘米,短边长4厘米,写程序求出这个矩形的周长和面积

 

 

变量 variable

什么是变量:

用来绑定数据对象的标识符

变量的命名规则:

        1. 变量名必须为字母或下划线开头,后跟字母或下划线或数字

        2. 不能使用python的关键字命名

 

合法的变量名示例:

a a1 b bbb   _aaa_   _Abcdvara1b2c2

不合法的变量名示例:

          1a   123   $ABC  +a  -b   #ab   @ab

 

    python 的关键字:

        True ,False,   None is  del  if  elif等

 

赋值语句 statement

语法:

变量名 = 表达式

变量名1 = 变量名2 = 表达式

变量名1 ,变量名2,... = 序列

 

作用:用于创建变量并将变量绑定(或关联)在一个对象上

说明:

            1.当变量不存在时,创建该变量同时绑定在这个对象上

            2.当变量存在时,改变此变量的绑定的对象

            3.一个变量只能绑定一个对象

            4.两个变量可以同时绑定同一个对象

示例:

            a = 10  # 创建a变量,和10绑定在一起

            b = 20

            c = a + b  #创建变量c,和10 + 20 的结果绑定在一起

练习:

指定一个圆的半径R为3cm,

    1.计算出圆的周长是多少厘米?

    2.计算出圆的面积是多少平方厘米?

(要求:用变量替代3cm,和圆周率3.1415926)

 

 python 中的名词:关联/绑定/引用的含义

      python中,变量没有类型

关联/绑定/引用都是指变量和一个对象的关联关系

 

 

在交互模式下查看变量的绑定关系:help('__main__')

 

 

python 中的自动化内存管理:

      a = 10000

      b = 20000

      a = a + b  #过程怎么进行的

 

序列赋值的语法:

变量名1,变量名2,... = 对象1,对象2...

变量名1,变量名2,... = [对象1,对象2...]

变量名1,变量名2,... = (对象1,对象2...)

 

思考:变量的交换绑定

练习:已知有两个变量:a 绑定 10000  b 绑定 20000

问:在不创建任何新的对象的情况下,如何让a和b 交换绑定的对象?

方法1:

       a = 10000

       b = 20000

       temp = a    #借助第三个变量,经典交换算法

       a = b

       b = temp

 

方法2:序列赋值    a, b = b , a

 

 

is / is not运算符

作用:判断两个对象是否绑定同一个对象,如果是同一个对象返回Ture,否则返回 False

    is not 与 is 相反

语法:x is y

x is not y

 

        a = 10000

        b = 10000

a is b    # False

 

小整数对象池:

CPython中整数 -5 至 256 永远保存在小整数池中,不会释放并可以重复使用

示例:

       a = 5

       b = 5

a is b   # True

 

id 函数:

格式:id(对象)

作用:返回一个对象在内存中的地址

 

del 语句(del 是 delete 的简写)

作用:用于删除变量,同时删除与对象的绑定关系。如果可能则释放对象

语法:del 变量名

 

 python 的内存管理和引用计数

每个对象都会记录有几个变量引用自身,当引用的数量为0时,则对象被销毁,
此种自动化内存管理的方式叫引用计数。

 

复合赋值算术运算符:

运算符说明

     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

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值