python(四)切片,内置函数,集合,json操作

1. 切片

切片是只取列表或字符串中一部分或全部。

定义一个list:l=[‘Monica‘,‘Josie‘,‘Shirley‘,‘Leo‘,‘Tina‘]

s=[:]   取的是整个列表元素

s=[0:2]  取得是下标为零和1的元素(不管是从前数还是从后数,切片的特点包头不包尾)

s=[:2]  取得是小标为0和1的元素,当冒号前面不写下标时,默认从第一个元素开始

s=[2:]  取得是下标为2一直到这个列表的最后一个

s=[-3:-1] 写负数是从列表的最后开始数,要把小的写在前面

s=[::2]  最后的数字就是步长,是指从第一个取,每个一个再取

切片也同样适用于字符串

2.  深拷贝和浅拷贝

l=[‘Monica‘,‘Josie‘,‘Shirley‘,‘Leo‘,‘Tina‘]

s=l  这是浅拷贝  s和l值得是内存中的同一块地址

s=l[:]  这是深拷贝,s和l的内容是一致的,但是在内存中的地址不一样

import copy    这也是深拷贝

t=copy.deepcopy(l)

PS  查看s的存在内存中的地址 id(s)

3. 非空即真,非0即真

只要不是空就是真,只要是0就是真

s=‘’ 空字符串;l=[] 空列表;d={}空字典;None

if s:

print(“走if”)

else:

print(“走else”)s为空字符串,所以会走else

4. 列表生成式:可以简化代码

result=[str(i).zfill(2) for i in range(1,20) if i <8]

第一步:先执行 for i in range(1,20)

第二步:执行 if i < 8

第三步:执行str(i).zfill(2)

5. 三元表达式

id_card=‘410881199211111141‘

sex=‘女‘   if int(id_card[-2])%2==0  ‘男‘

第一步:先执行  if int(id_card[-2])%2==0

第二步:如果第一步的结果为真  就执行sex=‘女‘

第三步:如果第一步的结果为假 就执行sex=‘男‘

6. 集合

集合的特点:无序,不重复

定义集合:s=set()

l=[1,1,2,2,3,3]

s=set(l)   把列表变成没有重复的集合

集合的方法有 add,remove

s.add()#添加元素

s.remove()删除元素

交集、并集、差集、对称差集

.intersection(集合)或 集合&集合

集合.union(集合)或 集合 | 集合

集合.different(集合)或  集合-集合

集合.symmetric(集合)或  集合 ^集合

7. json的操作

使用json需要导入import json

dump的作用是把字典转换成字符串;loads的作用是把字符串转换成字典。

定义一个字典,然后把这个字典写进文件,写进文件的只能是字符,json是字符。那就把字典变成json字符串,然后写进文件中。

第一种方法:

第一步:定义一个字典d={“A”:“B”}

第二步:打开文件,f=open(‘a.txt‘,‘a+‘,encoding=‘utf-8‘)

第三步:把字典转换成json字符串:s=json.dumps(d,ensure_ascii=False,indent=8)

第四步:把字符串写进去:f.write(s)

第五步:关闭文件 f.close()

第二种方法(只是读写文件):

第一步:定义一个字典  d={“A”:“B”}

第二步:打开文件 f=open(‘a.txt‘,‘a+‘,encoding=‘utf-8‘)

第三步:json.dump(d,f,ensure_ascii=False,indent=4)

第四步:f.close()

把json字符串读出来变成字典

第一种方法:

第一步:打开文件,f=open(‘a.txt‘,encoding=‘utf-8‘)

第二步:读文件内容:result=f.read()

第三步:把读的json字符串变成字典 dic=json.loads(result)

第四步:把独到的东西打印出来 print(dic)

第五步:关闭文件f.close()

第二种方法(只是读写文件):

第一步:定义一个字典:d={"A":“B”}

第二步:读文件内容:f=open(“a.txt”,encoding=‘utf-8‘)

第三步:result=json.load(f)

第四步:print(result)

第五步:f.close()



原文地址:https://www.cnblogs.com/dmjsd/p/11001091.html

时间: 2024-08-05 16:49:59

python(四)切片,内置函数,集合,json操作的相关文章

python之路——内置函数与匿名函数

内置函数 python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这些函数有些我们已经用过了,有些我们还没用到过,还有一些是被封印了,必须等我们学了新知识才能解开封印的.那今天我们就一起来认识一下python的内置函数.这么多函数,我们该从何学起呢? 上面就是内置函数的表,68个函数都在这儿了.这个表的顺序是按照首字母的排列顺序来的,你会发现都混乱的堆在一起.比如,oct和bin和hex都

