python列表

Django-admin组件使用

三世轮回 提交于 2020-03-15 04:29:09
目录:   admin组件使用   admin源码解析 admin组件使用 Django提供了基于web的管理工具 Django 自动管理工具是 django.contrib 的一部分。你可以在项目的 settings.py 中的 INSTALLED_APPS 看到它: # Application definition​INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', "app01"] django.contrib是一套庞大的功能集,它是Django基本代码的组成部分。 激活管理工具 通常在生成项目的时候会在urls.py中自动设置好 from django.conf.urls import urlfrom django.contrib import admin​urlpatterns = [ url(r'^admin/', admin.site.urls),​] 当这一切配置好后,Django管理工具就可以运行了。 使用管理工具 启动开发服务器,然后在浏览器中访问 http

Perl中的执行上下文

微笑、不失礼 提交于 2020-03-14 11:28:25
perl中的上下文 在perl中,很多地方会切换上下文。所谓上下文,它的 重点在于同一个表达式出现在不同地方,得到的结果不同 。换句话说,同一个表达式,它表达的值不是固定的。这就像是同一个单词,在不同语境下的意思不同。 例如,运算操作符决定数值是一个数字还是一个字符串。 2 * 3 2 x 3 2 * 3 中的2和3都是数值,因为操作符 * 是算术运算符,它要求两边都是数字。而 2 x 3 中的2是字符串,3是数字,因为操作符 x 是这样要求的。 还有,对数组 @arr 的两种操作: @arr=qw{perl,python,shell}; print @arr,"\n"; # 返回:perlpythonshell print @arr."\n"; # 返回:3 使用逗号分隔 @arr 和 \n 是产生一个列表,这时的 @arr 会替换为该数组中的元素值。使用点号连接 @arr 和 \n ,这时点号要求两边的都是字符串,数组在这种环境下(标量上下文)返回的是它的元素个数,所以 @arr 返回一个数值(但其实是字符串)。 在perl解析表达式的时候,你要么希望它返回一个标量,要么希望它返回一个列表(其实还有很多种上下文,但至今无人知晓有多少种上下文,perl长老团也不知道)。所以perl中常见的两种上下文是: 标量上下文和列表上下文 ,除此之外还有一个很常见的上下文类型:空上下文

python输出列表元素的所有排列形式

