for循环

Python性能优化的20条建议

会有一股神秘感。 提交于 2020-02-26 10:33:59
优化算法时间复杂度 算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。 减少冗余数据 如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。 合理使用copy与deepcopy 对于dict和list等数据结构的对象,直接赋值使用的是引用的方式。而有些情况下需要复制整个对象,这时可以使用copy包里的copy和deepcopy,这两个函数的不同之处在于后者是递归复制的。效率也不一样:(以下程序在ipython中运行) import copy a = range(100000) %timeit -n 10 copy.copy(a) # 运行10次 copy.copy(a) %timeit -n 10 copy.deepcopy(a) 10 loops, best of 3: 1.55 ms per loop 10 loops, best of 3: 151 ms per loop timeit后面的-n表示运行的次数,后两行对应的是两个timeit的输出,下同。由此可见后者慢一个数量级。 使用dict或set查找元素 python

微信小程序零基础入门模板语法

筅森魡賤 提交于 2020-02-26 05:30:18
一、数据绑定 1、普通写法 2、组件属性 3、bool类型 demo1中demo.js中的data放的是初始化数据 // pages/demo1/demo1.js Page({ /** * 页面的初始数据 */ data: { msg:"测试绑定数据", number:1000, bool:false, user:{ age:10, name:"张三" } }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage:

C和汇编-----for循环

心已入冬 提交于 2020-02-26 03:13:19
环境:VC++ for循环有三个表达式,第一个表达式是初始化,在for循环之前执行一次,后面就不执行了,第二个是循环条件,在执行循环体之前求值,如果为真,执行循环体,如果为假,循环结束,第三个是执行更新,在每次执行完循环体后执行。下面用个简单的程序来研究for循环的反汇编 #include "stdio.h" int main ( ) { int sum = 0 ; for ( int i = 1 ; i <= 100 ; i ++ ) { sum + = i ; } printf ( "sum=%d\n" , sum ) ; return 0 ; } 功能是求1到100的和 反汇编: 5 : int sum = 0 ; 00401028 C7 45 FC 00 00 00 00 mov dword ptr [ ebp - 4 ] , 0 6 : for ( int i = 1 ; i <= 100 ; i ++ ) 0040102 F C7 45 F8 01 00 00 00 mov dword ptr [ ebp - 8 ] , 1 00401036 EB 09 jmp main + 31 h ( 00401041 ) 00401038 8 B 45 F8 mov eax , dword ptr [ ebp - 8 ] 0040103 B 83 C0 01 add eax ,

03-python基础语法_2.数据类型

折月煮酒 提交于 2020-02-26 01:43:57
4-1-2 Python基础数据类型 - 7种 (一).Outline 1.整型(int) 1.1py2 & py3的区别 1.整数类型 2.除法 1.2强制转换 : 2种类型可转。 int(' str 中的 可渡 之人')【重要】 int( bool ) 1.3进制 4种进制介绍 进制转换 2.布尔类型(bool) 强制转换 : 1.其他6种数据类型 均可转成bool 。bool(int/str/list/tuple/dict/set) 2. 强制转换 中bool为 False 的情况: 7种 , 0,'',[],(),{},set(),None 。 3.字符串(str) -不可变。有序。 3.0字符串定义 (一).公共功能 -即,其他数据类型也可能会有的功能。 3.1加 - str + str 3.2乘数字 -str * int 3.3索引/下标 3.4切片 坑 : list -若取不到值,则打印 空列表 。 str -若取不到值,则 什么都不打印 (计算机内部自动将str两边的引号去掉了)。 3.5步长 3.6for循环 for循环 -遍历str中的各元素 for循环+ range :遍历str中各元素的索引 3.7len 3.8in 判断某字符是否在str中 (二).str的方法 写在前面 :因为str是 不可变 数据类型,故对其进行操作,并不会对原来的值产生影响。而是

Shell编程之循环语句

佐手、 提交于 2020-02-26 01:20:37
一、for循环语句 1.for循环语法结构 1)列表==循环 2)不带列表循环 3)类C风格的for循环 2.应用案例 1)脚本==计算==1-100奇数和 2)判断所输整数是否为质数 3)批量创建用户 4)批量创建用户 5)局域网内脚本检查主机网络通讯 6)判断闰年 二、while循环语句 1.while循环语法结构 2.应用案例 1)脚本计算1-50偶数和 2)脚本同步系统时间 三、until循环 1.until语法结构 2.应用案例 1)具体需求 2)思路 3)落地实现 一、for循环语句 1. for循环语法结构 1)列表==循环 列表for循环:用于将一组命令执行 ==已知的次数== 基本语法格式 for variable in {list} do command command … done 或者 for variable in a b c do command command done 举例说明 # for var in {1..10};do echo $var;done # for var in 1 2 3 4 5;do echo $var;done # for var in `seq 10`;do echo $var;done # for var in $(seq 10);do echo $var;done # for var in {0..10..2};do

Shell编程之嵌套循环

