当前位置: 首页 > 编程笔记 >

Python cookbook(数据结构与算法)将序列分解为单独变量的方法

慕凌
2023-03-14
本文向大家介绍Python cookbook(数据结构与算法)将序列分解为单独变量的方法,包括了Python cookbook(数据结构与算法)将序列分解为单独变量的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了Python cookbook(数据结构与算法)将序列分解为单独变量的方法。分享给大家供大家参考,具体如下:

如果对象是可迭代的(任何序列),则可以进行分解操作,包括元组、列表、字符串、文件、迭代器以及生成器,可通过简单的一个赋值操作分解为单独的变量。

唯一要求:变量的总数和序列相吻合,否则将出错;

Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015, 20:32:19) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> p=[4,5]
>>> p
[4, 5]
>>> x,y=p
>>> x
4
>>> y
5
>>> data=['lucy',50,12.1,(2016,07,31)]
>>> data
['lucy', 50, 12.1, (2016, 7, 31)]
>>> name,shares,price,date=data
>>> name
'lucy'
>>> shares
50
>>> price
12.1
>>> date
(2016, 7, 31)
>>> name,shares,price,(year,mon,day)=data
>>> name
'lucy'
>>> shares
50
>>> price
12.1
>>> year
2016
>>> mon
7
>>> day
31
>>> s='hello'
>>> s
'hello'
>>> a,b,c,d,e=s
>>> c
'l'
>>> d
'l'
>>> e
'o'
>>> data=['lucy',50,12.1,(2016,07,31)]
>>> _,shares,price,_=data #当想丢弃某些值时,可以选一个用不到的变量名作为要丢弃的值的名称,比如此处“_”
>>> shares
50
>>> price
12.1
>>>

注意:请确保丢弃的值选择的变量名在其他地方未曾用到过。

代码摘自《Python Cookbook》)

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

 类似资料:
  • 分治和回溯其实本质上就是递归,只不过它是递归的其中一个细分类。可以认为 分治和回溯 最后就是 一种特殊的递归 或者是较为复杂的递归即可。 分治算法,即分而治之(divide and conquer,D&C),把 一个复杂问题 分成 两个或更多 的相同或相似 子问题,直到最后子问题可以简单地直接求解,最后将子问题的解合并为原问题的解。 分治法的核心思想就是,将原问题分解成小问题来求解,只要遵循三个步

  • 常见排序算法 稳定排序: 冒泡排序 — O(n²) 插入排序 — O(n²) 桶排序 — O(n); 需要 O(k) 额外空间 归并排序 — O(nlogn); 需要 O(n) 额外空间 二叉排序树排序 — O(n log n) 期望时间; O(n²)最坏时间; 需要 O(n) 额外空间 基数排序 — O(n·k); 需要 O(n) 额外空间 不稳定排序 选择排序 — O(n²) 希尔排序 — O

  • 排序算法的评价 稳定性 稳定排序算法会依照相等的关键(换言之就是值)维持纪录的相对次序。也就是一个排序算法是稳定的,就是当有两个有相等关键的纪录R和S,且在原本的串行中R出现在S之前,在排序过的串行中R也将会是在S之前。 计算复杂度(最差、平均、和最好表现) 依据串行(list)的大小(n),一般而言,好的表现是O(nlogn),且坏的行为是O(n2)。对于一个排序理想的表现是O(n)。仅使用一个

  • 本文向大家介绍Javascript数据结构与算法之列表详解,包括了Javascript数据结构与算法之列表详解的使用技巧和注意事项,需要的朋友参考一下 前言:在日常生活中,人们经常要使用列表,比如我们有时候要去购物时,为了购物时东西要买全,我们可以在去之前,列下要买的东西,这就要用的列表了,或者我们小时候上学那段时间,每次考完试后,学校都会列出这次考试成绩前十名的同学的排名及成绩单,等等这些都是列

  • leetcode/lintcode上的算法题 关于问题的答案和解体的思路,可以移步 : https://github.com/zhaozhengcoder/Algorithm About 这个仓库最初的想法是把lintcode/lintocde上面的算法题目整理一下,因为很多题目太多了显得太乱了,就不继续在GitHub上面写了,以前写的一部分移到我的博客上面了。 GitHub上面打算整理一些比较典

  • KMP算法解决的问题是字符匹配,这个算法把字符匹配的时间复杂度缩小到O(m+n),而空间复杂度也只有O(m),n是target的长度,m是pattern的长度。 部分匹配表(Next数组):表的作用是 让算法无需多次匹配S中的任何字符。能够实现线性时间搜索的关键是 在不错过任何潜在匹配的情况下,我们”预搜索”这个模式串本身并将其译成一个包含所有可能失配的位置对应可以绕过最多无效字符的列表。 Nex