不羁岁月 提交于 2020-03-12 12:58:25
例如: [‘a', ‘b', ‘c'] 输出 [‘a', ‘b', ‘c'] [‘a', ‘c', ‘b'] [‘b', ‘a', ‘c'] [‘b', ‘c', ‘a'] [‘c', ‘a', ‘b'] [‘c', ‘b', ‘a'] 方法一:利用递归的方式实现 def permutation(li): len_list = len(li) if len_list == 1: return li result = [] for i in range(len_list): res_list = li[:i] + li[i+1:] s = li[i] per_result = permutation(res_list) if len(per_result) == 1: result.append(li[i:i + 1] + per_result) else: result += [[s] + j for j in per_result] return result 方法二:利用python自带的模块 import itertools def permutation(li): print(list(itertools.permutations(li))) 补充拓展:python实现四个数字的全排列 首先我们使用常规做法,循环交换完成。 lst = [1, 3, 5, 8] for i

Python 常见的坑汇总

元气小坏坏 提交于 2020-03-12 04:09:33
1. 列表与 * 操作 Python 中, * 操作符与 list 结合使用,实现元素复制。 复制 5 个空列表: In [ 1 ] : [ [ ] ] * 5 Out [ 1 ] : [ [ ] , [ ] , [ ] , [ ] , [ ] ] In [ 2 ] : a = [ [ ] ] * 5 In [ 3 ] : a Out [ 3 ] : [ [ ] , [ ] , [ ] , [ ] , [ ] ] In [ 4 ] : 填充两个元素: In [ 4 ] : a [ 0 ] . extend ( [ 1 , 2 , 3 ] ) In [ 5 ] : a [ 1 ] . extend ( [ 4 , 5 , 6 ] ) 期望应该为: [ [ 1 , 3 , 5 ] , [ 2 , 4 , 6 ] , [ ] , [ ] ] 实际为: In [ 6 ] : a Out [ 6 ] : [ [ 1 , 2 , 3 , 4 , 5 , 6 ] , [ 1 , 2 , 3 , 4 , 5 , 6 ] , [ 1 , 2 , 3 , 4 , 5 , 6 ] , [ 1 , 2 , 3 , 4 , 5 , 6 ] , [ 1 , 2 , 3 , 4 , 5 , 6 ] ] 原来 * 操作复制出的 a[0] 、 a[1] 、 ... 、 a[5] ,在内存中标识符是相等的

python的基本数据类型(二)列表和元组

随声附和 提交于 2020-03-12 02:48:11
列表 (list) 一、什么是列表 列表由 [ ] 来表示,每一项元素用逗号隔开,列表中可以放入任何基本数据类型 二、列表索引和切片 列表的索引和切片与字符串相似,并且切片之后是列表 [start : end : step ] 三、列表的增删改查 1、增加 list.append():在列表的末尾添加,有且只能添加一个 list.insert(索引):在指定位置插入 list.extend():迭代添加,在末尾添加 2、删除 list.pop():弹出,返回被删除的数据,指定位置 list.remove():删除元素(元素必须在列表中,否则会报错) del list[start : end]:切片删除 list.clear():清空列表 3、更改 list [索引] = “ ” :索引改 list.[start:end]=[ " " ]:切片改,先删除再添加(切片修改时如果步长不是 1 ,注意元素的个数) 4、查询 list是可迭代的对象,所以可以用for循环来遍历 5、其他 list.count(" "):计数,字符串在列表中出现的次数 list.sort():排序,默认位升序,list.sort(reverse=Ture):降序 ,这些是永久的改变列表的顺序 list.sorted():暂时改变顺序 list.reverse():反转元素列表的排列顺序,永久改变 len()

【Python3 第三日】%和format格式化输出 函数

女生的网名这么多〃 提交于 2020-03-11 18:10:10
格式化输出 print(f'{d}') 会把d代表的意义转化掉,和format差不多 %格式化形式 #这里只说明字典使用 dict1 = {"what": "this year", "year": 2016} print("%(what)s is %(year)d" % {"what": "this year", "year": 2016}) # 输出this year is 2016 print("%(what)s is %(year)d, %d" % (dict1,22) ) # 输出this year is 2016 format格式化形式 format格式精解 位置映射 #后面的元素可以多 print("{}:{}".format('192.168.0.100', 8888, 222)) #输出如下192.168.0.100:8888 关键字映射 print("{server}{1}:{0}".format(8888,'192.168.1.100',server='Web Server Info :')) #Web Server Info :192.168.1.100:8888print('{name},{sex},{age}'.format(age=32,sex='male',name='zhangk')) #zhangk,male,32 元素访问 print("{0[0

python reduce/map/filter函数区别

痞子三分冷 提交于 2020-03-11 10:18:49
python 中 reduce / map / filter 三个函数很容易搞混淆,虽然利用函数对迭代器或者序列中的元素操作,但是适用的场景却各不相同; 一.map函数 map函数特点:对可迭代器或者序列中的每个元素进行相同的操作(例如每个元素+1等等),并返回迭代器或者列表,示例如下: # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:何以解忧 @Blog(个人博客地址): shuopython.com @WeChat Official Account(微信公众号):猿说python @Github:www.github.com @File:python_reduce_list_map.py @Time:2020/3/6 10:25 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ def func1(x): # 将每一个元素计算平方值 print("x=%d x*x=%d"%(x,x*x)) return x*x if __name__ == "__main__": list1 = [1,2,3,4,5] #方法一: value = map(func1,list1) #返回map对象,可以强制转为list列表 print(list(value)) print("***

09、Python短路运算与深浅copy

随声附和 提交于 2020-03-10 08:47:24
一、短路运算   短路运算:偷懒原则,偷懒到哪个位置,就把当前位置的值返回。 二、深浅copy 2.1 浅copy:   是把原列表第一层的内存地址不加区分完全copy一份给新列表。针对的是改操作的独立而不是读操作。 例1: list1=[ 'egon', 'lxx', [1,2] ] 1、二者分隔不开,list改list2也跟着该,因为指向的就是同一个地址 list2=list1 # 这不叫copy list1[0]='EGON' print(list2) 例2 浅copy: 需求: # 1、拷贝一下原列表产生一个新的列表 # 2、想让两个列表完全独立开,并且针对的是改操作的独立而不是读操作 list1=[ 'egon', 'lxx', [1,2] ] list3=list1.copy() # print(list3) # print(id(list1)) # print(id(list3)) # print(id(list1[0]),id(list1[1]),id(list1[2])) # print(id(list3[0]),id(list3[1]),id(list3[2])) # 实验1:对于不可变类型的赋值,都是产生了新值,让原列表的索引指向新的 # 内存地址,并不会影响新列表 list1[0]='EGON' list1[1]='LXX' # list1[2]=123 #

Python基础知识点总结【面试必过】

时光总嘲笑我的痴心妄想 提交于 2020-03-09 15:01:37
数据类型: 数字类型(int、float、bool(True or False)、complex) 字符串(str) —— ' ' or " " 相关操作:通过下标获取内容,对字符串进行多步操作前一般需要进行切片[:],保证原字符串不会随着操作变化。(注意:起始坐标和结束坐标都看省略,步进根据自己的需要与否决定是否设置,有时候很简单的解决某些问题) 注意:很多人学Python过程中会遇到各种烦恼问题,没有人帮答疑容易放弃。为此小编建了个Python全栈免费答疑.裙 :七衣衣九起起巴而五(数字的谐音)转换下可以找到了,不懂的问题有老司机解决里面还有最新Python教程项目可拿,,一起相互监督共同进步! 常用方法: capitalize 使指定字符串首字母大写 center(width, fillchar) 将原字符串变成指定的长度并且内容居中,剩下的部分使用指定的字符填充 rjust(width, fillchar) 将原字符串变成指定的长度并且内容右对齐,剩下的部分使用指定的字符填充 字符串1.join(字符串2) 在字符串2中的每个字符之间插入一个字符串1 列表(list)—— [1,2,3] 相关操作:列表的操作与字符串的操作基本相同,不过需要注意的是字符串的操作对象是单个字符,列表的操作对象是列表中的元素。 常用方法: append 在列表的末尾添加一个元素 insert

python day 5

試著忘記壹切 提交于 2020-03-09 03:23:43
1、昨日内容回顾 自己背 2、作业讲解 #以下作业均为自己自学完成,暂无标准答案 # 作业一: li = ['a大','a二','a三','a四','a五'] # 1)计算列表的长度并输出。 s = len(li) print(s) # 2)列表中追加元素'seven',并输出添加后的列表 li.append('seven') print(li) # 3)请在列表的第1个位置插入元素"Tony,并输出添加后的列表。 li.insert(0,'tony'.capitalize()) print(li) # 4)请修改列表第2个位置的元素为'老三',并输出修改后的列表。 li[2] = '老三'.capitalize() print(li) # 5)请将列表l2=[1,'a'3,4,'heart']的每一个元素添加到列表li中,一行代码实现,不允许循环添加。 l2=[1,'a',3,4,'heart'] li.extend(l2) print(li) # 6)请将字符串s= 'qwert’的每一个元素添加到列表li中,一行代码实现,不允许循环添加。 s = 'qwert' li.extend(s) print(li) # 7)请删除列表中的元素'a三',并输出添加后的列表。 li.pop(2) print(li) # 8)请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表