这是关于Python的第11篇文章,主要介绍下数据结构的3个小技巧。

排序:

使用sorted函数实现排序。

sorted函数按照长短、大小、英文字母的顺序给每个列表的元素进行排序。这个函数经常在数据展示中使用,其中很重要的一点是sorted函数不会改变列表本身,相当于先复制列表然后做排序整理。

 list = [2,45,21,3,2,1]
 print(sorted(list))
 # 数字默认从小到大排列
 print(sorted(list,reverse = True))
 # reverse,逆序排列
 print(list)
 # sorted函数不改变原列表

推导式(列表的解析式):

将10个元素装进列表中,看如下两种写法。

 # 普通写法
 a = []
 for i in range(1,11):
     a.append(i)
     # append方法用于在列表末尾添加新的对象
 print(a)

 # 推导式
 b = [i for i in range(1,11)]
 print(b

第一种是普通写法,先创建一个空列表,然后一个一个装进去。第二种是推导式,比较简洁明了。当然,推导式在效率上也会比普通方法好很多,我们可以来测算下时间:

 import time

 # 普通写法
 a = []
 t1 = time.clock()
 for i in range(1,20000):
     a.append(i)
 print(time.clock() - t1)

 # 推导式
 t2 = time.clock()
 b = [i for i in range(1,20000)]
 print(time.clock() - t2)

循环列表时获取元素的索引:

比如,在字母表 letters = ['a','b','c','d','e','f','g'] 中,得到每个元素的位置。

 letters = ['a','b','c','d','e','f','g']
 for num,letter in enumerate(letters):
     # enumerate函数用于遍历序列中的元素以及它们的下标
     print(letter,'在第',num + 1,'个位置')

后续,开始接触Python中的类。

操作环境:Python版本,3.6;PyCharm版本,2016.2;电脑:Mac

-----   End   -----

作者:杜王丹,微信公众号:杜王丹,互联网产品经理。

Python入门:数据结构的3个小技巧的更多相关文章

  1. Python对list操作的一些小技巧

    Python对list操作的一些小技巧  由于要搞数学建模,于是从熟悉已久的C++转战Python.虽然才上手,但是Python的语法糖就让我大呼过瘾.不得不说相比于C/C++,Python对于数据的 ...

  2. Python 入门之代码块、小数据池 与 深浅拷贝

    Python 入门之代码块.小数据池 与 深浅拷贝 1.代码块 (1)一个py文件,一个函数,一个模块,终端中的每一行都是代码块 (代码块是防止我们频繁的开空间降低效率设计的,当我们定一个变量需要开辟 ...

  3. http://www.yyne.com/python使用-urllib-quote-进行-url-编码小技巧/

    http://www.yyne.com/python使用-urllib-quote-进行-url-编码小技巧/

  4. python 设计及调试的一些小技巧

    在“笨办法学习python”中介绍了一些设计函数以及调试技巧: 参考网址:http://www.jb51.net/shouce/Pythonbbf/latest/ex36.html If 语句的规则¶ ...

  5. Python中Template使用的一个小技巧

    Python中Template是string中的一个类,可以将字符串的格式固定下来,重复利用. from string import Template s = Template("there ...

  6. python 数据结构中被忽视的小技巧

    一.一个包含N个元素的字符串.元组.序列.以及任何可迭代对象均可以拆分成N个单独的“变量” 1.字符串的拆分 #字符串 In [10]: s="abdefg" In [11]: o ...

  7. Python最好IDE:Pycharm使用小技巧总结,让你写代码更为舒适

  8. 今天整理了几个在使用python进行数据分析的常用小技巧、命令。

    提高Python数据分析速度的八个小技巧 01 使用Pandas Profiling预览数据 这个神器我们在之前的文章中就详细讲过,使用Pandas Profiling可以在进行数据分析之前对数据进行 ...

  9. Python爬虫简单入门及小技巧

    刚刚申请博客,内心激动万分.于是为了扩充一下分类,随便一个随笔,也为了怕忘记新学的东西由于博主十分怠惰,所以本文并不包含安装python(以及各种模块)和python语法. 目标 前几天上B站时看到一 ...

随机推荐

  1. Android开发——代码中实现WAP方式联网

    ,移动和联通的WAP代理服务器都是10.0.0.172,电信的WAP代理服务器是10.0.0.200. 在Android系统中,对于获取手机的APN设置,需要通过ContentProvider来进行数 ...

  2. 四分历python实现

    根据一个新加坡人的c代码改写成python代码 ''' 四分历''' # zq = 0 month = 0 def main(): global month year = 1 rb_year = 0 ...

  3. 在CentOS上安装Mysql使用yum安装mysql

    https://jingyan.baidu.com/article/c74d600079be530f6a595dc3.html

  4. UWP 滚动条私人定制

    最近突然发现微软自带的滚动条好挫哦 微软哒(棒棒哒) 网上找的(美美哒) 好了. 如果你想要棒棒哒,那么就不用往下看了(手动再见). 如果你想要美美哒,就需要下面的神秘代码. <Style Ta ...

  5. python 利用urllib 获取办公区公网Ip

    import json,reimport urllib.requestdef GetLocalIP(): IPInfo = urllib.request.urlopen("http://ip ...

  6. GrADS,NCL一些经验

    GrADS画特定经线方法 set clevs 23.5; d lat set clevs 120;d lon GrADS 查看多个打开文件的ctl q ctlinfo 1 q ctlinfo 2 .. ...

  7. 写高并发程序时慎用strncpy和sprintf

    分享一下最近做程序优化的一点小心得:在写高并发交易代码时要谨慎使用strncpy和sprintf. 下面详细介绍一下这样说的原因及建议实践: 1 慎用strncpy因为它的副作用极大 我们平时使用st ...

  8. 基于Centos7的比特币源码编译

    因为一直比较熟悉Windows平台的开发,本来打算在windows下进行编译,但查了一些文章,发现还是在linux下编译成本最低,所以这里就以手头现有的Centos7环境进行代码编译.   一.代码获 ...

  9. Unity萌新日记—开发小技巧与冷知识(脚本篇)

    在学习unity的过程中,总会遇到很多零碎的知识点和小技巧,在此把它们记录下来,方便日后查看. 第一篇是关于脚本的一些你可能不知道的小知识. 还是个正在学习的萌新,如果写的不好,请谅解. Unity版 ...

  10. kali虚拟机安装后操作[配置ssh,安装vmtools,更新源]

    更新源 # 打开控制台, 输入以下命令打开编辑器修改配置文件 $ leafpad /etc/apt/sources.list #kali官方源 deb http://http.kali.org/kal ...