python学习交流 - 内置函数使用方法和应用举例

内置函数 python提供了68个内置函数,在使用过程中用户不再需要定义函数来实现内置函数支持的功能.更重要的是内置函数的算法是经过python作者优化的,并且部分是使用c语言实现,通常来说使用内置函数相比于用户自己定义函数实现相同功能,在执行效率和对内存的分配和使用上是要更加理想的.所以理解和熟练运用python中的内置函数,不仅可以增强代码的可读性,同时也可以提升代码的品质.下面对内置函数的使用方法进行分类介绍,以方便归纳理解. 一.查看作用域中变量相关 global () 功能:查看全局作

python中的内置函数getattr()

在python的官方文档中:getattr()的解释如下: getattr(object, name[, default]) Return the value of the named attribute of object. name must be a string. If the string is the name of one of the object’s attributes, the result is the value of that attribute. For examp

python之枚举--内置函数-enumerate()

python之枚举 内置函数 enumearate() enumerate()是python的内置函数 enumerate在字典上是枚举.列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值 enumerate多用于在for循环中得到计数 enumerate()使用 如果对一个列表,既要遍历索引又要遍历元素时,首先可以这样写: list=["这","是","一个

Python标准库 内置函数print objects sep &#39; &#39; end &#39;\n&#39; file sys st

本函数是实现对象以字符串表示的方式格式化输出到流文件对象file里.其中所有非关键字参数都按str()方式进行转换为字符串输出,关键字参数sep是实现分隔符,比如多个参数输出时想要输出中间的分隔字符:关键字参数end是输出结束时的字符,默认是换行符\n:关键字参数file是定义流输出的文件,可以是标准的系统输出sys.stdout,也可以重定义为别的文件:参数flush是立即把内容输出到流文件,不作缓存. 例子: #print() print(1, 2, 3, sep = ',', end =

part2:Python 变量及简单类型,print 函数介绍,Python 关键字、内置函数介绍

Python是弱类型语言,关于弱类型有两个含义:(1).所有的变量无须声明即可使用,或者说对从末用过的变量赋值就是声明了该变量:(2).变量的数据类型可以随时改变,同一个变量可以进行多次赋值,可以赋数值型和字符串型值. 一. 单行注释和多行注释 注释可提高程序可读性,用于解释某行或某部分程序的作用和功能.此外注释也是调试程序的重要方式,在调试时可将不希望编译.执行的代码注释掉.注释还可以为别人或自己过一段时间后能读懂代码的目的提供帮助.合理的代码注释占源代码 1/3 左右. Python语言不能

python 关键字和内置函数

Python关键字(保留字)一览表 来自 http://c.biancheng.net/view/4188.html 保留字是 Python 语言中一些已经被赋予特定意义的单词,这就要求开发者在开发程序时,不能用这些保留字作为标识符给变量.函数.类.模板以及其他对象命名. 表 1 Python 保留字一览表 and as assert break class continue def del elif else except finally for from False global if im

python5分钟,教你使用内置函数open来操作文件

使用内置函数open来操作文件有三步:打开文件,操作文件,关闭文件. open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) file如果只写文件名,比如'file1.txt',则默认是当前路径,如果当前路径没有这个名字的文件,则报错,如果是其他目录的文件,则需要加上文件路径. mode有4种模式:'r'表示只读模式,'w'代表只写入模式(如果文

五、python函数、装饰器、内置函数、json及模块

一.递归调用 1.一个函数自己调用自己就是递归调用,最多一个函数递归调用自己999次,超过就会出错2.递归必须有一个明确的结束条件3.每次进入更深一层递归时,问题规模相比上次递归都应有所减少4.递归效率不高,少用递归 eg:def test1(): num = int(input('please enter a number:')) if num%2==0:#判断输入的数字是不是偶数 return True #如果是偶数的话,程序就退出了,返回true print('不是偶数请重新输入!') r

python学习--装饰器、生成器、内置函数、json

这周学习了装饰器和生成器,写下博客,记录一下装饰器和生成器相关的内容. 一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里面每个函数都加一个功能,用来统计每个函数的运行时间是多少,找出来运行比较慢的函数,来优化代码,就需要添加一个新的功能,来统计程序的运行时间,那这样的话,就得修改每个函数了,需要改代码,但是代码特别多,改完了公司倒闭了,这时候装饰