关于可迭代对象其中含有__iter__方法,返回迭代器
迭代器:含有__next__方法,
生成器:函数中含有yield关键字的函数,被其执行后是生成器含有__next__方法
如果获取的数据不是直接可以展示的结构 有三种方法可以做:
方案一: 循环一次,生成数据 方案二:
方案二: 利用yield来实现 def test(request): user_list = [ {'id':1,'name':'alex','age':19}, {'id':2,'name':'eric','age':18}, ] def inner(arg): for item in arg: yield {'id':item['id'], 'name':item['name'],'age':item['id']+item['age']} 方案三:
利用类、__iter__、yield实现 class Foo(object): def __init__(self,data): self.data = data def __iter__(self): for item in self.data: yield item def test(request): user_list = [ {'id':1,'name':'alex','age':19}, {'id':2,'name':'eric','age':18}, ] obj = Foo(user_list) return render(request,'test.html',{'user_list':obj}) 关于git的命令行 通过一个创业的公司经历阶段来讲解如何使用git: 第一个阶段: 在需要的文件下右键选择git bush here
git init 初始化 git config --global user.email "you@example.com" 配置信息 git config --global user.name "Your Name" 配置信息 git add . 添加所有的信息 git commit -m '描述信息' 提交并且给描述 git add . git commit -m '描述信息' git add . git commit -m '描述信息' git log 产看以前的版本号 git reset --hard asdfooiusdfsdfadf 返回到具体版本号 git reflog 查看往后的版本号 git reset --hard asdfooiusdfsdfadf 回滚到具体哪个版本 阶段二:
问题: 开发直播功能(一周开发完成),要紧急修复bug 解决方法一:(个人开发用的) git stash 将当前工作区的修改过的代码暂存到某个地方中 按照原来代码继续开发... git add . git commit -m '修改完成' git stash pop - 不产生冲突 - 产生冲突,手动去解决 git stash 将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态 git stash list 查看“某个地方”存储的所有记录 git stash clear 清空“某个地方” git stash pop 将第一个记录从“某个地方”重新拿到工作区(可能有冲突) git stash apply 编号 将指定编号记录从“某个地方”重新拿到工作区(可能有冲突) git stash drop 编号 ,删除指定编号的记录 解决方法二:分支(用在协同开发上) bug master分支 dev分支 git branch dev 创建分支 git branch -d dev 删除分支 git checkout dev 跳转分支 git merge dev 分支合并 修复Bug流程: git branch dev 创建 git checkout dev 跳转分支 # 写代码 git add . 全选提交 git commit -m 'xxx' 提交全部 git checkout master 跳转到到主分支 git branch bug 在master里面建分支成立的东西和master里面的一样 git chekcout bug 跳转的bug分支 # 修复bug git add . git commit -m '紧急修复bug' git checkout master 跳转到master里面 git merge bug 把bug整合到master里面 git branch -d bug 删除bug git checkout dev 跳转到dev继续开发 # 继续开发 阶段三:
云端需求一个存放代码的地方: 公共: - github,做代码托管 - 码云,做代码托管 - csdn code,做代码托管 内部搭建: - gitlab 家里: git add . git commit -m 'xx' git remote add origin https://github.com/WuPeiqi/greenlu.git 放到github上 git push origin master 把数据推到云端 公司: # 新公司第一次获取代码 git clone https://github.com/WuPeiqi/greenlu.git 第一次要克隆数据 git init 初始化 git remote add origin https://github.com/WuPeiqi/greenlu.git 获取网址 git pull origin master 从上面拉下数据 #第二种方法从上面拉下数据 git init 初始化 git remote add origin https://github.com/WuPeiqi/greenlu.git git fetch origin master git merge origin/master # 日后 git pull origin master git fetch origin master git merge origin/master # 本地修改问题,add,提交