元组

json,pickle,collections,openpyxl模块

旧街凉风 提交于 2019-12-04 21:07:20
json,pickle,collections,openpyxl模块 json模块 ​ 它是一个序列化模块 json: 是一个‘第三方’的特殊数据格式 ​ 可以将python数据类型---------》json数据格式---------》字符串----------》文件中 其他语言要想使用python的数据: ​ 文件中---------》字符串------------》json数据格式------------》其他语言的数据类型 注意:在json中,所有的字符串都是双引号 元组比较特殊: ​ python中的元组,若将其转换成json数据,内部会将元组转换成列表 import json tup = (1, 2, 3) with open(r'user.txt', 'w', encoding='utf-8') as rf: json.dump(tup, rf, ensure_ascii=False) [1, 2, 3] ​ set是不能转换成json数据的 为什么要使用json: ​ 为了让不同的语言之间数据可以分享 如何使用: import json json.dumps: json.dumps() , f=open() -------->f.write() json_str = json.dumps(tup) print(json_str) str1 = '你是谁啊' json

Python数据类型

房东的猫 提交于 2019-12-04 21:01:43
# 列表 # #查 切片 [] print(a)#打印所有列表 print(a[1:3]) #从索引1开始到3结束,但是不包括3 print(a[1::2]) #从索引1开始到结束,步长为2,隔一个去取 print(a[1:-1]) #从索引1开始到倒数第二 print(a[1::-1]) #从索引1开始到结束,从右往左取 print(a[-2::-1]) #从右往左取,从倒数第二个开始到最左边(结束) print(a[1::-1]) #从右往左取,从索引为1开始到结束 b=a.count("ligang")#根据内容查找该元素在列表中出现的次数(计数) print(b) inde=a.index('sanpang')#根据内容找其对应的位置(索引) print(inde) conten='sanpang' in a#in的用法,判断元素是否在列表中,在就返回True,否则返回False print(conten) #添加 append insert a.append('wangyuan')#直接追加在列表最后面 a.insert(2,'liyifen')#设置索引,指定添加位置,可以添加到任意位置 print(a) a.extend(t)#扩展列表,将2个列表合并,这里将t列表融入到a列表中 print(a) #修改   a[1]='wangmei'#根据a[index

collections模块

試著忘記壹切 提交于 2019-12-04 20:39:43
collections模块 python默认八大数据: 整型 浮点型 字符串 字典 元组 列表 集合 布尔 collections模块: 提供一些python八大数据类型 “以外的数据类型” 具名元组: 具名元组 只是一个名字。 应用场景: 坐标 - from collections import namedtuple 有序字典: python中字典默认是无序 collections中提供了有序的字典 from collections import OrderedDict # 具名元组 from collections import namedtuple # 传入可迭代对象是有序的 # 应用:坐标 # 将'坐标'变成 “对象” 的名字 point = namedtuple('坐标', ['x', 'y']) # 第二个参数既可以传可迭代对象 point = namedtuple('坐标', ('x', 'y')) # 第二个参数既可以传可迭代对象 point = namedtuple('坐标', 'x y') # 第二个参数既可以传可迭代对象 # 会将 1 ---> x, 2 ---> y # 传参的个数,要与namedtuple第二个参数的个数一一对应 p = point(1, 3) # 本质上传了4个,面向对象讲解 print(p) print(type(p)) # 扑克牌:

python的数据类型-元组

大兔子大兔子 提交于 2019-12-04 20:01:40
1.元组 #作用:存多个值,对比列表来说,元组不可变(是可以当做字典的key的),主要是用来读 #定义:与列表类型比,只不过[]换成() age=(11,22,33,44,55)本质age=tuple((11,22,33,44,55)) #优先掌握的操作: #1、按索引取值(正向取+反向取):只能取 #2、切片(顾头不顾尾,步长) #3、长度 #4、成员运算in和not in #5、循环 index为找索引2.字典: #作用:存多个值,key-value存取,取值速度快 #定义:key必须是不可变类型,value可以是任意类型 info={'name':'egon','age':18,'sex':'male'} #本质info=dict({....})或 info=dict(name='egon',age=18,sex='male')或 info=dict([['name','egon'],('age',18)])或 {}.fromkeys(('name','age','sex'),None)快速创建字典,第一个参数是一个可迭代的对象 #优先掌握的操作: #1、按key存取值:可存可取 #2、长度len #3、成员运算in和not in #4、删除 pop() 必须传keys,且有返回值且返回值为value,popitem()默认弹出最后一对键值 且返回元组类型 #5、键keys(

