文章目录
- 1.python运算符
- 1.1 python算数运算
- 1.2python比较运算符
- 1.3 Python赋值运算符
- 1.4 python逻辑运算符
- 1.5 python成员运算符
- 1.6python身份运算符
- 1.7python运算符优先级
 
- 2.python数据类型
- 2.1Python 数字类型转换
- 2.2 Python 数字运算
- 2.3 python数学函数
- 2.4 python随机数函数
 
- 3.python字符串
- 3.1Python 访问字符串中的值
- 3.2Python 字符串更新
- 3.3Python 转义字符
- 3.4Python 字符串运算符
- 3.5Python 字符串格式化
 
- 4.Python input() 函数
1.python运算符
1.1 python算数运算
| 运算符 | 描述 | 
|---|---|
| + | 两个数字相加 | 
| - | 减 - 得到负数或是一个数减去另一个数 | 
| * | 乘 - 两个数相乘或是返回一个被重复若干次的字符串 | 
| / | 除 - x 除以 y | 
| % | 取模 - 返回除法的余数 | 
| ** | 幂 - 返回x的y次幂 | 
实例
a = 3  
b = 5  
print("a + b =",a + b)  
print("a - b =",a - b)  
print("a * b =",a * b)  
print("a / b =",a / b)  
print("a ** b =",a ** b)
1.2python比较运算符
| 运算符 | 描述 | 
|---|---|
| == | 等于 - 比较对象是否相等 | 
| != | 不等于 - 比较两个对象是否不相等 | 
| > | 大于 - 返回x是否大于y | 
| < | 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 | 
| >= | 大于等于 - 返回x是否大于等于y。 | 
| <= | 小于等于 - 返回x是否小于等于y。 | 
| 实例 | 
a = 1  
b = 2  
if(a==b):  print("true")  
else:  print("false")  if(a!=b):  print("true")  
else :  print("false")  if(a>b):  print("true")  
else :  print("false")  if(a<b):  print("true")  
else :  print("false")  if(a>=b):  print("true")  
else :  print("false")  if(a<=b):  print("true")  
else :  print("false")
1.3 Python赋值运算符
| 运算符 | 描述 | 实例 | 
|---|---|---|
| = | 简单的赋值运算符 | c = a + b 将 a + b 的运算结果赋值为 c | 
| += | 加法赋值运算符 | 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 | 
| 实例 | 
a = 1  
b = 2  
print(a+b)  
a+=b  
print(a)  
a-=b  
print(a)  
a*=b  
print(a)  
a/=b  
print(a)
1.4 python逻辑运算符
| 运算符 | 描述 | 
|---|---|
| and | 布尔"与" - 如果 x 为 False,x and y 返回 x 的值,否则返回 y 的计算值。 | 
| or | 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 | 
| not | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | 
| 实例 | 
a = 1  
b = 2  
c = 0  
if(a and b):  print("a and b are true")  
if(a or b):  print("a or b are true")  
if(not c):  print("not c are true")
1.5 python成员运算符
| 运算符 | 描述 | 实例 | 
|---|---|---|
| in | 如果在指定的序列中找到值返回 True,否则返回 False。 | x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 | 
| not in | 如果在指定的序列中没有找到值返回 True,否则返回 False。 | x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 | 
| 实例 | 
a = [1,2,3]  
b = 1  
c = 0  
if(b in a):  print("true")  
if(c in a):  print("true")
1.6python身份运算符
| 运算符 | 描述 | 实例 | 
|---|---|---|
| is | is 是判断两个标识符是不是引用自一个对象 | x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False | 
| is not | is not 是判断两个标识符是不是引用自不同对象 | x is not y , 类似 id(x) != id(y)。如果引用的不是同一个对象则返回结果 True,否则返回 False。 | 
| 实例 | 
#!/usr/bin/python3a = 20
b = 20if ( a is b ):print ("1 - a 和 b 有相同的标识")
else:print ("1 - a 和 b 没有相同的标识")if ( id(a) == id(b) ):print ("2 - a 和 b 有相同的标识")
else:print ("2 - a 和 b 没有相同的标识")# 修改变量 b 的值
b = 30
if ( a is b ):print ("3 - a 和 b 有相同的标识")
else:print ("3 - a 和 b 没有相同的标识")if ( a is not b ):print ("4 - a 和 b 没有相同的标识")
else:print ("4 - a 和 b 有相同的标识")
1.7python运算符优先级
| 运算符 | 描述 | 
|---|---|
| (expressions...),[expressions...],{key: value...},{expressions...} | 圆括号的表达式 | 
| x[index],x[index:index],x(arguments...),x.attribute | 读取,切片,调用,属性引用 | 
| await x | await 表达式 | 
| ** | 乘方(指数) | 
| +x,-x,~x | 正,负,按位非 NOT | 
| *,@,/,//,% | 乘,矩阵乘,除,整除,取余 | 
| +,- | 加和减 | 
| <<,>> | 移位 | 
| & | 按位与 AND | 
| ^ | 按位异或 XOR | 
| | | 按位或 OR | 
| `in`,`not in`, `is`,`is not`, `<`, `<=`, `>`, `>=`, `!=`, `==` | 比较运算,包括成员检测和标识号检测 | 
| `not x` | 逻辑非 NOT | 
| `and` | 逻辑与 AND | 
| `or` | 逻辑或 OR | 
| `if` -- `else` | 条件表达式 | 
| `lambda` | lambda 表达式 | 
| := | 赋值表达式 | 
2.python数据类型
Python 数字数据类型用于存储数值。
 数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。
 以下实例在变量赋值时 Number 对象将被创建:
