前言
学习Python已有两年,试着对知识点做出一些简单的总结。可能还会有下一期。
注释
为什么要使用注释
注释知在程序中没有任何用处,既不会干扰代码的运行也不会将内容进行打印。那我们为什么要学习注释呢?接下来我给大家讲一个故事(内容摘自百度)
在写程序中。一个程序员写了100行代码,做了个登录功能。
另一个程序员写了200行代码,做了个购物车功能。
…
日积月累,代码成千上万行。
问题来了,有个用户用了ie6.0版本的浏览器。跟程序不兼容,无法登陆。
但是写了登录功能的程序员已经离职了,手机号也换了,联系不上。
只能一行一行读代码。
于是乎,道本来一个10分钟就能解决的问题愣是拖了一个星期。
新来的程序员被老板骂的狗血临头,苦不言堪。
于是此程序员发誓,我写代码一定要加上注释。
由此可见平时书写代码时,标注注释是多么重要啊!
通过用自己熟悉的语言,在程序中对某些代码进行标注说明,能够大大增强程序的可读性
注释的几种格式
单行注释
以#开头,#右边的所有东西当做说明,而不是真正要执行的程序,起辅助说明作用
# 单行注释
多行注释
"""
多行注释
"""
或者
'''
多行注释
'''
变量
变量的定义
变量:一个储存数据的容器
变量的类型
输入
以python3为准,input()函数可以在运行框中输入内容`
input("请输入你想要的东西")
输出
print("打印内容")
pprint("打印内容")
补充说明
print()和pprint()都是python的打印模块,功能基本一样。
唯一的区别就是pprint()模块打印出来的数据结构更加完整,每行为一个数据结构,更加方便阅读打印输出结果。特别是对于特别长的数据打印,
print()输出结果都在一行,不方便查看
pprint()采用分行打印输出,所以对于数据结构比较复杂、数据长度较长的数据,适合采用pprint()打印方式。当然,一般情况多数采用print()。
1.输出格式化
age = 10
print("我今年%d岁" % age)
age += 1
print("我今年%d岁" % age)
age += 1
print("我今年%d岁" % age)
...
在程序中,看到了%这样的操作符,这就是Python中格式化输出。
2.常用的格式符号
格式符号 转换
%c - 字符
%s - 字符串
%d - 有符号十进制整数
%u - 无符号十进制整数
%o - 八进制整数
%x - 十六进制整数(小写字母0x)
%X - 十六进制整数(大写字母0X)
%f - 浮点数
%e - 科学计数法(小写’e’)
%E - 科学计数法(大写“E”)
%g - %f和%e 的简写
%G - %f和%E的简写
如果你记不住的话,我们可以使用format方法
相对基本格式化输出采用‘%’的方法,format()功能更强大,该函数把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%’
print('{} {}'.format('hello','world')) # 不带字段
3.换行输出
print("1234567890-------") # 会在一行显示
print("1234567890 -------") # 一行显示1234567890,另外一行显示-------
标识符和关键字
标识符的定义
变量和函数的名字都可以称为标识符
标识符的规则
1.标识符由字母、下划线和数字组成,且数字不能开头
2.python中的标识符是区分大小写的
# 下列变量都符合规定吗?
from#12
my_Boolean
my-Boolean
Obj2
2ndObj
myInt
test1
Mike2jack
My_tExt
_test
test!32
haha(da)tt
int
jack_rose
jack&rose
GUI
G.U.I
命名规则
1.键名之意
不能随意取名,要根据内容来命名。
2.驼峰命名法
小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName
还有一种命名法是用下划线“_”来连接所有的单词,比如send_buf,
3.关键字
python一些具有特殊功能的标识符,这就是所谓的关键字
关键字,是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符
运算符
1.算术运算符
下面以a=10 ,b=20为例进行计算
运算符 描述 实例
+ 加 两个对象相加 a + b 输出结果 30
- 减 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 乘 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ 除 b / a 输出结果 2
// 取整除 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
% 取余 返回除法的余数 b % a 输出结果 0
** 指数 a**b 为10的20次方, 输出结果 100000000000000000000
注意:混合运算时,优先级顺序为: ** 高于 * / % // 高于 + - ,为了避免歧义,建议使用 () 来处理运算符优先级。
并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。
>>> 10 + 5.5 * 2
21.0
>>> 10 + (5.5 * 2)
21.0
2.赋值运算符
运算符 描述 实例
= 赋值运算符 把 = 号右边的结果 赋给 左边的变量,如 num = 1 + 2 * 3,结果num的值为7
# 单个变量赋值
>>> num = 10
>>> num
10
# 多个变量赋值
>>> num1, num2, f1, str1 = 100, 200, 3.14, "hello"
>>> num1郑州哪家医院做人流好 http://rlmobile.zyfuke.com/
100
>>> num2
200
>>> f1
3.14
>>> str1
"hello"
3.复合赋值运算符
运算符 描述 实例
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
数值类型
1. 布尔型
布尔型其实是整型的子类型,布尔型数据只有两个取值:True和False,分别对应整型的1和0。
每一个Python对象都天生具有布尔值(True或False),进而可用于布尔测试(如用在if、while中)。
以下对象的布尔值都是False:
# 1. Python对象的布尔值
>>> bool(None)
False
>>> bool(False), bool(0), bool(0L), bool(0.0), bool(0.0+0.0j)
(False, False, False, False, False)
>>> bool(''), bool([]), bool(()), bool({})
(False, False, False, False)
# 2. 数值运算中,布尔值True和False分别对应整型的1和0
>>> int(True), int(2 < 1)
(1, 0)
>>> False + 100
100
>>> True + 100
101
2. 整型
整型等价于C中的有符号长整型(long),与系统的最大整型一致(如32位机器上的整型是32位,64位机器上的整型是64位),可以表示的范围有限。整型字面值的表示方法有3种:十进制(常用)、二进制(以“0b”开头)、八进制(以数字“0”开头)和十六进制(以“0x”或“0X”开头)。
>>> a = 0b10100
>>> type(a)
int
>>> a
20
>>> bin(20), oct(20), hex(20)
('0b10100', '024', '0x14')
3. 浮点型
浮点型类似于C中的双精度浮点型(double)。浮点型字面值可以用十进制或科学计数法表示,在科学计数法中,e或E代表10,+(可以省略)或 - 表示指数的正负。
>>> type(1)
int
>>> type(1.0)
float
>>> 1 + 1.0
2.0
>>> a = 1e-2
>>> a
0.01
>>> type(a)
float
>>> pi = 3.1415926
>>> round(pi)
3.0
>>> round(pi, 4)
3.1416