主宰稳场 提交于 2020-02-26 01:20:29
一、随机数 1.如何生成随机数? 2.实战案例 1)随机产生以139开头的电话号码 2)随机抽出5位幸运观众 3)批量创建用户(密码随机产生) 二、嵌套循环 1.应用案例 1)打印指定图案 2)落地实现1 3)落地实现2 三、阶段性补充总结 1.影响shell程序的内置命令 四、综合案例 1.实战案例1 1)具体需求 2)案例分析 3)落地实现 实战案例2 一、随机数 1. 如何生成随机数? 系统变量 : ==RANDOM== ,默认会产生0~32767的随机整数 前言: 要想调用变量,不管你是什么变量都要给钱,而且是美元:heavy_dollar_sign: 打印一个随机数 echo $RANDOM 查看系统上一次生成的随机数 # set|grep RANDOM RANDOM=28325 产生0~1之间的随机数 echo $[$RANDOM%2] 产生0~2之间的随机数 echo $[$RANDOM%3] 产生0~3之间的随机数 echo $[$RANDOM%4] 产生0~9内的随机数 echo $[$RANDOM%10] 产生0~100内的随机数 echo $[$RANDOM%101] 产生50-100之内的随机数 echo $[$RANDOM%51+50] 产生三位数的随机数 echo $[$RANDOM%900+100] 2. 实战案例 1)随机产生以139开头的电话号码

使用java打印菱形教学

旧街凉风 提交于 2020-02-25 19:20:47
第一步:首先对图像进行解析 想要打印如图所示的形状经过简单分析之后可得出想要打印该图形必须要进行多层循环嵌套分两个部分进行打印 第一部分为上半部分前四行他们是递增的关系后半部分后三行为递减关系,由此可以得出我们需要写两个打的循环。并且由于“*”位置的关系我们必须带入空格同时打印所以每个部分需要两个循环控制 外汇返佣 ,即两个大循环每个里面嵌套两个小循环总计四个循环。 第二部:对数字进行分析 在分析之前我们必须明白外层循环控制行数,内层循环控制列数,因此我们需要分析他的行和列 如上图所示列出数字对应关系分析其中的联系的到如下代码。 class ForForTest { public static void main(String[] args) { /* 输出如下图形: 行数i: 空格数j: “*”数目z: * 1 3 1 *** 2 2 3 ***** 3 1 5 ******* 4 0 7 ***** 1 1 5 6 *** 2 2 3 5 * 3 3 1 4 */ for (int i = 1;i <= 4;i++){ for (int j = 1;j <= 4 - i;j++) { System.out.print(" "); } for (int z = 1;z <= i*2-1;z++){ System.out.print("*"); } System.out

Django 模板系统

左心房为你撑大大i 提交于 2020-02-25 14:19:33
作为一个 Web 框架,Django 需要一个动态生成 HTML 的便捷方法。最常用的方法就是模板。模板包含所需 HTML 输出的静态部分以及描述动态内容被插入的一些特殊语法。 Django 项目可以配置一个或多个模板,甚至没有,Django 内置了一套自己的模板系统,叫作 Django template language。 通过模板,我们可以将后端(变量、对象、数据库数据、时间等)渲染到前端 HTML。 模板中常用两种特殊符号 {{ 变量名 }} {% 逻辑相关 %} 1. 模板变量 当模板引擎遇到一个变量时,将计算这个变量,用原有的值替换这个变量。变量命名可以是 字母、数字以及下划线组合 ,但是不能有空格或标点符号。 语法: {{ 变量名 }} 模板变量中的点【.】 在模板中点有特殊含义,它可能是: 字典查询 属性或方法查询 数字索引查询 Tips: 在 Python 中调用一个方法时,往往都会有小括号,而在模板中是不用带括号的。另外需要注意的是模板中调用方法,不能调用带参数的方法。 示例 #views.py from django.shortcuts import render def index(request): data_list = [1, 2, 3] dic = {'name': 'rose'} tt = datetime.datetime.now() # 传时间

Django 模板语言 标签

偶尔善良 提交于 2020-02-25 14:16:34
前言:django的模板语法基本和flask的jinja2基本一样。下面比较一下两个模板语法的区别。 ------ 深度变量的查找(万能的句点号) 在 Django 模板中遍历复杂数据结构的关键是句点字符 ( . )。 1.模板变量 django :{{ 变量 }} # 因为django只有一个context返回,全部数据都集中在一起 jinja2 :{{ 对象.变量 }} 2.根据列表的下标获取值 django :{{ 列表.0 }} jinja2 :{{ 列表[0] }} 3.根据字典的键获取字典的值 django :{{ 字典.key }} jinja2 :{{ 字典[key] }}或者{{ 字典.key }} 4.for循环时取序号 django:{% for item in 列表 %} {{forloop.counter}} <1-- 表示当前是第几次循环,从1开始 --> {{forloop.counter0}} <!-- 表示当前是第几次循环,从0开始 -->{% endfor %}jinja2:{% for item in 列表 %} {{loop.index}} <1-- 表示当前是第几次循环,从1开始 --> {{loop.index0}} <!-- 表示当前是第几次循环,从0开始 -->{% endfor %} # for遍历字典{{ for key,val

Django 模板层

醉酒当歌 提交于 2020-02-25 14:06:26
模板简介 模板就是一个文本,用于分离文档的表现形式和内容 django里的模板可以理解为: HTML代码+模板语法 一、模 板语法之变量 模板语法的注释 不会展示到前端页面:{#模板语法注释#} 原生html的注释 会展示到前端:<!--我是原生的html注释--> 1,语法 用双大括号 {{ var_name }} 2,深度查询: 通过句点符号 . 3,示例 view视图代码 def reg (request): name = "hello template" i = 200 l = [111, [333, 444, 555], 333] d = {"name": "yuan", "age": 23} class Person(object): def __init__(self, name, age): self.name = name self.age = age def dream(self): return "I am dreaming" person_bjd = Person("bjd", 20) return render(request,'xxxxx.html',locals()) html文件代码 <p>{{ name }}</p> <p>{{ i }}</p> <p>{{ l.1 }}</p> #支持.索引取值 <p>{{ d.name }}</p><p>{{