Python知识点
来源:互联网 发布:c语言强制转换 编辑:程序博客网 时间:2024/05/22 14:30
Python的数据类型:
布尔,字符,数字,元组—>他们的值不能发生变化,所以不能进行++或--的操作,若发生了改变,是地址变了
列表,集合,字典,类 —>值可以发生变化。
举例说明:
1.数字
a=5a=a+1 b=5print(id(a))print(id(b))
2.1字符vstr1='hello'print(id(vstr1))vstr1=vstr1*2print(id(vstr1))2.2字符(三个双引号或者三个单引号,都会保留文档的格式)
vstr1="""pythonklagl dljfld dslkdaj"""print(vstr1)
2.3字符串(按下标范围进行输出)
[] : 下标从零开始,表示第一个字母;(ps:空格也算一个字符)
[0:4] : 下标从零开始到下标为4(不包含下标4)结束 。 与 [:5] 表示的意思一样
[6:] : 表示从下标为6的字符开始,一直到最后
[len(strl)-3] : len(strl)减几,就从整个字符串的倒数第几个字符开始,一直到最后
[-3:] : 与[len(strl)-3]表示的意思一样
[-4:-2] : 表示从整个字符串倒数第4个字符,到倒数第2个字符(不包含)结束
str1='hello world's=str1[0]#[0]、[0:4]、[6:]、[:5]、[len(str1)-3:]、[-3:]、[-4:-2]
print(s)也可以使用for循环:
for s in str1[-5:]: print(s)
3.1元组ar=(1,'a',3,4)for i in ar: print(ar)3.2元组(后面加上‘ *3’ ,表示ar元组的个数等于元素个数乘以3,切一个元组中的元素每个元素出现三次)ar=(1,'a',3,4)*3for i in ar: print(ar)3.3元组([]截取字符串)
ar=(1,2,3,4,5,6,7,8)ar=ar[2:5]print(ar)
4.列表(推到算法)la1=[1,2,3]la2=[4,5,6]#rs=[x*y for x in la1 for y in la2]rs=[[x,y,x*y] for x in la1 for y in la2]print(rs)5. 两个**为次幂,两个//为取整数,一个/为无论是否能够整除都是小数a=5a=a**3b=5b=b//2b=b/2print(a)print(b)6.divmod() : 表示第一个数除以第二个数,得到的值是一个元组,元组的第一个值是商,第二个值是余数c=divmod(7,2)print(c)
7.集合与迭代器合用:无序不可重复, 与元组和列表不同,元组和列表可以储存重复数据并记录其顺序比较1:
#元组定义yz=(2,2,2,3,4)#获取迭代器ii=iter(yz)print (next(ii)) //next()输出下一个比较2:#列表定义ar=[2,2,2,3,4]#获取迭代器ari=iter(ar)for i in ari: print(i)比较3:#集合定义set1={2,2,2,3,4}#set1.pop() #默认删除最后一个# #获取迭代器it=iter(set1)print(next(it))print(next(it))print(next(it)) #最后输出结果为 2 3 4
8.1定义字典可以使用[] 以键找值,也可以使用get()方法 一键找值,get()方法还可以添加默认值
dl={'cn':'中国','en':'英国','us':'美国'}print('us --> ',dl['us'])print('cn --> ',dl.get('cn'))print('no fr --> ',dl.get('fr','字典中没有,你是不是要取法国'))8.2删除字典的两种方法,,且,删除前后字典地址不会发生变化
dl={'cn':'中国','en':'英国','us':'美国'}print(id(dl))#打印地址#两种删除方法del dl['us']dl.pop('en')print(len(dl))print(id(dl))
9.字典的综合案例要求:统计控制台输入的字符串中每一个字符出现的次数。
第一种方法:按key 进行排序
zf=input('输入字符串\n')tongji={}for s in zf: if s in tongji: tongji[s]=tongji[s]+1 #abc bd abc.cac 第2个b已经在tongji字典中出现过一次,所以第2个b要加1 else: tongji[s]=1 #第1次出现的d不存在于tongji字典中,所以d出现1次for key in sorted(tongji): #排序sorted() print(key,'共出现',tongji[key],'次')
第二种方法:按value值进行排序,使用lambda进行遍历key=lambda item:item[i] 其中item是iter()迭代器的返回值 ,key是sorted()函数中的关键字
如:it=iter(tongji)
print(next(it)) next()的返回值为item
items()函数以列表 返回可遍历的(键,值)元组数据
print (tongji.items())
zf=input('输入字符串\n')tongji={}for s in zf: if s in tongji: tongji[s]=tongji[s]+1 else: tongji[s]=1#iter();生成键值为元组的一组数for value in sorted(tongji.items(),key=lambda item : item[1]): print(value[0],'共出现',value[1],'次')
第三种方法:按value值进行排序,使用lambda进行遍历,reverse的默认值为False,正序排列zf=input('输入字符串\n')tongji={}for s in zf: if s in tongji: tongji[s]=tongji[s]+1 else: tongji[s]=1for key in sorted(tongji.items(),key=lambda item : item[1],reverse=True): print(key[0],'共出现',key[1],'次')
第四种方法:items()方法,,返回 列表里面套元组模式,如:[(),(),()...]zf=input('输入字符串\n')tongji={}for s in zf: if s in tongji: tongji[s]=tongji[s]+1 else: tongji[s]=1for key1 in sorted(tongji.items(),key=lambda x:x[0],reverse=True):#lambda后面的 x 代表列表里面每一个元组, 冒号后面的x[0]表示元组中key,如果是x[1]位value print(key1[0],'共出现',key1[1],'次')
python中动态传参:def sum(*args): sum=0 for n in args: sum+=n return sumprint(sum(1,2,3,4))def sum(*args): sum=''; for n in args: sum=sum+str(n) return sumprint(sum(1,2,'hi',4))
#end='<>'或 end=' '都表示不换行,end='\n'表示换行例如:
print('你好hello python3.6',end='<>')print('你好hello python3.6',end='\n')print('你好hello python3.6',end=' ')
阅读全文
0 0
- python知识点
- python 知识点
- Python知识点
- python知识点
- Python 知识点
- Python知识点
- Python知识点
- python知识点
- python 知识点
- Python知识点
- python--知识点
- Python 知识点
- Python知识点
- Python知识点
- Python多线程知识点
- python 的一些知识点
- python知识点讨论
- python知识点汇总
- java并发编程实战-线程安全性
- 线程的取消和关闭
- QT窗口
- Linux中硬链接和软链接的区别
- Linux C++ 连接MySQL
- Python知识点
- 【怎样写代码】向现有类型“添加”方法 -- 扩展方法(一):扩展方法概述
- linux 文件编程
- Shiro 入门
- leetcode628. Maximum Product of Three Numbers
- Java中的类型转换
- 美团 CodeM 资格赛 Round A 合并回文子串
- 概率论的一些基本问题
- Linux学习基础篇(九)