Python——变量和基本类型概述
注释:
注释的作用:
增加程序的可读性
作为调试用
提高团队的合作效率
注释的分类
1、单行注释
以井号(#)开头,右边的所有内容当做说明
2、多行注释
以三单引号(’’’注释内容’’’)将注释包含起来对
标识符:
什么是标识符?
标识符是自己定义的,如变量名 、函数名等
标识符命名规则:
1、只能包含字母、数字和下划线。变量名可以以字母或者下划线开头。但是不能以数字开头。
2、不能包含空格,但可以使用下划线来分隔其中的单词。
3、不能使用Python中的关键字作为变量名
4、建议使用驼峰命名法,驼峰式命名分为大驼峰(UserName)。和小驼峰(userName)。
常用关键字:
import keyword
keyword kwlist
|
and |
lambda |
except |
while |
del |
return |
import |
|
or |
class |
try |
if |
assert |
yield |
as |
|
in |
def |
finally |
else |
True |
continue |
from |
|
is |
global |
raise |
elif |
False |
pass |
|
|
not |
nonlocal |
with |
for |
None |
break |
|
数据类型:
Number(int(整数)、float(浮点型)、complex(复数)、bool(布尔))
String(字符串)
Tuple(元祖)
List(列表)
Sets(集合)
Dictionary(字典)
Number:
int:Python可以处理任意大小的整数,当然包括负整数。
float:浮点数也就是小数(称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的)。
complex:一个实数和一个虚数的组合构成一个复数。
bool:bool值是特殊的整型,取值范围只有两个值,也就是True和False。
String(字符串):
字符串就是一系列任意文本。Python中的字符串用单引号或者双引号括起来,同时可以使用反斜杠(\)转义特殊字符。
操作字符串:
1、截取字符串语法:变量[开始下标:结束下标]
2、加号(+)是字符串的连接符
3、星号(*)表示复制当前字符串
Tuple(元祖):
元祖写在小括号内,元素之间用逗号隔开,如tuple = ('hello','world',123)
注意:
tuple的元素不可改变,但是可以包含可变的对象,比如list
构造包含0个或者1个元素的元祖有特殊语法规则:
tuple1 = () #空元祖
tuple2 = (1,) # 一个元素,需要在元素后面添加逗号(,)
List(列表):
列表写在[ ]内,元素之间用逗号隔开,如list = ['hello','world',123]
注意:
1、List写在方括号之间,元素用逗号隔开
2、和字符串一样,List可以被索引和切片
3、List可以使用加号(+)操作进行拼接
4、List中的元素是可以被改变的
Set(集合)
Set是一个无序不重复元素集,如set1 = (['hello','world',123])
注意:
1、x = set('hellohello') 输出x的结果为{'e', 'o', 'h', 'l'}
2、与列表和元组不同,集合是无序的,也无法通过数字进行索引。此外,集合中的元素不能重复
Dictionary(字典):
字典是一种映射类型,使用{ }表示,它是一个无序的键(key)值(value)对集合,例如 dic1 = {"name":"Angus","age":28}
注意:
1、字典是一种映射类型,它的元素是键值对
2、键(key)必须使用不可变类型(String、Number、Tuple),在同一个字典中,键必须是唯一的
运算符
算术运算符
这里首先令 a = 20 , b = 3
|
运算符 |
描述 |
示例 |
|
+ |
加,两个对象相加 |
a + b 输出结果23 |
|
- |
减, 得到负数或是一个数减去另一个数 |
a + b 输出结果是17 |
|
* |
乘,两个数相乘或是返回一个被重复若干次的字符 |
a*b输出结果是60 |
|
/ |
除 |
a/b 输出结果为6.666666666666667 |
|
% |
取模(取余),返回除法的余数 |
a%b输出结果为2 |
|
** |
幂,返回x的y次幂 |
a**b为20的3次方 8000 |
|
// |
取整除,返回商的整数部分 |
a//b输出结果为 6 |
赋值运算符
|
运算符 |
描述 |
示例 |
|
= |
赋值运算符,把等号右边的结果给左边的变量 |
num=1+2*3结果num的值为7 |
|
+= |
加法赋值运算符 |
a += b 等效于a=a+b |
|
-= |
减法赋值运算符 |
a -= b等效于a = a-b |
|
*= |
乘法赋值运算符 |
a *= b等效于a = a*b |
|
/= |
除法赋值运算符 |
a /= b等效于a = a/b |
|
%= |
取余赋值运算符 |
a %= b等效于a=a%b |
|
**= |
幂赋值运算符 |
a ** = b等效于a=a**b |
|
//= |
取整除赋值运算符 |
a//=等效于a=a//b |
比较运算符
|
运算符 |
描述 |
示例 |
|
== |
等于,比较对象是否相等 |
(a == b) 返回 false。 |
|
!= |
不等于,比较两个对象是否不相等 |
(a != b) 返回 true。 |
|
> |
大于,返回a是否小于b。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 |
(a>b)返回false。 |
|
< |
小于,返回a是否小于b。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 |
(a<b)返回true |
|
>= |
大于等于,返回a是否大于等于b。 |
(a>=b)返回false |
|
<= |
小于等于,返回a是否小于等于b。 |
(a<=b)返回true |
逻辑运算符
|
运算符 |
描述 |
|
and |
布尔“与” |
|
or |
布尔“或” |
|
not |
布尔“非” |
位运算符
|
运算符 |
描述 |
示例 |
|
& |
按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 |
(a & b) 输出结果 0 ,二进制解释: 0000 0000 |
|
| |
按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1 |
(a | b) 输出结果 23 ,二进制解释: 0001 0111 |
|
^ |
|
|
|
~ |
按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 。 |
(~a ) 输出结果 -21 ,二进制解释: 1110 1011, |
|
<< |
左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。。 |
a << 2 输出结果 80 ,二进制解释: 0101 0000 |
|
>> |
右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数 |
a >> 2 输出结果 5 ,二进制解释: 0000 0101 |
编码
ASCII编码
字符串是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte)。所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。由于计算机是美国人发明的,因此,最早只有127个字母被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母A的编码是65,小写字母z的编码是122。
Unicode
Unicode标准也在不断发展,但最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。现代操作系统和大多数编程语言都直接支持Unicode。 现在,捋一捋ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。新的问题又出现了:如果统一成Unicode编码,乱码问题从此消失了。但是,如果你写的文本基本上全部是英文的话,用Unicode编码比ASCII编码需要多一倍的存储空间,在存储和传输上就十分不划算。所以,又出现了把Unicode编码转化为“可变长编码”的UTF-8编码。UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。

浙公网安备 33010602011771号