Python
1.Print()函数*
-
Print()函数可以输出数字、字符串、含有运算符的表达式
-
Print()函数可以输出到显示器、文件上
-
在文件上输出:
#注意点:1.使用的盘符要确实存在2.使用file=
fp=open('D:/testPython/test.txt','a+');
print('helloworld',file=fp)
fp.close();
其中a+当文件中不存在就创建,如果存在就在文件内容后继续追加
换行输出和不换行输出:
print('one','two','three')
- 转义字符:
反斜杠:\
单引号:\’
双引号:\”
换行:\n
回车:\r
水平制表符:\t
退格:\b
原字符:希望字符串中的转义字符不起作用,在转义字符前面加上r或R
#注意最后一个字符不能是反斜线
print(r'hello\nworld\')
2.二进制与字符编码
- ord()和chr()函数
- 标识符和保留字
保留字:不能使用的字
import keyword
print(keyword.kwlist)
在控制台输出的就是保留字,均不可使用
标识符:需要自己定义名字的
规则:字母、数字、下划线开头
不能以数字开头
严格区分大小写
不能与保留字相同
2. 变量的定义和使用
name='苏菲亚'
print(name)
print('标识',id(name))
print('类型',type(name))
print('值',name)
3.常见的数据类型:
- int:
二进制以0b开头;八进制以0o开头;十六进制以0x开头
默认是十进制
name='苏菲亚'
print('八进制',0o176)#八进制 126
2. float
浮点数存储的不精确性
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210110182508377.png)![在这里插入图片描述](https://img-blog.csdnimg.cn/20210110182523508.png)
控制小数点的位数用
3. bool:
布尔类型可以转换成整数计算
True->1
False->0
4. 字符串:
不可变的字符序列
可以使用单引号双引号三引号
单引号和双引号定义的字符串必须在一行
三引号定义的字符串可以分布在连续的多行
数据类型转换:
将str类型转为int类型时,我们的字符串必须是整数字符串,float的也不行,如果是非数字串是不允许转换的
当将其他类型转换成float类型时
注释:
三种类型:
单行注释:以#开头
多行注释:
中文编码声明注释:#coding:utf-8
input函数:
input()函数的基本使用:
present = input(‘输入的内容’)
input函数输入的是str类型
运算符:
-
算术运算符:
标准算数运算符:+、-、*、/(除不尽后面带小数)、//(整除)
取余运算符:%
幂运算符:**
print(2**2)表示2的2次方
-
赋值运算符:
执行顺序从右到左
链式赋值:
支持参数赋值:
a=20
a+=30
则输出a的值为50
支持系列解包赋值:
a,b,c=20,30,40(要求等号左右个数要相同)
- 比较运算符:
1> 有 >,<,>=,<=,!=
2> ==(对象value的比较)
3> is, is not(对象Id的比较)
对于普通类型数据,如果两个变量值相同,那么地址相同,但对于数组,即使值相同,但是它们的地址不相同
- 布尔运算符:
and-- or – not --in – not in
.
- 位运算符:
&:左右均为1时结果为0,比如4&8,结果为0
|:同时为0时结果为0
左移运算符<<:左移一位相当于乘以2
右移运算符>>:右移一位相当于除以2
6.运算符的优先级:
()>算数运算符>位运算>比较运算符>布尔运算>赋值运算
程序的组织结构:
1.顺序结构:
2.对象的布尔值:
Python一切皆对象,所有对象都有一个布尔值
以下对象的布尔值为False
False
数值0
None
空字符串
空列表
空元组
空字典
空集合
除了上面几种情况,其他对象的布尔值均为true
3.选择结构:
单分支结构:
双分支结构:
多分支结构:
嵌套if:
条件表达式:
4.pass语句:
语句什么都不做,只是一个占位符,用在语法上需要语句的地方
内置 rang()函数的使用:
1.用于生成一个整数序列:
2.创建range对象的三种方式:
range(stop)—>创建一个[0,stop)之间的整数序列,步长为1
range(start,stop)--->创建一个[start,stop)之间的整数序列,步长为1
range(start,stop,step)--->创建一个[start,stop)之间的整数序列,步长为step
3.返回值是一个迭代器对象
4.判断指定的整数 在序列中是否存在 in,not in
5.range()函数的优点:
不管range()对象的整数序列有多长,所有range对象占用的内存空间都是相同的,因为仅仅需要存储start,stop,step,只有当用到range对象时,才会去计算序列中的相关元素
while循环和for-in循环:
1.while是判断N+1次,条件为True执行N次
2.for-in循环:
in表达从字符串,序列等中依次取值,又成为遍历
例子:要求输出100~999之间的水仙花数
举例:
153=333+555+111
流程控制语句:
1.break:
用于结束循环结构,通常与分支结构If一起使用
2.continue:
用于结束当前循环,进入下一次循环,通常与分支结构中的If一起使用
else语句:
与else语句搭配使用的三种情况:
if:
else:
while :
else:(没有碰到break执行else)
for :
else:(没有碰到break执行else)
嵌套循环:
嵌套循环中的break和continue:
列表:
列表可以存储N多个元素,程序可以方便地对这些数据进行整体操作
列表相当于其它语言中的数组
- 列表的创建:
第一种方式:
需要使用[],元素之间需要用,分隔
第二种方式:
使用内置函数list()
- 列表的特点:
列表元素按顺序有序排序
0 1 2 3 4 5 6 7
-8 -7 -6 -5 -4 -3 -2 -1
索引映射唯一一个数据
列表可以存储重复数据
任意数据类型混存
根据需要动态分配和回收内存
- 获取指定元素的索引:
获取列表中指定元素的索引:
1》加入列表中存在N个相同的元素,只返回相同元素中的第一个元素索引
2》如果查询的元素在列表中不存在,则会抛出ValueError
3》还可以在指定的start和stop之间进行查找
获取列表中的单个元素:
1》正向索引从0到N-1
2》逆向索引从-N到-1
3》指定索引不存在,抛出IndexError
- 列表元素的查询操作:
获取列表中的多个元素:
步长为正数:
步长为负数:
判断指定元素在列表中是否存在:
元素 in 列表名
元素 not in 列表名
列表元素的遍历:
for i in 列表名:
- 列表元素的增加操作:
1》append(),在列表的末尾添加一个元素
2》extend(),在列表的末尾至少添加一个元素
3》insert(),在列表的任意位置添加一个元素
4》切片,在列表的任意位置添加至少一个元素
- 列表元素的删除操作:
- 列表元素的修改操作:
8. 列表的排序操作:
1》调用sort()方法:
列出所有元素,并按默认从小到大的顺序进行排列,可以指定reverse=True,进行降序排序,是对原列表进行处理,不生成新对象
2》调用内置函数sorted(),可以指定reverse=True,进行降序排序,原列表不发生改变,会产生一个新的对象
- 列表生成式:
字典:
Python内置的数据结构之一,与列表一样是一个可变序列
以键值对的方式存储数据,字典是一个无序的序列
scores = { ‘张三’:100,‘李四’:98,‘王五’:45}
列表:单身狗,有序的序列
字典:小情侣,无序的序列
- 字典的创建:
最常用的方式:
使用花括号,会报异常
scores={‘张三’:100,’李四’:98,‘王五’:45}
使用内置函数dict(),dict()不会报异常
dict( name=‘jack’, age=20 )
- 字典元素的获取:
- 字典元素的增删改:
key的判断:
in:指定的Key在字典中返回True----->‘张三’ in scores
not in:指定的Key在字典中不存在返回True----->‘张三’ not in scores
字典元素的删除:
del scores['张三‘]
字典元素的新增:
scores[‘jack’]=90
元素的修改:
-
字典元素的遍历:
for i in scores:
print(i)
-
字典的特点:
1》字典中的所有元素都是一个key-value对,key不允许重复,value可以重复
2》字典中的元素是无序的
3》字典中的Key必须是不可变对象
4》字典也可以根据需要动态地伸缩
5》字典会浪费较大的内存,是一种使用空间交换时间的数据结构,查询速度快
- 字典生成式:
在进行打包的过程中,会以含有元素少的为基准进行打包
元组:
元组和列表很相似,但是元组用()创建
- 元组的创建方式:
1》直接小括号
t = (‘Python’, ‘hello’,90)
2》使用内置函数tuple()
t=tuple( (‘Python’, ‘hello’,90) )
3》只包含一个元组的元素需要使用逗号和小括号
t=(10, )