集合(set):无序的,不重复的数据组合,它的主要作用如下:  · 去重,把一个列表变成集合,就自动去重了  · 关系测试,测试两组数据之间的交集.差集.并集等关系 1.基本操作:修改,删除,合并 >>> s = {1,2,3,4}>>> s.add(2) #添加元素,同时去掉重复的元素>>> s{1, 2, 3, 4}>>> s.add(6)>>> s{1, 2, 3, 4, 6}>>> s.po…
加密算法介绍 HASH       Python全栈之路----hash函数 Hash,一般翻译做“散列”,也有直接音译为”哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值.这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值. 简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数. HASH主要用于信息安全领域中加密算法,他把一…
目录基本内容 log  #日志目录 conf  #配置目录 core/luffycity  #程序核心代码目录  #luffycity 是项目名,建议用小写 libs/modules  #内置模块 docs  #文件 README  #软件使用说明 setup.py  #安装文件 bin/  #程序启动脚本,程序入口脚本 luffy_server.py  #通过这个文件去调用其他文件夹里的东西 目录组织方式 假设你的项目名为foo, 我比较建议的最方便快捷目录结构这样就足够了: Foo/ |--…
正则表达式就是字符串的匹配规则,在多数编程语言里都有相应的支持,python里对应的模块是 re. re的匹配语法有以下几种 re.match 从头开始匹配 re.search 匹配包含 re.findall 把所有匹配到的字符放到以列表中的元素返回 re.split 以匹配到的字符当做列表分隔符 re.sub 匹配字符并替换 re.fullmatch 全部匹配  常用的表达式规则   红色加粗的为重要的常用的 '.' 默认匹配除\n之外的任意一个字符,若指定flag DOTALL,则匹配任意字…
很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,logging的日志可以分为 debug()调试, info()记录, warning()有潜在问题, error()出问题 and critical()严重问题5个级别,下面我们看一下怎么用. 最简单用法 import logging logging.warning("user [alex] attempte…
我们经常需要通过Python去执行一条系统命令或脚本,系统的shell命令是独立于你的python进程之外的,每执行一条命令,就是发起一个新进程,通过python调用系统命令或脚本的模块在python2有os.system, >>> os.system('uname -a') Darwin Alexs-MacBook-Pro.local 15.6.0 Darwin Kernel Version 15.6.0: Sun Jun 4 21:43:07 PDT 2017; root:xnu-3…
把内存数据转成字符,叫序列化:把字符转成内存数据类型,叫反序列化. Json模块 Json模块提供了四个功能:序列化:dumps.dump:反序列化:loads.load. import json data = { 'roles':[ {'role':'monster','type':'pig','life':50}, {'role':'hero','type':'关羽','life':80} ] } #dumps和loads d = json.dumps(data) #仅转成字符串 d2 =…
高级的 文件.文件包.压缩包 处理模块   参考Python之路[第四篇]:模块     #src是原文件名,fdst是新文件名 shutil.copyfileobj(fsrc, fdst[, length])   #将文件内容拷贝到另一个文件中 import shutil #后面是新创建的文件,每次读len的长度,直到读完 shutil.copyfileobj(open('old.xml','r'), open('new.xml', 'w'),len) shutil.copyfile(src,…
相比于time模块,datetime模块的接口则更直观,更容易调用. datetime模块定义了下面这几个类: datetime.date:表示日期的类,常用的属性有year,month,day: datetime.time:表示时间的类,常用的属性有hour,minute,second,microsecond: datetime.datetime:表示日期时间. datetime.timedelta:表示时间间隔,即两个时间点之间的长度. datetime.tzinfo:与时区有关的相关信息.…
xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在json还没诞生的黑暗年代,大家只能选择用xml呀,至今很多传统公司如金融行业的很多系统的接口还主要是xml. xml的格式如下,就是通过<>节点来区别数据结构的: <?xml version="1.0"?> <data> <country name="Liechtenstein"> <rank upda…
什么是模块? 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python里,一个 .py 文件就被称之为一个模块(Module). 使用模块有什么好处? 1.最大的好处是大大提高了代码的可维护性.其次,编写代码不必从零开始.带一个模块编写完毕,就可以被其他地方引用.我们在编写程序的时候,也经常引用其他模块,…
当你的模块文件越来越多,就需要对模块文件进行划分,比如把负责跟数据库交互的都放一个文件夹,把与页面交互相互的放入一个文件夹. 像上面这样,一个文件夹管理多个模块文件,这个文件夹就被称为包. 那不同包之间的模块如何相互导入呢? crm/views.py 内容 def sayhi(): print('hello world!') 通过 manage.py 调用 from my_pro.crm import views #从包里导入包里的文件 views.sayhi() 在文件夹下,加一个 __ini…
os模块提供了很多允许你的程序和操作系统直接交互的功能 得到当前工作目录,即当前Python脚本工作的目录路径:os.getcwd() #test.py import os print(os.getcwd()) D:\ProgramLearning>python Py_program\test.py D:\ProgramLearning #显示的是当前python解释器所在的目录,而不是文件所在目录 返回指定目录下的所有文件和目录名:os.listdir() #test.py import os…
sys.argv  命令行参数 List,第一个元素是程序本身路径 #test.py import sys print(sys.argv) D:\ProgramLearning\Py_program>python test.py ['test.py'] D:\ProgramLearning\Py_program>python test.py run web ['test.py', 'run', 'web'] sys.exit(n)  退出程序,正常退出时 exit(0) >>>…
time 模块的方法 time.time():返回当前时间的时间戳. >>> import time >>> time.time() #从1974年到现在过去了多少微秒 1551695952.625551 time.localtime([secs]):  将一个时间戳转换为当前时区的 struc_time ,secs 参数未提供,则以当前时间为准. >>> time.localtime() #获取当地时间 time.struct_time(tm_yea…
程序中有很多地方需要用到随机字符,比如登陆网站的随机验证码,通过random模块可以很容易生成随机字符串. >>> import random >>> random.randint(1,100) #在1-100之间生成一个随机数 3 >>> random.randrange(1,100) #在1-99之间生成一个随机数 10 >>> random.random() #返回一个浮点数 0.9143138919444751 >>…
Module1 Python基本语法 Python全栈之路----编程基本情况介绍 Python全栈之路----常用数据类型--集合 Module2 数据类型.字符编码.文件操作 Python全栈之路----进制运算 Python全栈之路----Python基础元素 Pyhon全栈之路----数据类型 Python全栈之路----流程控制+循环 Python全栈之路----数据结构—列表 Python全栈之路---数据类型—字符串 Module3 函数.装饰器.迭代器.内置方法 Python全栈…
目录 Python 全栈之路 一. Python 1. Python基础知识部分 2. Python -函数 3. Python - 模块 4. Python - 面对对象 5. Python - 文件操作 6. Python - python中经常踩得的坑 7. Python - 网络编程 8. Python - 并发编程 二. 数据库 Mysql Redis MongoDB SQLAlchemy 三. 前端 前端 - HTML 前端 - CSS 前端 - Javescript 前端 - JQ…
基础 1.Python全栈之路-----基础篇 2.Python全栈之路---运算符与基本的数据结构 3.Python全栈之路3--set集合--三元运算--深浅拷贝--初识函数 4.Python全栈之路4--内置函数--文件操作 5.Python全栈之路5--常见的排序的算法 6.Python全栈---5.1---装饰器 7.Python全栈之路6--正则表达式 8.Python全栈--6.1-match-search-findall-group(s)的区别以及计算器实例 9.Python全栈…
python全栈 一.基本数据类型 1.int: 整数 2.str: 字符串, 一般不存放大量数据. 3.bool: 布尔值,用来判断. True  或者  False 4.list:  列表,用来存放大量数据,用[ , ]表示.可装各种数据类型. 5.tuple:  元组,只读列表,用()表示. 6.dict:  字典, 用{ key : value }表示. set:  集合 , 不重复. 二.int 类型 1.bit_length( ): 表示返回一个数的二进制长度. 三.bool 类型…
函数外部的代码想要获取函数的执行结果,就可以在函数里用return语句,把结果返回. def stu_register(name,age,course='PY',country='CN'): print('----注册学生信息----') print('姓名:',name) print('年龄:',age) print('国籍:',country) print('课程:',course) if age > 22: return False else: return True registriat…
字符串:有序的字符的集合,用于存储和表示基本的文本信息,一对单.双.或三引号中间包含的内容称之为字符串 1.特性:有序,不可变(开辟新地址存储字符串,python解释器会定期清空不用了的已存储的) >>> a = 'alex' >>> id(a) 1806635111064 >>> a = 'Jack' >>> a 'Jack' >>> id(a) 1806635111232  2.操作  常用:isdigit  r…
一.上节课的重点回顾: 1.类名加括号其实就是执行类的__init__方法: 2.int a.创建方式 n1 = 123 #根据int类创建了一个对象 n2 = int(123) #根据int类创建一个对象,类的实例化就是对象 b.int内部优化 1.n1和n2的内存地址相同 n1 = 123 n2 = n1 2.按理说n1和n2的内存地址应该不同,这是由于python的内部机制的原因, 在-5~257以内的数,按2的方式写,都是指向同一个内存 n1 = 123 n2 = 123 除此之外的数,…
1.列表是一个数据的集合,集合内可以放任何数据类型,可对集合进行方便的增删改查操作.列表里面的数可以重复. L1 = [ ] #定义空列表 L2 = [ 'a' , 'b' , 'c' , 'd' ] #存四个值,索引为0-3 L3 = [ 'abc' , [ 'def' , 'ghi' ] ] #嵌套列表 2.列表的功能: 创建,查询,插入,删除,移动,修改,排序 L[n]  L.count(n)  L.index(n)  L.append(n)  L.insert(m,n)  del L[n…
python基础链接 python3速查参考- python基础 2 -> if语句应用 + while循环应用 https://www.cnblogs.com/wuzhiming/p/7795707.html python3速查参考- python基础 3 -> -> while循环实例 + Continue && break的应用 + 列表的初步学习 https://www.cnblogs.com/wuzhiming/p/7801548.html python3速查参…
字典:可变,一种key-value的数据类型 info = { 'stu1101' : 'TengLan Wu' , 'stu1102' : 'LongZe Luola' , 'stu1103' : ' XiaoZe Maliya' } 1.特点:key-value结构:key必须可hash(被hash值不变),且必须唯一.必须为不可变类型:无序的(因为无索引,通过key查询):查找速度快      2.基本操作:创建,添加,查找,修改,删除,清空 >>> info = { ... '龙…
元组类型:有序,不可变的,又叫只读列表  names = ("alex","jack","eric") 1.元组本身不可变,但如果元组中有可变元素,如列表,那么元组中的这个可变元素是可以改变的     2.相关操作  切片 >>> n2 = (1,2,3,4,5,6,7,8) >>> n2[2:5] (3, 4, 5) >>> n2 = (1,2,3,['a','b'],5) >>…
运算符 一.算术运算符: 练习: + 加法 两个对象相加 1 + 2得到3:'a' + 'b'得到'ab'. - 减法 一个数减去另一个数或者是负数 5 - 3得到2:-2得到一个负数 * 乘法 两个数相乘或者返回一个被重复若干次的字符串 -5.2得到一个负数.50 - 24得到26. ** 幂 返回x的y次幂 3 ** 4得到81(即3 * 3 * 3 * 3) / 除 x除以y 4/3得到1(整数的除法得到整数结果).4.0/3或4/3.0得到1.3333333333333333 // 取整…
#list 是 类 ,列表 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列都可以进行的操作包括索引,切片,加,乘,检查成员. 此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法. 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现. 列表的数据项不需要具有相同的类型 li = [1,23,4,"age…
Python诞生 Python是著名的”龟叔“Guido van Rossum(吉多·范罗苏姆)在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python语法很多来自C,但又受到ABC语言的强烈影响.来自ABC语言的一些规定直到今天还富有争议,比如强制缩进.但这些语法规定让Python容易读.Guido van Rossum著名的一句话就是Life is short, you need Python,译为:人生苦短,我用Python截至到目前2016年4月28日,Pytho…