python学习随笔(一)

python笔记

含有运算符的表达式

print(3+1)

将数据输出到文件中,注意:所指定的盘符存在;使用file = fp;

fp = open(‘D:/text.txt’,‘a+’) #文件不存在就创建,存在就继续追加
print(‘hello world’,file=fp)
fp.close()

不进行换行输出

print(‘hello’,‘world’,‘python’)

转义字符

\n换行;\t制表符;\r回到一行的开始;\b退一个格

输出为hello\nworld,在字符串前加r,R转义字符不起作用

最后一个字符不能是反斜杠

print(r’hello\nworld’)

数据类型:int,float,bool,str;

input 函数,输入的内容是字符串形式

in1 = input(‘xxxxx’)

//整除运算(一正一负向下取整) %取余运算(一正一负,被除数减去除数*商) **次方运算

赋值运算符 =

顺序:右 -》 左;链式赋值 a = b = c = 1315;支持参数赋值;支持系列解包赋值(a,b,c=20,30,40)

print(a is b) #true 说明a,b的id标识相等

print(a is not b) #判断a和b的地址不相等

布尔运算符: and or not in not in

pass语句,什么都不做,只是一个占位符,用在语法上需要语句的地方。

range()函数,三种创建方式

range(stop):创建一个(0,stop)之间的步长为1的整数序列

range(start,stop):创建一个(start,stop)之间的步长为1的整数序列

range(start,stop,step):创建一个(start,stop)之间的步长为step的整数序列

‘’’
for-in 循环
in表达从(字符串,序列)中依次取值,又称为遍历
for-in 遍历的对象必须是可迭代对象

语法结构
    for 自定义的变量 in 可迭代对象:
        循环体

循环体内不需要访问自定义变量,可以将自定义变量替代为下划线

‘’’
for item in ‘python’
print(item) #将字符串’python’依次打印输出

for _ in range(5)
print(‘xxxx’) #输出5次

#二重循环中break和continue用于控制本层循环

‘’’
列表:相当于其他语言的数组,下标从0开始,最后一个元素的下标可以是-1
创建方式
1,lst = [‘hello’,‘world’,98]
2,lst2 = list([‘hello’,‘world’,98])
列表的特点
列表元素按顺序有序排序
索引映射唯一格数据
列表可以存储重复数据
任意数据类型混存
根据需要动态分配和回收内存

获取列表中指定元素的索引 index()
如果列表中存在N个相同元素,只返回相同元素中的第一个元素的索引
如果查询的元素在列表中不存在,则会抛出ValueError
还可以在指定的start和stop之间进行查找
获取列表中的单个元素
正向索引0到N-1 lst[0]
逆向索引-N到-1 lst[-N]
指定索引不存在,抛出indexError
获取列表的多个元素(切片,原列表元素的拷贝)
语法格式
列表名[start:stop:step] 不包含第stop个元素

判断指定元素是否在列表中存在
使用 in 或者 not in
列表元素的遍历
for 迭代变量 in 列表名:
操作
列表元素的增加
append():在列表的末尾添加一个元素
extend():在列表的末尾至少添加一个元素
insert():在列表的任意位置添加一个元素
切片:在列表的任意位置至少添加一个元素
删除操作
remove():一次删除一个元素,重复元素只删除第一个,元素不存在抛出ValueError
pop():删除一个指定索引位置上的元素,不存在抛出indexError,不指定索引,删除列表最后一个元素
切片:一次至少删除一个元素
clear():清空列表
del:删除列表
修改操作
为指定索引的元素赋一个新值
为指定的切片赋予一个新值
排序操作
1,调用sort()方法,列中索引元素默认按从小到大的顺序排序,可以指定reverse = True,进行降序
2,调用内置函数sorted(),可以指定reverse = True,进行降序,原列表不发生改变
列表生成式
语法格式
[i*i for i in range(1,10)]

‘’’

‘’’
字典

是一个可变序列;以键值对的方式存储数据,字典是一个无序的序列
查字典是先根据部首或拼音查找相应的页码,python中是根据key查找value所在位置。

字典的创建:
1,使用花括号:scores={‘aa’:100,‘bb’:98,‘cc’:45}
2,使用内置函数dict():dict{name = ‘jack’,age = 20}
字典中元素的获取
1,使用[],例:scores[‘aa’]
2,使用get()方法,例:scores.get(‘aa’)
两者的区别
[]如果字典中不存在指定的key,抛出keyerror异常
get()方法取值,如果字典中不存在指定的key,并不会抛出keyerror,而是返回none.
key的判断
in 指定的key在字典中存在返回true,例:‘aa’ in scores
not in 指定的key在字典中不存在返回true,例:‘a’ in scores
字典元素的删除:del scores[‘aa’]
字典元素的新增:scores[‘jack’]=100
获取字典视图
1,keys():获取字典中所有key
2,values():获取字典中所有value
3,items():获取字典中所有key,value对
字典的特点
字典的所有元素都是一个key-value对,key不允许重复,value可以重复
字典中元素是无序的
字典中key必须的不可变对象
字典也可以根据需要动态的伸缩
字典会浪费较大内存,是一种使用空间换时间的数据结构
字典生成式
内置函数:zip()
用于将可迭代的对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元素组成的列表
items=[‘a’,‘b’,‘c’]
prices=[88,99,66]
lst=zip(items,prices)
print(list(lst))
字典生成式:{item.upper:price for item,price in zip(items,prices)}

‘’’
‘’’
元组
不可变序列:没有增删改得操作。
创建方式:
1,t = (‘a’,‘b’,88),可以省略小括号
2,使用内置函数tuple();t = tuple((‘a’,‘b’,88))
3,只包含一个元组的元素使用逗号和小括号
‘’’
‘’’
集合:可变类型的序列,集合是没有value的字典
集合中的元素不允许重复,集合中的元素是无序的
s = {1,2,3,4,5,6}
s1 = set(range(6))
set([1,2,3,4,5]) 将列表中的元素转换为集合,并去除重复元素
set(xxxx)将其他类型转为集合
定义空集合:ss = set()
集合元素 的判断操作
●in或not in
●集合元素的新增操作;
●调用add()方法,一次添中一个元素
●调用update()方法至少添中一个元素
●集合元素的删除操作
●调用remove()方法, -次删除一个指定元素,如果指定的元素不存在抛出
KeyError
●调用discard()方法,一次删除-一个指定元素,如果指定的元素不存在不拋异中
●调用pop()方法,一次只删除一个任意元素
●调用clear()方法,清空集合
集合生成式:{i*i for i in range(1,10)}
在这里插入图片描述
字符串:是基本数据类型,是一个不可变的字符序列
1,什么叫字符串驻留机制呢?
仅保存一份相同且不可变字符串的方法,不同的值被存放在字符串的驻留池中,
Python的驻留机制对相同的字符串只保留一份拷贝,后续创建相同字符串时,
不会开辟新空间, 而是把该字符串的地址赋给新创建的变量
2,驻留机制的几种情况(交互模式)
字符串的长度为0或1时;
符合标识符的字符串;
字符串只在编译时进行驻留,而非运行时;
[-5,256]之间的整数数字
sys中的intern方法强制两个字符串指向同一个对象
pycharm对字符串进行了优化处理
在这里插入图片描述
在这里插入图片描述
转换之后会产生新的字符串对象。
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值