【实现用户注册,登录和登出】但是用 Flask + MySQL(python)
【实现用户注册,登录和登出】但是用 Flask + MySQL(py...
【实现用户注册,登录和登出】但是用 Flask + MySQL(py...
我们要获取name和对应age
for s in ss[“data”]:
#这么写
name = s[“name”]
age = s[“age”]
#还是这么写
name = jsonpath(s,”$..name”)[0]
age = jsonpath(s,”$..age”)[0]
# 这么写给
name = glom(s,’name’)
age = glom(s,’age’)
都会报错:
我们只能用 get()
name = s.get(“name”,””)
age = s.get(“age”,””)
每次这么写感觉会很麻烦,后来发现可以自定义类的方式,每次把字典先格式化一下,无对应值返回None
我们自定义一个类,继承dict,然后实现它的missing方法:
class OurDict(dict):
def missing(self, key):
return None
a = OurDict({‘a’: 1, ‘b’: 2})
print(a[‘x’])
在在后来,在 Python 的collections工具模块中,有一个defaultdict实现了类似的事情。我们看它的使用方法
from collections import defaultdict
a = defaultdict(str)
a[‘a’] = 1
a[‘b’] = 2
print(a)
print(a[‘x’])
print(a)
a = defaultdict(str)接收一个函数,让a变量成为一个defaultdict类型的对象,它可以像普通字典一样被赋值和读取。
但是当你读取一个不存在的 key 时,它会自动生成一个默认值,并把默认值和这个 key 插入到字典中。这个默认值取决于你在defaultdict传入的参数。如果传入的是str那么默认值就是空字符串,如果是int那么默认值就是0.当然你也可以传入自定义的一个函数,从而控制这个默认值。
python数据写入csv、csv转excel、用Pandas把数据...
C:\Users\jwp>pip install -i https://pypi.tuna.tsinghua.edu.cn/simple moviepy==10000
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
ERROR: Could not find a version that satisfies the requirement moviepy==10000 (from versions: 0.2.1.6.3.linux-i686, 0.2.1, 0.2.1.1, 0.2.1.2, 0.2.1.3,
0.2.1.4, 0.2.1.5, 0.2.1.6, 0.2.1.6.1, 0.2.1.6.2, 0.2.1.6.3, 0.2.1.6.4, 0.2.1.6.5, 0.2.1.6.7, 0.2.1.6.8, 0.2.1.6.9, 0.2.1.6.91, 0.2.1.6.92, 0.2.1.6.93,
0.2.1.7, 0.2.1.7.2, 0.2.1.7.3, 0.2.1.7.8, 0.2.1.7.9, 0.2.1.7.10, 0.2.1.7.11, 0.2.1.7.12, 0.2.1.7.13, 0.2.1.7.14, 0.2.1.7.15, 0.2.1.7.16, 0.2.1.7.17,
0.2.1.7.18, 0.2.1.7.19, 0.2.1.7.20, 0.2.1.7.21, 0.2.1.7.22, 0.2.1.8, 0.2.1.8.1, 0.2.1.8.2, 0.2.1.8.3, 0.2.1.8.4, 0.2.1.8.5, 0.2.1.8.6, 0.2.1.8.7, 0.2.
1.8.8, 0.2.1.8.9, 0.2.1.8.10, 0.2.1.8.11, 0.2.1.8.12, 0.2.1.9, 0.2.1.9.1, 0.2.1.9.2, 0.2.1.9.3, 0.2.1.9.4, 0.2.1.9.5, 0.2.1.9.7, 0.2.2, 0.2.2.1, 0.2.2
.2, 0.2.2.3, 0.2.2.4, 0.2.2.5, 0.2.2.6, 0.2.2.7, 0.2.2.8, 0.2.2.9, 0.2.2.10, 0.2.2.11, 0.2.2.12, 0.2.2.13, 0.2.3.1, 0.2.3.2, 0.2.3.3, 0.2.3.4, 0.2.3.5
, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 2.0.0.dev1, 2.0.0.dev2)
ERROR: No matching distribution found for moviepy==10000
from flask import Flask, jsonify
from flask import request
app = Flask(__name__)
@app.route(‘/’, methods=[‘GET’, ‘POST’])
def hello_world():
print(‘请求方式为——->’, request.method)
args = request.args.get(“name”) # 获取 get 参数
form = request.form.get(‘data’) # 获取 post 参数
# main(form) # 调用我们的逻辑函数
get_html(form)
print(“=========成功 生成 index.html================”)
return jsonify(args=args, form=form)
if __name__ == ‘__main__’:
app.run(host=”0.0.0.0″, port=5800, debug=True)
Python 使用 uiautomation 获取通讯录好友信息 参...
os.path.exists(),os.getcwd(), os.chdir
vim ostest.py
import os
if not os.path.exists(‘testos’):
os.mkdir(‘testos’) #如果没有则建立文件路径
print (os.getcwd())
os.chdir(‘/’)
print os.getcwd()
——————
创建目录
在Python中可以使用os.mkdir()函数创建目录(创建一级目录)。
其原型如下所示:
os.mkdir(path)
其参数path 为要创建目录的路径。
例如要在D盘下创建hello的目录
>>> import os
>>> os.mkdir(‘d:\hello’)
可以使用os.makedirs()函数创建多级目录。
其原型如下所示:
os.makedirs(path)
其参数path 为要创建目录的路径。
如在D盘下创建books的目录,books目录下在创建book目录
>>> import os
>>>os.makedirs(‘d:\\books\\book’)
———————–
os.path.exists():判断文件是否存在
————————
os.getcwd():用于返回当前工作目录。 参数:无; 返回值:返回当前进程的工作目录
os.chdir(path):用于改变当前工作目录到指定的路径。格式:os.chdir(path):其中path为切换到的新路径。
pipreqs(找当前项目依赖的包)
1.安装
pipreqs可以帮你找到当前项目的所有组件及其版本。就是当别人给你一个程序的时候,你要在自己电脑上运行起来,就需要安装程序所依赖的组件,总不能自己一个一个找吧。
# 安装
pip3 install pipreqs
2.使用步骤
# 使用步骤
1.在项目根目录下执行命令
pipreqs ./ –encoding=utf-8
2.可以看到生成了requirements.txt文件
3.执行下面代码就会把项目用到的所有组件装上
pip3 install -r requirements.txt
3.效果
# requirements.txt
Flask_Migrate==2.3.1
redis==3.0.1
Flask==1.0.2
alembic==1.0.7
Flask_Script==2.0.6
Flask_SQLAlchemy==2.3.2
Flask_Session==0.3.1
SQLAlchemy==1.2.17
Python 提供了很多截取字符串的方法,被称为“切片(slicing)”。
模版如下:
string[start: end: step]
其中,
start:起点位置,子字符串的起始索引。该索引处的字符包含在子字符串中。start 为空时则默认为 0。
end:终点位置,子字符串的终止索引。该索引处的字符不包括在子字符串中。end 为空时,或者指定的值超过字符串的长度,则默认它等于字符串的长度。
step:步长,当前字符之后和目标字符之间的距离。step 为空时,则默认值为 1。
模版
string[start:end]:获取从 起点位置 到 终点位置 – 1 的所有字符
string[:end]:获取从 字符串开头 到 终点位置 – 1 的所有字符
string[start:]:获取从 起点位置 到字符串结尾的所有字符
string[start:end:step]:获取从 起点位置 到 终点位置 – 1 的,每个之间距离 步长 的所有字符
示例
获取字符串的前 5 个字符
string = “freeCodeCamp”
print(string[0:5])
输出:
> freeC
注意:print(string[:5]) 和 print(string[0:5]) 返回的结果一样
获取从第 3 个字符开始,长度为 4 的截取字符串
string = “freeCodeCamp”
print(string[2:6])
输出:
> eeCo
请注意,起点或终点位置索引可能为负数。负索引的意思是从字符串的末尾开始而不是从开头开始(即从右到左)开始计数。索引-1 代表字符串的最后一个字符,-2 代表倒数第二个字符,依此类推……
获取字符串的最后一个字符
string = “freeCodeCamp”
print(string[-1])
输出:
> p
获取字符串的末尾 5 个字符
string = “freeCodeCamp”
print(string[-5:])
输出:
> eCamp
获取一个截取字符串,包括除了末尾 4 个和开头第一个字符的所有字符
string = “freeCodeCamp”
print(string[1:-4])
结果:
> reeCode
更多示例
str = “freeCodeCamp”
print str[-5:-2] # prints ‘eCa’
print str[-1:-2] # prints ‘’ (empty string)
每个字符之间间隔一个索引
string = “freeCodeCamp”
print(string[::2])
结果:
> feCdCm
python名字排序_python 中文排序(按拼音) pypiny...