Python语言基础06-字符串和常用数据结构

情到浓时终转凉″ 提交于 2019-12-04 18:45:06
本文收录在 Python从入门到精通系列文章系列 1. 使用字符串   第二次世界大战促使了现代电子计算机的诞生,最初计算机被应用于导弹弹道的计算,而在计算机诞生后的很多年时间里,计算机处理的信息基本上都是数值型的信息。世界上的第一台电子计算机叫ENIAC(电子数值积分计算机),诞生于美国的宾夕法尼亚大学,每秒钟能够完成约5000次浮点运算。随着时间的推移,虽然数值运算仍然是计算机日常工作中最为重要的事情之一,但是今天的计算机处理得更多的数据可能都是以文本的方式存在的,如果我们希望通过Python程序操作这些文本信息,就必须要先了解字符串类型以及与它相关的知识。   所谓字符串,就是由零个或多个字符组成的有限序列,一般记为   在Python程序中,如果我们把单个或多个字符用单引号或者双引号包围起来,就可以表示一个字符串。 s1 = 'hello, world!' s2 = "hello, world!" # 以三个双引号或单引号开头的字符串可以折行 s3 = """ hello, world! """ print(s1, s2, s3, end='') 1.1 \(反斜杠)的意义 01-转义   可以在字符串中使用 \(反斜杠)来表示转义 ,也就是说 \后面的字符不再是它原来的意义 ,例如:\n不是代表反斜杠和字符n,而是表示换行;而\t也不是代表反斜杠和字符t,而是表示制表符

Python的内置函数

狂风中的少年 提交于 2019-12-04 18:21:09
Python内置函数: 内置函数???什么是内置函数???内置函数就是Python给你提供的函数,能直接使用比如:print,input等等,他就是所谓的Python内置函数,Python版本3.7.3一共有69个每个版本的内置函数的个数都有可能不一样,因为会更新 Python内置函数如下: 详细见: https://www.processon.com/mindmap/5dcd4e34e4b03d5b5a41b042 1.作用域相关(2): locals() 返回当前作用域中的名字 globals() 返回全局作用域中的名字 2.迭代器相关(3): range() 生成数据 next() 迭代器向下执行一次,内部实际使用了__next__()方法返回迭代器的下一个项目 iter() 获取迭代器,内部实际使用的是__iter__()方法来获取迭代器 3.字符串类型代码的执行(3): eval() 执行字符串类型的代码,并返回最终结果 exec() 执行字符串类型的代码 compile() 将字符串类型的代码变异,代码对象能够通过exec语句来执行或者eval()进行求值有返回值的字符串形式的代码用eval(),没有返回值的字符串形式的代码用exec()一般很少用到compile() 4.输入和输出相关(2): input() 获取⽤用户输入的内容 print() 打印输出 5

Python——requests库的request( )方法介绍

做~自己de王妃 提交于 2019-12-04 18:12:33
request方法:向url页面构造一个请求,其余六种方法通过调用封装好的request函数来实现的 1. requests.request(method,url,**kwargs) method: 请求方法,常见有GET、POST请求【此外还有HEAD、PUT、PATCH、DELETE、OPTIONS】(前6种就是HTTP协议所对应的请求方式,OPTIONS事实上是向服务器获取一些服务器跟客户端能够打交道的参数) url: 请求的URL地址 **kwargs:是一个可变的参数类型,在传实参时,以关键字参数的形式传入,python会自动解析成字典的形式 1. params : 字典或元组列表或字节,作为参数增加到url中;一般用于get请求,post请求也可用(不常用)。 2. data : 字典,元组列表,字节或文件对象,作为post请求的参数。 3. json : JSON格式的数据,作为post请求的json参数。 4. headers : 字典类型, HTTP请求头信息。 5. cookies : 字典或CookieJar,Request中的auth : 元组支持HTTP认证功能 6. files : 字典类型,传输文件,作为post请求文件流数据。 7. timeout : 设定超时时间,秒为单位 8. proxies : 字典类型,设定访问代理服务器,可以增加登录认证

Python基础入门语法1

