Python语法易错点记录


本文提供全流程,中文翻译。

Chinar 坚持将简单的生活方式,带给世人!

(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例)

Chinar —— 心分享、心创新!

助力记录 Python 语法中易错点、总结 ( 便于查询 )

为新手节省宝贵的时间,避免采坑!

Chinar 教程效果:



全文高清图片,点击即可放大观看 (很多人竟然不知道)


1

Python —— 解释性语言

Python —— 敬请期待


2

Pragma —— 注释

1、 Python 中的单行注释以 # 开头

#这是一个单行注释
print('Hello , Chianr')

2、 Python 中的多行注释以 3个''' /"""开头结尾

'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
print('Hello , Chianr')
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
print('Hello , Chianr')

3、 Python 中利用 函数.__doc__可输出函数中的注释

def fun():
'''这是函数中的注释'''
pass
print(fun.__doc__)

输出结果:

这是函数中的注释

3

Member Typeid —— 成员运算符

Python 中支持成员运算符,分别为 in / not in

运算符 描述
in 如果指定序列中找到值,则返回 True,否则False
not in 如果指定序列中没有找到值,则返回 True,否则False



In:

a=666
b=5
list=[1,2,3,4,5]
print(a in list)

输出结果:

False

not in:

a=666
b=5
list=[1,2,3,4,5]
print(a not in list)

输出结果:

True

4

Identity Typeid / Comparision Operator ——身份 / 比较运算符

1. is 和 == 的区别

Python 中支持多种运算符

其中 is / ==

其中 is not / != 比较难以分别

运算符 描述
is 判断两个标识符,是否引用自一个对象
is not 判断两个标识符,是否引用自不同对象
== 判断两者的值是否相等
!= 判断两者的值是否不相等

区别在于一个比较的是引用对象,另一个是比较二者的值



栗子:

a=666
b=666
print("a-ID:",id(a))
print("b-ID:",id(b)) if a==b:
print("a等于b")
else:
print("a不等于b") if a is b:
print("两者引用一个对象")
else:
print("不是")

输出结果:

a-ID: 1809336357040
b-ID: 1809336357040
a等于b
两者引用一个对象

2. Python 中变量以内容为基准

注意: 这里就会又引入一个知识点

由 1 中输出结果,可以看出

当两个变量 a 和 b 都赋值 5 时,二者的 id 相同

这是由于 Python 是以内容为基准的

无论你变量起什么名字, a、b、c、d、e、f、g

只要内容是数字 666 ,那么变量的 id 就一定是相同

注意: 如果类型是 列表、元组、字典等其他类型,a 和 b 赋值相同

那么 id 就不相同了,但值依旧是相同的

栗子:

a=[1,2,3]
b=[1,2,3]
print("a-ID:",id(a))
print("b-ID:",id(b)) if a==b:
print("a等于b")
else:
print("a不等于b") if a is b:
print("两者引用一个对象")
else:
print("不是")

输出结果:

a-ID: 1863951999560
b-ID: 1863951999624
a等于b
不是

可以看出 a 和 b 的 id 在此时,并不一致


5

Binary System —— 二进制 / 八进制 / 十进制

Python 中二进制并非直接赋值就行

需要通过 0b 开头,然后写上二进制数,才可以完成赋值

进制开头 描述
0b 二进制 ( Binary )
0o 八进制 ( Octonary)
0x 十六进制 ( Hexadecimal )

同样输出,也需要按照格式来书写

bin(数字) 可以输出 2 进制

oct(数字) 可以输出 8 进制

hex(数字) 可以输出 16 进制



In:

a = 0b1010011010  # 二进制的赋值,需要0b开头
b = 666 # 直接赋值666给b
print(a) # 直接输出a的值:0b1010011010 == 666
print(bin(b)) # 直接输出b的2:b的二进制 == 0b1010011010
print(oct(b)) # 直接输出b的8:b的八进制 == 0o1232
print(hex(b)) # 直接输出b的16:b的十六进制 == 0x29a

输出结果:

666          #直接输出a的二进制 对应的数值
0b1010011010 #输出b的二进制
0o1232 #输出b的八进制
0x29a #输出b的十六进制

支持

May Be —— 搞开发,总有一天要做的事!

拥有自己的服务器,无需再找攻略!

Chinar 提供一站式教程,闭眼式创建!

为新手节省宝贵时间,避免采坑!

先点击领取 —— 阿里全产品优惠券 (享受最低优惠)



1 —— 云服务器超全购买流程 (新手必备!)



2 —— 阿里ECS云服务器自定义配置 - 购买教程(新手必备!)



3—— Windows 服务器配置、运行、建站一条龙 !



4 —— Linux 服务器配置、运行、建站一条龙 !




" role="presentation">

技术交流群:806091680 ! Chinar 欢迎你的加入


END

本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究


对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com


对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址

Python语法教程总结规范的更多相关文章

  1. Python语法教程-基础语法01

    目录 1. Python应用 2. 在Linux中写python 3. Python基础语法 1. 注释 2. 变量定义及类型 3. 格式化输出 4. 用户输入 5. 运算符 6.数据转换 7. 判断 ...

  2. [Python]基础教程(3)、Python基础语法

    Python 标识符 在 Python 里,标识符由字母.数字.下划线组成. 在 Python 中,所有标识符可以包括英文.数字以及下划线(_),但不能以数字开头. Python 中的标识符是区分大小 ...

  3. 老鸟的Python入门教程

    转自老鸟的Python入门教程 重要说明 这不是给编程新手准备的教程,如果您入行编程不久,或者还没有使用过1到2门编程语言,请移步!这是有一定编程经验的人准备的.最好是熟知Java或C,懂得命令行,S ...

  4. 老鸟的Python新手教程

    重要说明 这不是给编程新手准备的教程,假设您入行编程不久,或者还没有使用过1到2门编程语言,请移步!这是有一定编程经验的人准备的.最好是熟知Java或C,懂得命令行,Shell等.总之,这是面向老鸟的 ...

  5. 很多Python新手教程

    重要提示 这不是一个教程新手程序员准备,你担任很快编程,或者没有使用1至2程序设计语言,请移步!这是一些编程经验准备.它最出名Java或C,理解命令行,Shell等待.简而言之,面向老鸟的,让老鸟高速 ...

  6. python快速教程-vamei

    2016年10月26日 12:00:53 今天开始着手python的学习,希望能高效快速的学完! Python基础(上)... 7 实验简介... 7 一.实验说明... 8 1. 环境登录... 8 ...

  7. Python 简明教程 --- 17,Python 模块与包

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 正确的判断来源于经验,然而经验来源于错误的判断. -- Fred Brooks 目录 我们已经知道函 ...

  8. Python 简明教程 --- 19,Python 类与对象

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 那些能用计算机迅速解决的问题,就别用手做了. -- Tom Duff 目录 上一节 我们介绍了Pyt ...

  9. Python快速教程 尾声

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 写了将近两年的Python快速教程,终于大概成形.这一系列文章,包括Python基 ...

随机推荐

  1. IP白名单的实现(PHP)

    有些项目可能会用到一个IP地址的白名单黑名单之类的验证. 比如,只有IP地址在白名单中,才可以访问该系统. 那么此时,白名单的维护,一般是一个文件,里边是一些IP地址(每行一个IP),当然也有的可能是 ...

  2. 解决使用eclipse创建maven web项目时报Could not resolve archetype的问题

    前两天重装了系统,今天想写一个项目的时候出现了点问题. 在使用eclipse创建maven web项目时,点Finish后报了Could not resolve archetype的问题. Could ...

  3. HBase scan setBatch和setCaching的区别

    HBase的查询实现只提供两种方式: 1.按指定RowKey获取唯一一条记录,get方法(org.apache.hadoop.hbase.client.Get) 2.按指定的条件获取一批记录,scan ...

  4. FastJson中JSONObject用法及常用方法总结

    本文为博主原创,未经允许不得转载: 最近一直有用到解析各种数据,主要是用FastJson进行数据解析,其中一个重要的类为JSONObject,今天有时间,所以进行总结一下: JSONobject是Fa ...

  5. Webpack + vue 搭建

    前言: 为何使用webpack? 为何相对于gulp&grunt更有优势 WebPack(前往官网)可以看做是模块打包机:直接分析项目结构,找到JavaScript模块以及其它的一些浏览器不能 ...

  6. zookeeper之 zkServer.sh命令、zkCli.sh命令、四字命令

    一.zkServer.sh 1.查看 zkServer.sh 帮助信息[root@bigdata05 bin]# ./zkServer.sh helpZooKeeper JMX enabled by ...

  7. Less、Sass和SCSS

    (一)区别: Less(可在客户端和服务端运行)是一种动态样式语言,对css赋予了动态语言的特性,如:变量.继承.运算.函数. SCSS为Sass的升级版本,兼容Sass功能,又新增功能.SCSS 需 ...

  8. 用docker-compose部署postgres+ postgis

    20190411更新.之前写的太啰嗦,也不删了,重新来.小坑还是有的 psql 命令行客户端 因为postgres用docker镜像安装,所以host不需要安装pg,只需要安装客户端 sudo apt ...

  9. Netflix分享构建Microservices的经验

    Netflix分享构建Microservices的经验 http://t.cn/Rwjgutw 新词:Microservices.我觉得就是service oriented architecture的 ...

  10. Caffarelli 关于自由边界正则性的论文C1

    Caffarelli 关于自由边界正则性的论文 接下来主要想叙述一下Caffarelli的C1文章中的一些想法,这是最近这几天看的文献. 对于从自由边界的Lipschitz正则性到$C^{1,\alp ...