Unicode编码
Python采用双字节Unicode编码。(统一编码制,包含亚洲文字编码)
**Python 中标识符的命名规则如下:**
1.区分大小写: Myname 与myname 是两个不同的标识符。
2.首字符可以是下画线(_)或字母,但不能是数字。
3.除首字符外的其他字符必须是下画线、字母和数字。
4.关键字不能作为标识符。**标识符可以是中文**
5.不要使用Python 的内置函数作为自己的标识符。
java和C语言将变量声明为一种数据类型后,该变量就不能接收其他类型的数据了。
Python却可以,Python 默认所有变量都可以接收不同类型的数据
标识符 关键字 变量
模块可以声明变量、函数 、属性和类
---导入模块语句---
import m2 #导入m2模块的所有代码元素
print(m2.x)
from m2 import x #from< 模块名>import< 代码元素>:的x变量,在访问时不需要加前缀“m2.”
from< 模块名>import < 代 码 元 素 >as < 代码元素别名>
from m2 import x as x2
#类似,在当前m1模块的代码元素 (x 变量)与要导入的m2模块的代码元素
#(x变量)名称有冲突时,可以给要导入的代码元素 (m2 中的x) 一 个别名x2
>># coding=utf-8
type(变量) #返回class变量类型 type()函数返回数据的类型
===Python的数据类型
在Python中有6种主要的内置数据类型:
(列表、元组、集合和字典)可以容纳多项数据,在本书中把它们统称为容器类型的数据。
Python中的数字类型有4种:整数类型、浮点类型、复数类型和布尔类型。
需要注意的是,布尔类型也是数字类型,它事实上是整数类型的一种。
int float a+bj (typ()类型为complex类型) bool是int的子类,它只有两个值:True和False
#整数类型
1 >>>28 十进制表示方式
2 28
3 >>> type(28) type()函数返回数据的类型
4 <class 'int' >
5 >>>0b11100 二进制表示方式,以阿拉伯数字0与英文字母B (或b) 作为前缀
6 28
7 >>>0034 八进制表示方式,以阿拉伯数字0与英文字母0(或o) 作为前缀
8 28
9 >>>0x1c 十六进制表示方式,以阿拉伯数字0与英文字母X (或x) 作为前缀
10 28
#bool布尔类型 True为1,False为0
1 >>>bool(0) #整数0被转换为False
2 False
3 >>>bool(2) #其他非零整数例如2被转换为True
4 True
5 >>>bool(1)
6 True
7 >>>bool('')
8 False #(空字符串)被转换为False
9 >>>bool("sadfkljn")
10 True #其他非空字符串会被转换为True 空格号是非空
11 >>>bool([])
12 False #(空列表)被转换为False
13 >>>bool({})
14 False #(空字典)被转换为False
#隐式数据的转换
操作数1的类型 操作数2的类型 转换后的类型
布尔 整数 整数
布尔、整数 浮点 浮点
bool() 函数可以将None 、0 、0.0 、a+bj (复数)、''(空字符串 )、 [](空列表)、 () (空元组)和{}(空字典)转换为False
第四章 运算符
4.1算数运算符
+, - , * , /(和差积商) a%b 取余数 a**b a的b次幂 a//b 小于a与b商的最大整数
4.2比较(关系)运算符
==等于 !=不等于 >大于 <小于 >= 大于等于 <=小于等于
>>比较运算符可用于任意类型的数据,但参与比较的两种类型的数据要相互兼容。
>>即能进行隐式转换。例如:整数、浮点和布尔这三种类型是相互兼容的。
1>>>a='Hello'
2 >>>b='Hello'
3 >>>a==b←
4 True
5 >>>a='world'
6 >>>a>b<
7 True
#比较字符串的大小,即逐一比较字符 Unicode编码的大小,如果两个字符串的
#第1个字符不能比较出大小,则比较 两个字符串的第2个字符,直到比较有了结果才结束比较
4.3逻辑运算符
运算符 名称 例子
not 逻辑非 not a
and 逻辑与 a and b
Or 逻辑或 a or b
Python 也采用了“短路”设计。“短路”指“逻辑与”和“逻辑或”在计算过程中只要结果确定,
则不再计算后面的表达式,从而提高效率,有点像电路短路
4.4位运算符
位运算是以二进位 (bit)为单位进行运算的,操作数和结果都是整数类型的数据。
运算符 名称 例子 说明
~ 位反 ~X 将x的值按位取反
& 位与 x&y 将x与y按位进行位与运算
| 位或 x|y 将x与y按位进行位或运算
^ 位异或 x^y 将x与y按位进行位异或运算
>> 右移 x>>a 将x右移a位,高位采用符号位补位
<< 左移 x<<a 将x左移a位,低位用0补位
按位取反运算中涉及原码、补码、反码运算,比较麻烦。我归纳总结了一个公式:~ a=(a+1)×-1,
如果a 为十进制数178,则~a 为十进制数-179;如果a 为十进制数-20,则~a 为十进制数19。
怎么样,这个公式好用吧!
4.5赋值运算符
运算符 名称 例子 说明
+= 加赋值 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 //=b 等价于a=a//b 小于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
第5章 程序流程控制
5.1分支语句
Python 的设计理念是简单、刚好够用,所以在Python 中没有switch 语句,
多分支功能是通过 if-elif-else实现的
if
if 条件:
语句组
score =int(input("请输入一个0~100整数:"))
# input()函数从控制台获得用户输入的字符串 ,int()函数将字符串转换为整数
if - else
if - elif - else
5.2循环语句
Python支持两种循环语句: while和for。
while 循环条件:
循环体语句组
[else:
语句组] #可以省略括号里
在Python中只有一种for 语句,即for-in语句,它可以遍历任意可迭代对象中的元素
可迭代对象包括字符串、列表、元组、集合和字典等。
for 变量 in 可迭代对象:
→ 循环体语句组
[else:
语句组] #中括号部分可以省略
5.3 跳转语句
跳转语句能够改变程序的执行顺序,包括break、continue和retum。
break 和continue 用于循环体中,而retum 用于函数中。
break 语句用于强行退出循环体,不再执行循环体中剩余的语句。
continue语句用于结束本次循环,跳过循环体中尚未执行的语句, 接着进行终止条件的判断,
以决定是否继续循环。