介绍
-
吉多·范罗苏姆
-
编译解释型、静态动态语言、强弱类型定义语言
-
python是动态解释性的强类型定义语言
1.1 input函数
作用:从外部获取值
用法:括号中可以提供提示信息
返回值为字符串类型
1.2 python中常见的数据类型
-
数字(number)
- 整形(int)
- 浮点型(float)
- 布尔型(bool)
- 复数(complex)
-
字符串(string)
-
列表(list)
-
元组(tuple)
-
字典(dict)
-
集合(set)
1.3 变量和常量
变量
-
概念:
-
程序可操作的存储区的名称
-
程序运行时存储区中能够改变的数据
每个变量都有自己的特定的数据类型
-
-
作用
-
将数据存储到内存
-
变量的定义
- 命名:
- 必须以字母、下划线、数字组合
- 不能以数字开头
- 不可以是python中的关键字
- 命名:
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
测试类型 type()
内存地址 id()
常量
不变的量
π,3.1415926
通常用大写,如
PI=3.1415926
1.4 数字
-
整型(int)
- 32bit
- 64bit
以前python区分短整型和长整型,目前,无这些区分。
-
浮点型
- 带有小数点的数字
-
布尔型
- true
- false
-
复数
- 实部(cpx.real)
- 虚部(cpx.imag)
- 共轭复数(cpx.conjugate)
abs(x) | 绝对值
pow(x,y) | xyx^yxy
round(x,[n]) | 返回四舍五入的只,如果给出n,表明四舍五入后的小数点的位数
math.exp(x) | 返回e的x次幂
math. fabs (x) | 返回绝对值,类型为浮点数
math. ceil (x) | 返回数字的‘上入整数’
math.floor(x) | 返回数字的下舍整数
math.log(x,[y]) | 单参数,默认以e为底;双参数,以[y]为底
math. modf (x) | 返回浮点数的小数部分和整数部分
math.sqrt(x) | 平方根
max(x1,x2,...)max(x_1,x_2,...)max(x1,x2,...) 返回最大值
min(x1,x2,...)min(x_1,x_2,...)min(x1,x2,...)返回最小值
1.5 表达式与运算符
-
表达式-
- 有变量,常量和运算符组成的式子,成为表达式
-
运算符
- 算数运算符
- 比较运算符
- 逻辑运算符
- 赋值运算符
- 成员运算符
- 身份运算符
- 位运算符
python算术运算符
运算符 | 描述 | 实例 |
---|---|---|
+ | 相加/拼接 | a + b |
- | 相减/求差集 | a - b |
* | 相乘/重复 | a * b |
/ | 相除 | a / b |
** | 幂运算 | a ** b |
% | 取模(余数) | a %b |
// | 取整除(商) | a // b |
divmod(x,y) #返回:x除以y得到的商和余数(以元组形式) >>>print(23 % 4) 3 >>>print(23 // 4) 5 >>>divmod(23,4) (5,3)
常见的位运算符
运算符 | 描述 |
---|---|
& | 按位"与",同为1才为1,否则为0 |
| | 按位“或”,有1就为1 |
^ | 按位“异或”,不同为1 |
~ | 按位“取反” |
<< | 左移运算符 |
>> | 右移运算符 |
a=15
b=31
a---->0000 1111
b---->0001 1111
a&b 00001111
a | b 0001 1111
python成员运算符
运算符 | 描述 |
---|---|
in | 如果存在于指定序列中,返回True;否则False |
not in | 如果不存在于指定序列中,返回True;否则False |
python身份运算符
用于比较两个对象的存储单元
id()
运算符 | 描述 |
---|---|
is | 判断两个标识符是不是引用自同一个对象 |
not is | 判断两个标识符是不是引用自同一个对象 |
python逻辑运算符
and
or
not
1.6 数据类型的强制转换
强转类型 | 描述 |
---|---|
int(x,[base]) | 将x强制转化为整形。如果x是字符串,需要定制base基数 |
float(x) | 将x转化为浮点型 |
str(x) | 强转为字符串 |
repr() | 将对象转换为表达式字符串 |
chr(x) | 将整数转化为字符 |
ord(x) | 将字符转化为数值 |
bin(x) | 转化为二进制 |
oct(x) | 转化为八进制 |
hex(x) | 转化为十六进制 |
1.7 随机函数
导入这个模块
import random
random模块的常用功能:
(1)random. randrom()
-
用来生成一个0-1的随机浮点数[0,1)
import random # print(dir(random)) for i in range(100): a = random.random() print(a,end="")
(2) random.uniform(a,b)
-
用来生成指定范围内的浮点数[a,b)
import random # print (dir(random)) for i in range(100): a=random.uniform(6,8) print(a,end="")
(3) random.randint (a , b)
-
用来生成指定范围内的整数[a,b)
-
import random # print (dir(random)) for i in range(100): a=random.randint(6,10) print(a,end="")
(4) random.randrange([start],stop,[step])
- 从指定范围内,按指定基数递增或者递减的集合中,随机获取一个整数
random.randrange(1,16,2)
在1,3,5,7,9,11,13,15中随机取
(5)random.choice(sequence)
-
从序列中随机获取一个元素,sequence可以为列表,字符串或者元组
-
import random # print (dir(random)) for i in range(100): a=random.choice(range(1,16,2) print(a,end="")
(6)random.shuffle(x,[,random])
- 用来将一个列表的元素打乱,即将列表的元素随机排列.
(7)random.sample(sequence,k)
-
用来从指定序列中随机获取指定长度的片段并随机排列.但不会修改原来序列
mport random li=["C langguage","C++","java","vb","c#","python"] for i in range(6): print(random.sample(li,4))