目录
Python基础
标识符
- 中文也可以用作标识符
coding=utf-8
告诉python解释器代码中有中文等亚洲文字,避免无法解释文件的问题。
关键字
- 只有 True, False, None 三个关键字首字母是大写
print()函数
sep参数
sep缺省
print("Bob is a","scientist") # 不明确sep参数时,默认以空格作为分隔符
# 输出:
# Bob is a scientist
给sep传参
print("键盘","屏幕","显卡",sep=" | ")
# 输出:
# 键盘 | 屏幕 | 显卡
end参数
# end默认值是回车
# end="***",输出语句末尾附加上***标志输出结束
返回目录
链式赋值
链式赋值语句可以同时给多个变量赋值
a=b=c=10
print(a)
print(b)
print(c)
# 输出:
# 10
# 10
# 10
模块
模块:介绍
一个模块就是一个文件,模块是保存代码的最小单位,在模块中声明变量、函数、属性、类。
导入模块
方法一
# m1.py
import m2
print(m2.x)
# m2.py
x=20.0
方法二
# m1.py
from m2 import x as x_of_m2
x=999 # m1的x
print(x_of_m2)
# m2.py
x=20.0
数据类型
在python中,所有数据类型都是类,每个数据值都是类的实例。
6种内置数据类型 | 数字 |
字符串 | |
列表 | |
元组 | |
集合 | |
字典 |
其中,列表、元组、集合、字典被称为容器。
值得一提的是,数字类型可以继续细分为4种更具体的类型。
数字类型 | 整数类型 |
浮点类型 | |
布尔类型 | |
复数类型 |
返回目录
进制表示
# python整数类型可以表示很大的整数
——————————————————————
| 进制 | 前缀 |
| 二进制 | 0b或0B |
| 八进制 | 0o或0O |
| 十六进制 | 0x或0X |
——————————————————————
返回目录
科学计数法
a = 1.56e-2
print(a)
print(type(a))
# 输出:
# 0.0156
# <class 'float'>
返回目录
复数类型
a = 2+2j
b = 1+2j
print(a+b)
print(type(a+b))
# 输出:
# (3+4j)
# <class 'complex'>
返回目录
布尔类型
布尔类型介绍
bool是int的子类。它只有两个值:True 或 False
另外,python的数据类型转换很灵活。任何类型的数据都可以通过 bool() 来转换为bool类型的数据。
布尔:示例
print(type(bool(0)))
print(bool(0))# 整数0被转换为False
#-------------------------------
print(bool(1))# 非零整数被转换为True
print(bool(2))
#-------------------------------
print(bool(''))# 空字符串被转换为False
print(bool(' '))# 非空字符串被转换为True
#-------------------------------
print(bool([]))# 空列表被转换为False
print(bool({}))# 空字典被转换为False
# 输出:
# <class 'bool'>
# False
# True
# True
# False
# True
# False
# False
返回目录
数字类型的相互转换
分为隐式转换、显示转换
隐式转换
操作数1 | 操作数2 | 转换后的类型 |
布尔 | 整数 | 整数 |
布尔 或 整数 | 浮点数 | 浮点数 |
a=True+1
print(a)
#----------------
a=True+1.0
print(a)
#----------------
a=3+1.0
print(a)
# 输出:
# 2
# 2.0
# 4.0
显式转换
三个函数int()、float()、bool()
print(int(0.6))
#----------------------------------
print(int(False))
print(int(True))
#----------------------------------
print(float(5))
#----------------------------------
print(float(True))
# 输出:
# 0
# 0
# 1
# 5.0
# 1.0
返回目录
运算符
运算符的分类
算术运算符 | 比较运算符 | 逻辑运算符 | 位运算符 | 赋值运算符 |
返回目录
算术运算符
运算符 | 名称 | 例子 | 说明 |
+ | 加 | a + b | 求a与b的和 |
- | 减 | a - b | 求a与b的差 |
* | 乘 | a * b | 求a与b的积 |
/ | 除 | a / b | 求a除以b的商 |
% | 取余 | a % b | 求a除以b的余数 |
** | 幂 | a ** b | 求a的b次方幂 |
// | 地板除法 | a // b | 求小于a与b的商的最大整数 |
print(3/2)
print(3//2)
print(3**2)
# 输出:
# 1.5
# 1
# 9
返回目录
比较运算符
用于比较两个表达式的大小,返回值为 bool 类型,其值返回 True 或 False 。
a = 1
b = 2
print(type(a<b))
print(a<b)
print(a<(-b))
print(1.0!=1)#整数可以与浮点数进行比较
# 输出:
# <class 'bool'>
# True
# False
# False
print("w">"W")
print("b">"az")
print("world"=="world")
print([1,0,2]>[])
# print(['a']>[1]) 发生异常,因为列表元素不是同类型
print([1,99,999]<[2])
# 输出:
# True
# True
# True
# True
# True
返回目录
逻辑运算符
运算符 | 名称 | 举例 | 说明 |
not | 逻辑非 | not a | 真假颠倒 |
and | 逻辑与 | a and b | 积 |
or | 逻辑或 | a or b | 和 |
a=1
b=2
if(a==1 and b==2):
print("a = 1 且 b = 2")
# 输出:
# a = 1 且 b = 2
返回目录
位运算符
运算符 | 名称 | 举例 | 说明 |
~ | 位反 | ~x | 将x的值按位取反 |
& | 位与 | x & y | 将x与y按位进行位与运算 |
| | 位或 | x | y | 将x与y按位进行位或运算 |
^ | 位异或 | x ^ y | 将x与y按位进行位异或运算 |
>> | 右移 | x >> a | 将x右移a位,高位采用符号位补位 |
<< | 左移 | x << a | 将x左移a位,低位用0补齐 |
返回目录
示例
现举例来阐释上述表格的位运算符。
a = 0b10110010,十进制数为 178
b = 0b01011110,十进制数为 94
返回目录
取反 ~
\(\~a=(a+1)×(-1)\)
位与 &
两位皆1才1,否则为0
a
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 |
b
0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 |
a & b = 18
0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 |
返回目录
位或 |
两位皆0才0,否则为1
换言之,只要有1则1
a
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 |
b
0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 |
a | b = 254
1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
返回目录
位异或 ^
只有两位相反时,这一位才为1,否则为0
a
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 |
b
0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 |
a ^ b = 236
1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
返回目录
左移右移
位移的计算
\[x<<a = x × 2^a \]\[x>>a = x // 2^a \]
位移详解
右移
a = 178 (下表并非a的原码,左端的1并不是符号位)
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 |
( a >> 2 ) = 44
0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
- 解释:a向右移2位,左边补上符号位就行(a=178>0,右移补0,右端多出的部分直接舍弃)
左移
a = 178
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 |
( a << 2 ) = 712
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 |
- 注意:在本例中,左端多出的部分不舍弃(跟机器字长有关)
返回目录
if
a = int(input("请输入你体内所剩的查克拉量:"))
if(a<=150):
print("手里剑")
elif(a>150 and a<=300):
print("影分身之术")
elif(a>300 and a<=799):
print("螺旋丸")
else:
print("风遁·螺旋手里剑")
# # 输入:400
# # 输出:螺旋丸
返回目录
while
/* else内的语句块只在while正常结束的情况下执行,异常、return、break中断while循环都不算作循环的正常结束 */
i = 0
while i*i < 10:
i += 1
print(str(i)+' * '+str(i)+' =',i*i)
else:
print('While Over!')
# 输出:
# 1 * 1 = 1
# 2 * 2 = 4
# 3 * 3 = 9
# 4 * 4 = 16
# While Over!
返回目录
for
for通用
for item in 可迭代对象(字符串 列表 元组 集合 字典):
循环体语句组
else:
else语句组
for示例
for item in 'hello world':
print(item)
else:
print('---for循环正常结束---')
# 输出:
# h
# e
# l
# l
# o
# w
# o
# r
# l
# d
# ---for循环正常结束---
list=[1,2,3,4,5,6]
for item in list:
print(item)
else:
print('---for循环正常结束---')
# 输出:
# 1
# 2
# 3
# 4
# 5
# 6
# ---for循环正常结束---
返回目录
range
for item in range(10):
print(item)
else:
print('---for循环正常结束---')
# 输出:
# 0
# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9
# ---for循环正常结束---
// 从上例可以看出:range左开右闭,range(10)代表着[0,10)
返回目录
break
for item in range(10):
if item == 5 :
break
print(item)
else:
print('---for循环正常结束---')
# 输出:
# 0
# 1
# 2
# 3
# 4
continue
for item in range(10):
if item == 5 :
continue
print(item)
else:
print('---for循环正常结束---')
# 输出:
# 0
# 1
# 2
# 3
# 4
# 6
# 7
# 8
# 9
# ---for循环正常结束---
返回目录
标签:返回,运算符,False,速通,无伤,Python,---,print,目录 From: https://www.cnblogs.com/shinnyblue/p/17323409.html