精华内容
下载资源
问答
  • python 元祖

    2019-04-19 13:28:08
    元祖 用 “()” 表示,内部元素用逗号隔开,它是列表数据格式的简化后的版本,不能进行赋值,类似于制度列表。 2、功能代码 # -*- coding: utf-8 -*- #1 print('\n#1') zlst=('hello','PyQt5','.','com') vlst=('...

    1、简介

    元祖 用 “()” 表示,内部元素用逗号隔开,它是列表数据格式的简化后的版本,不能进行赋值,类似于制度列表。

    2、功能代码

    # -*- coding: utf-8 -*-
    
    #1
    print('\n#1')
    zlst=('hello','PyQt5','.','com')
    vlst=('Top','Quant','.','vip')
    print('zlst,',zlst)
    print('vlst,',vlst)
    
    #2
    print('\n#2')
    s2=zlst[1:];print('s2,',s2)
    s3=zlst[1:3];print('s3,',s3)
    s4=vlst[:3];print('s4,',s4)
    
    #3
    print('\n#3')
    print('s2+s3,',s2+s3)
    print('s3*2,',s3*2)
    
    
    

    在这里插入图片描述

    用法和list 相似
    文件参考:
    PyQt 快速开发与实践

    本人郑重声明,本博客所著文章、图片版权归权利人持有,本博只做学习交流分享所用,不做任何商业用途。访问者可將本博提供的內容或服务用于个人学习、研究或欣赏,不得用于商业使用。同時,访问者应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人的合法权利;如果用于商业用途,须征得相关权利人的书面授权。若以上文章、图片的原作者不愿意在此展示內容,请及时通知在下,將及时予以刪除。

    展开全文
  • dict["key"] = [{"k1":"v1"},{"k2", "v2"}] 赋值后的结果dict["key"] = ([{"k1":"v1"},{"k2", "v2"}],),前端遍历数据,会把元祖转化成列表。返回前端的就是dict["key"] = [[{"k1":"v1"},{"k2", "v2"}],]]。 二、...

    一、现象

    dict["key"] = [{"k1":"v1"},{"k2", "v2"}] 赋值后的结果dict["key"] = ([{"k1":"v1"},{"k2", "v2"}],),前端遍历数据,会把元祖转化成列表。返回前端的就是dict["key"] = [[{"k1":"v1"},{"k2", "v2"}],]]。

    二、解决办法

    改变赋值的方式

    改成

    dict = {
    "key" : [{"k1":"v1"},{"k2", "v2"}]
    }

     

    展开全文
  • 1:元祖的创建 一:使用赋值运算符直接创建元祖 直接使用赋值运算符,中间使用逗号分隔开。。 tuplename = (1,2,3,4) ...test = ('python',28,('人生苦短,我用python'),['人工智能','爬虫','web']) # 元祖的嵌套,...

    1:元祖的创建

    一:使用赋值运算符直接创建元祖

    直接使用赋值运算符,中间使用逗号分隔开。。
    tuplename = (1,2,3,4)
    以下的都属于正确的创建方式

    num = (1,2,3,4,5,6)
    nba = ('火箭','湖人','快船','鹈鹕','')
    test = ('python',28,('人生苦短,我用python'),['人工智能','爬虫','web']) # 元祖的嵌套,
    test1 = ('python',) # 用都号隔开也是可以的,
    test2 = () # 创建一个空的列表
    test3 = tuple(range(10,20,2)) # 创建数值列表
    

    元祖和列表类似,列表是使用中括号 [] 括起来的,但是元祖是使用小括号 () 括起来的,type()函数是检查数据类型的函数,可以使用type()检查下你数据是什么类型。

    2:删除元祖

    一般在实际中开发是很少删除元祖的,因为python的垃圾回收机制,会自动销毁不用的元祖。

    num = (1,2,3,4,5,6)
    print num
    del num
    print num # 删除之后再打印是会报错的。
    

    3:访问元祖元素

    num = (1,2,3,4,5,6)
    nba = ('火箭','湖人','快船','鹈鹕','勇士')
    test = ('python',28,('人生苦短,我用python'),['人工智能','爬虫','web'])
    print nba[2] # 也是和列表一样的使用下标来访问,同时也是可以支持for循环的。
    

    访问元祖是和列表类似的。

    4:修改元祖

    因为元祖属于不可变类型,所以是没有办法直接进行修改的,想要改变的话可以重新赋值。

    num = (1,2,3,4,5,6)
    print ('old', num)
    num = (6,5,4,3,2,1)
    print ('new', num)
    # ('old', (1, 2, 3, 4, 5, 6))
    # ('new', (6, 5, 4, 3, 2, 1))
    

    还有一种方法就是合并

    # 还有一种方法就是合并
    num = (1,2,3,4,5,6)
    print ('old', num)
    num1 = num + (7,8,9,10)
    print ('new',num1)
    # ('old', (1, 2, 3, 4, 5, 6))
    # ('new', (1, 2, 3, 4, 5, 6, 7, 8, 9, 10))
    

    比较容易出现的错误是在两个元祖合并时,只有一个元素的元祖不要忘记加逗号。不然那会报错的。

    # 错误的代码示例
    num = (1,2,3,4,5,6) 
    num1 = num + (7)
    print num1
    # 正确的应该是加上逗号的。
    num = (1,2,3,4,5,6) 
    num1 = num + (7,)
    print num1
    

    我是阿旺,今天就到这吧,周日没有更新,因为项目的问题,慢慢来,虽然更新的只是一些基础,我相信一直坚持下去肯定会有收获的,明天更新元祖推导式

    展开全文
  • 1、在python2.6总nonlocal不可用 2、python中还是可以出现";"的,例如:x = 3 ; y = 5 ; print(x+y) ... spam,ham = 'yun','YNN' #元祖赋值运算 ['spam','ham'] = ['yun','YUM'] #列表赋值运算 ...

      

    1、在python2.6总nonlocal不可用
    2、python中还是可以出现";"的,例如:x = 3 ; y = 5 ; print(x+y)
    3、python中的集中赋值:
    	spam = 'spam'  #简单赋值
    	spam,ham = 'yun','YNN'  #元祖赋值运算
    	['spam','ham'] = ['yun','YUM']  #列表赋值运算
    	a,b,c,d = 'spam'  #序列赋值运算
    	a,*b	= 'spam' #	扩展序列解包
    	spam=ham='lunch'  #多目标赋值
    	spam += 412 #增强赋值运算
    3、序列赋值,
    	[a,b,c]=(1,2,3)
    	(a,b,c)="abc"
    	[a,b,c]='abc'
    	但是当两侧数目不一致时会报错。
    4、当两侧数目不一致时,序列解包可以解决这个问题
    	seq = [1,2,3,4]
    	a,*b = seq
    	print(a,b)  #输出:1,[2,3,4]  
    	*a,b = seq
    	print(a,b)  #输出:[1,2,3],4
    	a,*b,c = seq 
    	print(a,b,c)  #输出:1,[2,3],4
    	序列解包对任何序列都有效:
    	a,*b = 'spam'  #输出:s,pam
    	如果没有剩下的内容给带星号的名称,则会赋值一个空的列表
    	a,b,c,d,*e = seq  #输出:1,2,3,4,[]
    	a,b,*c,d,e = seq #输出1,2,[],3,4
    	#a,*b,c,*d=seq将会报错
    	#*a = seq  将会报错
    	*a, = seq 
    5、案例分析
    	a = b = 0
    	b = b+1
    	print(a,b)  #0,1
    	#修改b只对b有影响,
    6、列表的+和增强运算+=是有区别的,其中调用列表的extend的方法和增强+=效果一样。+=是在原处修改,而+是新建一个新的列表
    	L = [1,2,3,4]
    	t = [[1,2,3,4,5,6,7]]
    	k = L+t 
    	print(k)  #输出[1,2,3,4,[1,2,3,4,5,6,7]]
    	t[0][0] = -100
    	print(k)  #输出[1,2,3,4,[1,2,3,4,5,6,7]]
    	L = [1,2,3,4]
    	t = [[1,2,3,4,5,6,7]]
    	L+=t
    	print(L)  #输出:[1, 2, 3, 4,[ 1, 2, 3, 4, 5, 6, 7]]
    	t[0][0]=-100
    	print(L)  #输出:[1, 2, 3, 4, [-100, 2, 3, 4, 5, 6, 7]]
    	
    	L = [1,2,3,4]
    	t = [[1,2,3,4,5,6,7]]
    	L.extend(t)
    	print(L)  #输出:[1, 2, 3, 4,[ 1, 2, 3, 4, 5, 6, 7]]
    	t[0][0]=-100
    	print(L)  #输出:[1, 2, 3, 4, [-100, 2, 3, 4, 5, 6, 7]]
    	另外一个例子:
    	L = [1,2]
    	M = L
    	L = L + [3,4]
    	print(L,M)  #输出:[1,2,3,4],[1,2]
    	
    	L = [1,2]
    	M = L
    	L.extend([3,4])  #或者L+=[3,4]
    	print(L,M) #输出:[1,2,3,4][1,2,3,4]
    7、命名规则
    	单下划线开头不会被from module import * 导入 例如:_x
    	前后都有双下划线的是系统定义变量   例如:__doc__
    	前面有两个下划线,但是后面没有下划线的是类本地变量
    8、python3.0中的语法
    	print([object][,sep=' '][,end='\n'][,file=sys.stdout])  #等号后面都是默认值
    9、python2.6中
    	print x,y   等效于 print(x,y)
    	print x,y,  等效于print(x,y,end=''  #表示消除末尾的换行符
    	print >>myfile x,y  等效于 print(x,y,file=myfile)
    	如果想消除各个元素间的分隔符可以通过+或者格式化表示
    	print x+y 或者 '%s%s'%(x,y)
    10、print(x)等价于 如下 
    	import sys
    	sys.stdout.write(str(x)+'\n')
    11、可以设置sys.stdout为文件,例如:
    	import sys
    	temp = sys.stdout   #保存下来,方便以后调换过来
    	sys.stdout = open(r'f:/python/tsst.txt')   #或者 print(x,y,file=(open(r'f:/python/test.txt')))
    	print('hello,worl')
    	print(1,2,3)
    	sys.stdout.close()
    	sys.stdout = temp #又切换为原来
    	print('hello,worl')
    	print(1,2,3)
    12、错误信息也可以重定向
    	import sys
    	sys.stderr.write('bad'*8+'\n')
    	
    	或者print('bad'*8,file=sys.stderr)
    	
    

      

    转载于:https://www.cnblogs.com/hbcb533/p/3672140.html

    展开全文
  • python定义,从形式上看,元祖是被一对圆括号()括起来的。 python跟圆括号关系不大,跟逗号相关。 >>> vartuple = ('a','b',1) >>> type(vartuple) <class 'tuple'> >>> 元祖...
  • 05-Python 元祖及字典

    2020-05-04 22:37:06
    目的: 一、学习内容 元组简介 可变对象 字典简介 遍历字典 集合 二、学习笔记 1. 元组简介 ...• 元组是一个不可变序列(一般当我们希望数据不改变时...• 元组解包指将元组当中的每一个元素都赋值给一个变量 2. 可变...
  • 赋值运算符的特殊场景参考代码 a = 1,2 print(a) #此时a为元祖类型a=(1,2),此处括号省略 c,d = 3,4 print(c,d) #拆包 e,*f,g =5,6,7,8,9 print(e,'---', *f, '---',g)
  • python变量赋值小技巧

    2017-03-26 14:03:23
    序列中分解元素(列表,元祖,字符串) >>> testlist=['liuyi',24,'male'] >>> name,age,sex=testlist >>> print name,age,sex liuyi 24 male -------------------------------- >>> testtupe=('liuyi',24) >>> name...
  • python赋值和赋址

    千次阅读 2017-06-19 17:07:13
    python的数字和字符串的值是不变的(元祖也是不可变的),所以当一个变量(数字或字符串)进行值改变的操作时,其实是新开辟了一个地址来存放这个新值。 例如: a=2 b=a a=3 b 2 当执行a=3时,其实...
  • ython 文件 writelines() 方法用于向文件中写入一序列的字符串。 这一序列字符串可以是由迭代对象产生的,如一个...iterable -- 可迭代对象(字符串、列表、元祖、字典)。 返回值 该方法没有返回值。 转载于:https:...
  • python赋值和生成器

    2018-07-23 09:53:00
    python赋值过程中,对单个变量的赋值,在所有语言中都是通用的,如果是对两个变量同时进行赋值,这个时候,就会出现一点点小的差异。例如在下面的一两行代码中。 a , b = b , a+b  这是同时对两个变量进行...
  • python元祖tuple

    2018-04-04 09:21:00
    元祖Tuple:  tuple和list非常相似,但是tuple一旦初始化就不能修改,没有append(),insert()这样的方法。 其它获取元素的方法和list是一样的,你可以正常地使用classmates[0],classmates[-1],但它不能赋值成另外的...
  • python list和元祖

    2018-03-26 17:16:00
     在python中元祖是只能查询和读取的一组数据,在()内的赋值就是元祖,只有查询和读取的功能: 1.len()方法:查询元祖有多少个元素 s = ('2','3','4','5') print(len(s)) 结果: 4 2.count方法:...
  • 还有一个要注意的事项 这个时候, 看到格式有些不规范, 强行变换了格式之后, 结果出现了,把整个 要赋值的元素都给赋值了 待赋值的变量, 结果就偏离了原来想要的
  • python多个变量赋值

    2017-10-02 14:55:00
    1 a, b = 3, 4 2 c, d = 3, 4 3 4 a, b = b, a + b 5 c = d 6 d = c + d 7 print(a, b, c, d) ...先计算(b, a + b)的元祖为(4, 7)然后将该元祖赋值给(a, b) 其等于以下代码: ...
  • 对于字典、元祖、列表 而言,进行赋值、浅拷贝和深拷贝时,其内存地址的变化是不同的。 1、赋值 赋值,只是创建一个变量,该变量指向原来内存地址,如: 1 2 3 n1 = {"k1": "wu", "k2...
  • 赋值 == 比较值是否相等,is 比较,比较的是内存地址。 小数据池的作用是节省内存空间 数字的范围:-5 到 256 共用一个数据池 字符串范围:1.不能有特殊字符。2. s*20还是同一个地址,超过以后就是不用地址 3....
  • 本篇介绍Python中的元组数据类型,文中会讨论元组与列表的区别,元组的声明、赋值及其相关运算。通过本篇的学习,可以达成如下目标。 ● 掌握元组和列表的区别 ● 掌握元组的声明和赋值 ● 掌握适用于元组的相关运算...
  • 注意序列,可迭代对象 包括:列表、元祖、字符串、文件、迭代器和生成器 x=[1,2,3,4] # 变量和序列中的值要相等 a,b,c,d=x print(a,b,c,d) #1 2 3 4 2.解压可迭代对象赋值给多个变量 如果一个可迭代对象的元素个...
  • 赋值 浅拷贝 深拷贝 2.浅拷贝与深拷贝的不同: 浅拷贝只拷贝对象的外层,不拷贝内部子元素 深拷贝对象的外层和内层元素都会拷贝 总结: 对于外层是可变数据类型(列表,字典)进行浅拷贝会对外层开辟新的内存地址,...
  • python中关于元祖的+=的谜题 笔者在阅读《流畅的Python》时,看见了一个非常有意思的知识点,现在和大家分享一下: ...这在 python 当中并没有任何问题,即使再次使用列表索引赋值为另外一个元祖t2也并不冲...
  • [python]关于元祖 字符串 链表原创 2013年08月14日 09:48:...如坐标(X,Y)等元祖Python中的定义比较简单 只需在字符串和链表的赋值运算行的最后加上一个逗号即可如&gt;&gt;x='abcde'&gt;&gt...
  • python中,变量是对象的引用。变量赋值,即将变量指向值对象,对值对象的引用。 值对象的分类: 不可变对象 可变对象 值对象为不可变对象 不可变对象,通俗的讲,就是不可以改变对象的内容。比如:数字,字符串,...
  • python元祖,列表,字符串付给一个变量时,这个变量仅仅是参考而已。也就是说,原始对象改了,你新赋值的那个也一定会改。因此,要使用值传递,实现起来就是使用切片操作。其实,我们发现这也对于元祖的元素不包含...
  • # 当定义一个元祖其中只有一个元素时,必须在后面加多一个逗号,否则会变成赋值 tup = (1) print(tup) >>>1 tup = (1,) print(tup) >>>(1,) # 元祖一旦定义就无法改变,不能增加,也不能改变...
  • 元组与列表很相似,两者之间的差别在于,列表在初始化后其中的元素还可以进行增删改等操作,但是元组在初始化后其中的元素不能进行更改,列表在赋值时使用方括号[],而元组在赋值时使用小括号()。因为元组具有不可变...
  • 元祖数据类型1.1 元祖数据类型1.2 元祖的切片和索引1.3 元祖的常用操作1.4 元祖的常用方法1.5 len函数1.6 元祖的多变量赋值1.7 可变和不可变对象 1.1 元祖数据类型 元祖表示任意元素的序列,元素可以是任意数据类型...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 185
精华内容 74
关键字:

python元祖赋值

python 订阅