num1 = 1
num2 = 2
您也可以使用del语句删除一些数字对象的引用。
 del语句的语法是:
del var1[,var2[,var3[....,varN]]]
Python 支持三种不同的数值类型:
- 整型(int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。布尔(bool)是整型的子类型。
- 浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
- 复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
>>> number = 0xA0F # 十六进制
>>> number
2575>>> number=0o37 # 八进制
>>> number
31| int | float | complex | 
|---|---|---|
| 10 | 0.0 | 3.14j | 
| 100 | 15.20 | 45.j | 
| -786 | -21.9 | 9.322e-36j | 
| 080 | 32.3e+18 | .876j | 
| -0490 | -90. | -.6545+0J | 
| -0x260 | -32.54e100 | 3e+26J | 
| 0x69 | 70.2E-12 | 4.53e-7j | 
2.1Python 数字类型转换
有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
- int(x) 将x转换为一个整数。
- float(x) 将x转换到一个浮点数。
- complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。
- complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
a = 1.2  
a = int(a)  
print(a)
2.2 Python 数字运算
Python 解释器可以作为一个简单的计算器,您可以在解释器里输入一个表达式,它将输出表达式的值。
 表达式的语法很直白: +, -, * 和 /, 和其它语言(如Pascal或C)里一样。例如:
>>> 17 / 3  # 整数除法返回浮点型
5.666666666666667
>>>
>>> 17 // 3  # 整数除法返回向下取整后的结果
5
>>> 17 % 3  # %操作符返回除法的余数
2
>>> 5 * 3 + 2 
17
2.3 python数学函数
| 函数 | 返回值 ( 描述 ) | 
|---|---|
| abs(x) | 返回数字的绝对值,如abs(-10) 返回 10 | 
| ceil(x) | 返回数字的上入整数,如math.ceil(4.1) 返回 5 | 
| cmp(x, y) | 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。 Python 3 已废弃,使用 (x>y)-(x<y) 替换。 | 
| exp(x) | 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045 | 
| fabs(x) | 以浮点数形式返回数字的绝对值,如math.fabs(-10) 返回10.0 | 
| floor(x) | 返回数字的下舍整数,如math.floor(4.9)返回 4 | 
| log(x) | 如math.log(math.e)返回1.0,math.log(100,10)返回2.0 | 
| log10(x) | 返回以10为基数的x的对数,如math.log10(100)返回 2.0 | 
| max(x1, x2,…) | 返回给定参数的最大值,参数可以为序列。 | 
| min(x1, x2,…) | 返回给定参数的最小值,参数可以为序列。 | 
| modf(x) | 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。 | 
| pow(x, y) | x**y 运算后的值。 | 
| round(x [,n]) | 返回浮点数 x 的四舍五入值,如给出 n 值,则代表舍入到小数点后的位数。 其实准确的说是保留值将保留到离上一位更近的一端。 | 
| sqrt(x) | 返回数字x的平方根。 | 
2.4 python随机数函数
| 函数 | 描述 | 
|---|---|
| choice(seq) | 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。 | 
| randrange ([start,] stop [,step]) | 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1 | 
| random() | 随机生成下一个实数,它在[0,1)范围内。 | 
| seed([x]) | 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。 | 
| shuffle(lst) | 将序列的所有元素随机排序 | 
| uniform(x, y) | 随机生成下一个实数,它在[x,y]范围内。 | 
3.python字符串
字符串是 Python 中最常用的数据类型。我们可以使用引号( ’ 或 " )来创建字符串。
 创建字符串很简单,只要为变量分配一个值即可。例如:
var1 = 'hello world'
3.1Python 访问字符串中的值
Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。
 Python 访问子字符串,可以使用方括号 [] 来截取字符串,字符串的截取的语法格式如下:
变量[头下标:尾下标]
例如
var1 = 'hello world'  
print(var1[1:3])
3.2Python 字符串更新
你可以截取字符串的一部分并与其他字段拼接,如下实例:
var1 = "hello world"  
print(var1[:6] + "shichengfu")
3.3Python 转义字符
| 转义字符 | 描述 | 实例 | 
|---|---|---|
| (在行尾时) | 续行符 | >>> print(“line1 <br>… line2 <br>… line3”) line1 line2 line3 >>> | 
| \ | 反斜杠符号 | >>> print(“\”) | | 
| ’ | 单引号 | >>> print(‘’‘) ’ | 
| " | 双引号 | >>> print(“”“) ” | 
| \a | 响铃 | >>> print(“\a”) 执行后电脑有响声。 | 
| \b | 退格(Backspace) | >>> print(“Hello \b World!”) Hello World! | 
| \000 | 空 | >>> print(“\000”) >>> | 
| \n | 换行 | >>> print(“\n”) >>> | 
| \v | 纵向制表符 | >>> print(“Hello \v World!”) Hello World! >>> | 
| \t | 横向制表符 | >>> print(“Hello \t World!”) Hello World! >>> | 
| \r | 回车,将 \r 后面的内容移到字符串开头,并逐一替换开头部分的字符,直至将 \r 后面的内容完全替换完成。 | >>> print(“Hello\rWorld!”) World! >>> print(‘google runoob taobao\r123456’) 123456 runoob taobao | 
| \f | 换页 | >>> print(“Hello \f World!”) Hello World! >>> | 
| \yyy | 八进制数,y 代表 0~7 的字符,例如:\012 代表换行。 | >>> print(“\110\145\154\154\157\40\127\157\162\154\144\41”) Hello World! | 
| \xyy | 十六进制数,以 \x 开头,y 代表的字符,例如:\x0a 代表换行 | >>> print(“\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21”) Hello World! | 
| \other | 其它的字符以普通格式输出 | |
| 实例 | 
print('\'Hello, world!\'')  # 输出:'Hello, world!'print("Hello, world!\nHow are you?")  # 输出:Hello, world!#       How are you?print("Hello, world!\tHow are you?")  # 输出:Hello, world!    How are you?print("Hello,\b world!")  # 输出:Hello world!print("Hello,\f world!")  # 输出:# Hello,#  world!print("A 对应的 ASCII 值为:", ord('A'))  # 输出:A 对应的 ASCII 值为: 65print("\x41 为 A 的 ASCII 代码")  # 输出:A 为 A 的 ASCII 代码decimal_number = 42
binary_number = bin(decimal_number)  # 十进制转换为二进制
print('转换为二进制:', binary_number)  # 转换为二进制: 0b101010octal_number = oct(decimal_number)  # 十进制转换为八进制
print('转换为八进制:', octal_number)  # 转换为八进制: 0o52hexadecimal_number = hex(decimal_number)  # 十进制转换为十六进制
print('转换为十六进制:', hexadecimal_number) # 转换为十六进制: 0x2a
3.4Python 字符串运算符
| 操作符 | 描述 | 实例 | 
|---|---|---|
| + | 字符串连接 | a + b 输出结果: HelloPython | 
| * | 重复输出字符串 | a*2 输出结果:HelloHello | 
| [] | 通过索引获取字符串中字符 | a[1] 输出结果 e | 
| [ : ] | 截取字符串中的一部分,遵循左闭右开原则,str[0:2] 是不包含第 3 个字符的。 | a[1:4] 输出结果 ell | 
| in | 成员运算符 - 如果字符串中包含给定的字符返回 True | ‘H’ in a 输出结果 True | 
| not in | 成员运算符 - 如果字符串中不包含给定的字符返回 True | ‘M’ not in a 输出结果 True | 
| r/R | 原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。 | print( r’\n’ ) print( R’\n’ ) | 
| 实例 | 
#!/usr/bin/python3a = "Hello"
b = "Python"print("a + b 输出结果:", a + b)
print("a * 2 输出结果:", a * 2)
print("a[1] 输出结果:", a[1])
print("a[1:4] 输出结果:", a[1:4])if( "H" in a) :print("H 在变量 a 中")
else :print("H 不在变量 a 中")if( "M" not in a) :print("M 不在变量 a 中")
else :print("M 在变量 a 中")print (r'\n')
print (R'\n')
3.5Python 字符串格式化
Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
 在 Pyhon 中,字符串格式化使用与 C 中 sprintf 函数一样的语法。
| 符 号 | 描述 | 
|---|---|
| %c | 格式化字符及其ASCII码 | 
| %s | 格式化字符串 | 
| %d | 格式化整数 | 
| %u | 格式化无符号整型 | 
| %o | 格式化无符号八进制数 | 
| %x | 格式化无符号十六进制数 | 
| %X | 格式化无符号十六进制数(大写) | 
| %f | 格式化浮点数字,可指定小数点后的精度 | 
| %e | 用科学计数法格式化浮点数 | 
| %E | 作用同%e,用科学计数法格式化浮点数 | 
| %g | %f和%e的简写 | 
| %G | %f 和 %E 的简写 | 
| %p | 用十六进制数格式化变量的地址 | 
4.Python input() 函数
Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。
 Python2.x 中 input() 相等于 eval(raw_input(prompt)) ,用来获取控制台的输入。
 raw_input() 将所有输入作为字符串看待,返回字符串类型。而 input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float )。
函数语法
input([prompt])
实例
>>>a = input("input:")
input:123                  # 输入整数
>>> type(a)
<type 'int'>               # 整型
>>> a = input("input:")    
input:"runoob"           # 正确,字符串表达式
>>> type(a)
<type 'str'>             # 字符串
>>> a = input("input:")
input:runoob               # 报错,不是表达式
Traceback (most recent call last):File "<stdin>", line 1, in <module>File "<string>", line 1, in <module>
NameError: name 'runoob' is not defined
<type 'str'>