一、学习内容概括

二、具体学习内容

2.1 变量与运算符

2.2.1 注释

1、 #

#:单行注释,作用于整行。

2、 三引号

''' '''或者""" """:区间注释,在三引号之间的内容均为注释内容。

2.2.2 运算符

1、 算术运算符

算术运算符比较简单,加减乘除就是常用法,最后三个对于初学者需要多加记忆一下。

2、 比较运算符

前四个比较运算符也属于常用法,注意等号与不等号的表示方法。

3、逻辑运算符

逻辑运算符:and、or、not。逻辑运算符和比较运算符一样,输出都是True或False。

4、位运算符

位运算符有点难理解,具体见后文2.3的介绍。

5、三元运算符

三元操作符格式:exp1 if contion else exp2,化复杂为简单。

6、其他运算符

注意:

(1)is, is not 对比的是两个变量的内存地址;

(2)==, != 对比的是两个变量的值;

(3)若比较的两个变量,指向的都是地址不可变的类型(str等),那么is,is not 和 ==,!= 是完全等价的。

(4)若对比的两个变量,指向的是地址可变的类型(list,dict,tuple等),则两者是有区别的。

7、运算符的优先级

(1)一元运算符优于二元运算符。例如3 ** -2等价于3 ** (-2)。

(2)先算术运算,后移位运算,最后位运算。例如 1 << 3 + 2 & 7等价于 (1 << (3 + 2)) & 7。

(3)逻辑运算最后结合。例如3 < 4 and 4 < 5等价于(3 < 4) and (4 < 5)。

2.2.3 数据类型和转换

1、变量和赋值

注意:

(1)使用变量之前,需要先赋值;

(2)变量名可以包括数字、字母和下划线,但是不能以数字作为开头;

(3)变量名对大小写敏感。

2、数据类型和转换

python里面万物皆可对象。

(1)保留浮点型的小数点后 n 位

可以用 decimal 包里的 Decimal 对象和 getcontext() 方法来实现。Decimal 对象的默认精度值是 28 位 (prec=28)。

调整精度可以以这种方式:decimal.getcontext().prec = 4,等号后面的数字4可以变换。

(2)bool(X)创建变量

X 可以是,基本类型:整型、浮点型、布尔型;容器类型:字符串、元组、列表、字典和集合。

1)bool 作用在基本类型变量:X 只要不是整型 0、浮点型 0.0,bool(X) 就是 True,其余就是 False。

2)bool作用在容器类型变量:X 只要不是空的变量,bool(X) 就是 True,其余就是 False。

3)确定bool(X) 的值是 True 还是 False,就看 X 是不是空,空的话就是 False,不空的话就是 True。

对于数值变量,0, 0.0 都可认为是空的;对于容器变量,里面没元素就是空的。

(3)获取类型信息

type(object)。

注意:

(4)类型转换

2.3 位运算符

2.3.1 原码、反码和补码

2.3.2 按位运算

(1)按位非操作~

~把0和1全部取反,即0变成1,1变成0。

(2)按位与操作&

只有两个对应位都为1时才为1。

(3)按位或操作|

两个对应位有一个为1就为1。

(4)按位异或操作^

两个对应位不同时才为1。

异或满足交换律和结合律。

(5)按位左移操作<<

(6)按位右移操作>>

2.3.3 利用位运算实现快速计算

(1)通过<<,>>快速计算2的倍数

(2)通过^快速交换两个整数

(3)通过a & (-a)快速获取a的最后为1位置的数

2.3.4 利用位运算实现整数集合

一个数的二进制可以看作是一个集合,其中0表示不在集合中,1表示在集合中。

三、学习问题和解决方法记录

最大的问题是在理解位运算上,代码直接给出结果,一时不容易理解,就自己慢慢推导出来。

然后就是时间比较紧,有的代码只是看懂了,并没有实际操作一下,明天做task02的时候会顺便操作下今天的代码。

四、学习总结

巩固了基础知识,比如注释、运算符、数据类型的转换等。

加深了对位运算的理解,并学会运用。

学习到了新知识:保留浮点型的小数点后 n 位,可以用 decimal 包里的 Decimal 对象和 getcontext() 方法来实现。