China☆狼群 提交于 2019-12-04 17:32:31
PY的交换值的方法 x.y = y.x PY既具有动态脚本的特性,又有面向对象的特性 PY的缺点: 编译型的语言( C++,C):通过编译器进行编译成机器码,越接近底层,开发效率低 解释型代码: PY 和 JS 通过解释器进行解释,相对于编译型的慢 基本的数据类型 Number:数字 整数int(没有short int long的区分) 浮点数 float(py中没有单精度和双精度区分) Bool 型: false和true型 2/2=1.0 在 py中得到的是浮点型的 2//2 是整除的形式 比如 1//2 就得 0 0b是py中的二进制识别符号,bin()是转换到二进制的方法 0o 是py中的八进制识别符号 0x 是16进制 转十进制的方法是 int(0b11) 转十六 hex() 转八进制 oct() bool(0) 为 false 数字类里仅有这个为 false 单引号和双引号都可以表示字符串 为啥里面用两种的引号,就是保证能够识别中间的文字符号 转义字符 \r回车 要把一个字符转化成文本 即加一个 \ 一个起点一个终点得到一个字符串 用冒号来做 原始字符串的用法 列表的基本操作和字符串的是一致的 元组的定义 tuple (n1,n2,n3) 元组的访问 (n1,n2,n3)[n] 返回的是元素 (n1,n2,n3)[n,m]返回的元组 元组与列表的相同点 1

数据库数据查询

安稳与你 提交于 2019-12-04 16:57:50
什么是查询呢? 查询是对已有表中的数据按照某种条件进行筛选,将满足条件的数据筛选出来形成一个新的记录集进行显示,也称为查询结果记录集, 这个记录集的结构与表的结构类似,由行和列组成,但它并不是真正存放在数据库中的表, 而是一种存放在计算机内存中的虚拟表。 若省略查询条件,则返回数据源中的所有记录行。 查询是查找和筛选功能的扩充,它不但能实现数据检索,而且可以在查询过程中进行计算、合并不同数据源的数据,甚至可以添加、更改或删除基本表中的数据。 查询的数据源 查询的数据源(也称为“记录源”, RecordSource)是存放在数据库中的 基本表 或已经创建好的 视图 ,可以有 一个或多个 数据源。 若是多个数据源,则 需指定 这些数据源之间的 关联关系 ,以保证查询结果的正确性 查询的结果 查询的结果只 有在 运行查询 时才会 产生 ,因此也称为动态结果记录集,这个结果集的显示可以通过前面我们所学过的视图来实现。 数据查询是数据库的核心操作。SELECT语句是SQL语言中功能最强大的语句。 SELECT子句:指定要显示的属性列 FROM子句:指定查询对象(基本表或视图) WHERE子句:指定查询条件 GROUP BY子句:对查询结果按指定列的值分组,该属性列值相等的元组为一个组。通常会在每组中作用聚集函数。 HAVING短语:只有满足指定条件的组才予以输出 ORDER BY子句:

Python高性能编程

北战南征 提交于 2019-12-04 15:49:35
前言 python现在已经被广泛使用了,它效率高,平常做一些简单的实验,处理一些数据都可以使用python。 我写这篇文章的目的,是想和大家分享下提升python性能的小技巧,这些技巧在工作和学习中算是非常实用了。接下来文字和简明扼要,直接告诉大家如何高性能使用python,不会涉及到基础知识没比如元组和列表的区别等,需要读者有一定的python基础和算法基础。 列表和元组的选择 他俩的区别我就不再赘述,就使用情况来看,列表是动态的,元组是静态的,想必大家都很喜欢使用列表吧。 但是因为列表的超额分配,列表会占用额外的内存的空间,而且初始化列表的时间大约是初始化元组的5倍,因此给大家的建议是, 凡是需要存储不会改变的事物,就是用元组吧 ,或者是说只要在适用的情况下,能用元组就用元组。 迭代器和生成器 迭代器和生成器算是python的一大特色了,迭代器和生成器可以简单理解为,需要迭代的内容不需要全部在内存中,只有在迭代完一个的时候才去生成另外一个。所以,迭代器和生成器一大好处就是节省内存。举个例子,统计10GB文本中单词的个数,显然不能把10GB文件都读到内存中,那么我们可以写如下代码: with open("test.txt","r") as fr: # 千万不要写成 data = fr.readlines(),这样就全部读到内存中了 for line in fr: pass #