python有没有三元运算符_Python基础入门:从变量到异常处理(1)相关推荐

  1. 用python循环语句求素数_Python基础入门_3条件语句和迭代循环

    Python 基础入门前两篇: Python 基础入门--简介和环境配置 Python基础入门_2基础语法和变量类型 这是第三篇内容,主要简单介绍条件语句和迭代循环语句,内容也比较简单,目录如下: 条 ...

  2. python输入一个字母标识符_Python基础入门语法和变量类型(一)

    1 基础语法 标识符 标识符由字母.数字和下划线(_)组成,其中不能以数字开头,并且区分大小写. 以下划线开头的标识符是有特殊意义的: 单下划线开头的如 _foo,表示不能直接访问的类属性,需要通过类 ...

  3. python零基础自学教材-python萌新:从零基础入门到放弃

    原标题:python萌新:从零基础入门到放弃 不管是在什么领域,自学者都占绝大多数,你说自学可以吗?可以,没问题的,只需要你具备以下几点最基础的能力: 第一点:天赋.对于python而言其实是非常需要 ...

  4. python基础入门(变量)

    python基础入门之变量 导语 军训应该都清楚吧,教官在方队里怎么找到你,少数的是直接说那个谁出来!哈哈,一般不会这样,基本都是说几行几列出列,相当于几行几列就是给你标上了一个编号,那这就有人说了, ...

  5. python ** 运算符_Python从入门到放弃运算符(2)

    摘要:上一篇Python从入门到放弃-运算符(1),讲了Python的运算符中的算术运算符.赋值运算符.比较(关系)运算符,这篇继续讲Python的运算符. 逻辑运算符 逻辑运算符是对真和假两种布尔值 ...

  6. python变量运算符_Python基础 — 变量和运算符

    序言:这一章我们将学习变量以及常见的类型,我们将以案例和代码相结合的方式进行梳理,但是其中所有的案例和知识点 都是Python3 版本. 变量和运算符 1.1 初步介绍 ​ 在程序设计中,变量是一种存 ...

  7. python安装方法_Python基础入门——简介和环境配置,超实用!

    作者 | kbsc13 来源 | 机器学习与计算机视觉(ID:AI_Developer) 上周结束了如何构造一个机器学习项目的系列文章,当然还有一篇简单的总结以及介绍一些入门的学习资料,不过还在整理, ...

  8. python中三元运算符_python 三元运算符详解

    python是没有三元描述符的,但是可以通过模拟的实现. 其中一种是: (X and V1) or V2 正常情况下是不会有错误的,但是文章中也提到了,当V1=""时,就会有问题 ...

  9. python入门基础语发_Python基础入门-基础语法

    第三章 基础语法 基于3.X 1. 变量 变量名只能包含字母.数字和下划线.变量名可以字母或下划线打头,但不能以数字打头. 变量名不能包含空格,但可使用下划线来分隔其中的单词. 不要将Python关键 ...

最新文章

  1. Eclipse for Tricore 的安装方法
  2. 关闭linux服务器电源,linux关闭ACPI电源管理模块
  3. 三招让你从求职者中脱颖而出(转)
  4. python 去掉文件头部几行_批量重命名文件的python代码
  5. python字节码大全
  6. 5种网络IO模型:阻塞IO、非阻塞IO、异步IO、多路复用IO、信号驱动IO
  7. Java,如果这是一个更好的世界
  8. 在Eclipse中搭建Python开发环境
  9. 两个有序链表序列的合并_leetcode链表之合并两个排序的链表
  10. 使用mongoose和bcrypt做认证
  11. ios 仿微信,短信聊天气泡
  12. EqualLogic强势增长,戴尔领跑iSCSI中国及香港地区市场
  13. 学python前端需要哪些基础知识_简析前端学习python3的基础
  14. THUSC2016 游记
  15. HTML基础——HTML
  16. cmd 文本文件分割_cmd - 分割大文件
  17. 天正电气图例_天正电气CAD教程之符号篇 - CAD自学网
  18. YUV与RGB互转各种公式 (YUV与RGB的转换公式有很多种,请注意区别)
  19. 前端第一阶段-11(HTML之flex弹性)
  20. 教你在python中用不同的方式画不同颜色的画布

热门文章

  1. 历经5代跨越25年的RTC架构演化史
  2. 音视频技术开发周刊 | 197
  3. 曾小伟:谁没被“不可思议”的薪资吸引过?
  4. FFmpeg从入门到精通:SEI那些事
  5. 直播马上开始│走进腾讯云物联网
  6. nginx架构详解(50%)
  7. librtmp协议分析---RTMP_SendPacket函数
  8. android adb wifi
  9. golang获取文件创建时间,最后访问时间,最后修改时间
  10. 浅析SparkRPC源码(spark2.11)