python3 编程使用技巧
- from random import randint
- data = {"Student{}".format(i):randint(60,100) for i in range(1,21)}
- 如何在list中筛选数据
[x for x in arr if x >=60]
- 如何在set中筛选数据
[x for x in s if x >=60]
- 如何在dict中筛选数据
{k:v for k,v in data.items() if v >= 60}
filter(lambda x:x[1] >= 90,data.items()) - 给typle中的元素命名
>>> s = ('Jim', 16, 'male', 'myheed@gmail.com')
>>> from enum import IntEnum
>>> class StudentEnum(IntEnum):
... NAME = 0
... AGE = 1
... SEX = 2
... EMAIL = 3
...
>>> StudentEnum.NAME
<StudentEnum.NAME: 0>
>>> s[StudentEnum.NAME]
'Jim'
>>> s[StudentEnum.AGE]
16nameTuple
>>> from collections import namedtuple
>>> namedtuple('Student', ['name', 'age', 'sex', 'email'])
<class '__main__.Student'>
>>> SS = namedtuple('Student', ['name', 'age', 'sex', 'email'])
>>> SS
<class '__main__.Student'>
>>> s1 = SS('Jim',16, 'male', email='sunzhuo@bupt.edu.cn')
>>> s1
Student(name='Jim', age=16, sex='male', email='sunzhuo@bupt.edu.cn')
>>> s1.name
'Jim' - dict中元素进行排序
>>> from random import randint
>>> d = {k: randint(60,100) for k in 'abcdefgh'}
>>> d
{'a': 70, 'b': 85, 'c': 81, 'd': 89, 'e': 82, 'f': 69, 'g': 64, 'h': 84}
>>> [(v,k)for k,v in d.items()]
[(70, 'a'), (85, 'b'), (81, 'c'), (89, 'd'), (82, 'e'), (69, 'f'), (64, 'g'), (84, 'h')]
>>> l = [(v,k)for k,v in d.items()]
>>> sorted(l)
[(64, 'g'), (69, 'f'), (70, 'a'), (81, 'c'), (82, 'e'), (84, 'h'), (85, 'b'), (89, 'd')]
>>> sorted(l, reverse = True)
[(89, 'd'), (85, 'b'), (84, 'h'), (82, 'e'), (81, 'c'), (70, 'a'), (69, 'f'), (64, 'g')]
>>> dict(sorted(l, reverse = True))
{89: 'd', 85: 'b', 84: 'h', 82: 'e', 81: 'c', 70: 'a', 69: 'f', 64: 'g'}
>>> sorted(d.items(), key=lambda item: item[1], reverse=True)
[('d', 89), ('b', 85), ('h', 84), ('e', 82), ('c', 81), ('a', 70), ('f', 69), ('g', 64)]>>> res = sorted(d.items(), key=lambda item: item[1], reverse=True)
>>> res
[('d', 89), ('b', 85), ('h', 84), ('e', 82), ('c', 81), ('a', 70), ('f', 69), ('g', 64)]
>>> enumerate(res,1)
<enumerate object at 0x1079de558>
>>> list(enumerate(res,1))
[(1, ('d', 89)), (2, ('b', 85)), (3, ('h', 84)), (4, ('e', 82)), (5, ('c', 81)), (6, ('a', 70)), (7, ('f', 69)), (8, ('g', 64))]
>>> for i, (k,v) in enumerate(res,1):
... print(i,k,v)
...
1 d 89
2 b 85
3 h 84
4 e 82
5 c 81
6 a 70
7 f 69
8 g 64
>>> d
{'a': 70, 'b': 85, 'c': 81, 'd': 89, 'e': 82, 'f': 69, 'g': 64, 'h': 84}
>>> for i, (k,v) in enumerate(res,1):
... d[k] = (i,v)
...
>>> d
{'a': (6, 70), 'b': (2, 85), 'c': (5, 81), 'd': (1, 89), 'e': (4, 82), 'f': (7, 69), 'g': (8, 64), 'h': (3, 84)}
>>> {k:(i,v) for i,(k,v) in enumerate(res, 1)}
{'d': (1, 89), 'b': (2, 85), 'h': (3, 84), 'e': (4, 82), 'c': (5, 81), 'a': (6, 70), 'f': (7, 69), 'g': (8, 64)} - 关于zip
>>> zip([1,2,3],[3,4,5,6])
<zip object at 0x1079df348>
>>> list(zip([1,2,3],[3,4,5,6]))
[(1, 3), (2, 4), (3, 5)]
>>> list(zip([1,2,3],[3,4]))
[(1, 3), (2, 4)] - 词频统计
word_list = re.split("\W+", txt)
c2 = Counter(word_list)
c2.most_common(10)
python3 编程使用技巧的更多相关文章
- 3D游戏编程大师技巧──2D引擎的编译问题
接上一篇文章,这里将介绍2D引擎的编译,从现在开始才真正进入<3D游戏编程大师技巧>的学习.本书的第一.二章只是简介了游戏编程和windows编程,从第三章开始才是介绍<window ...
- 3D游戏编程大师技巧──环境搭建
刚开微博,想借助这个平台与大家交流,写下自己的学习记录,希望得到大家的批评指正. 好了,进入主题.这段时间对游戏编程很感兴趣,于是在网友的推荐下开始学习<3D游戏编程大师技巧>这本书.今天 ...
- 提高php编程效率技巧
提高php编程效率技巧 投稿:mrr 字体:[增加 减小] 类型:转载 时间:2015-08-13 php是全球范围应用范围最广的开发语言,php和linux.apache.mysql紧密结合,形 ...
- opencv编程入门技巧
opencv编程入门技巧 最近在项目中负责图像处理模块的编程工作,主要分为两个板块,一是视频图像去雾,二是可视.红外图像融合.为了提升开发效率,遂开始学习并使用opencv图像类库,效果很好的说~因为 ...
- python012 Python3 编程第一步
Python3 编程第一步在前面的教程中我们已经学习了一些 Python3 的基本语法知识,下面我们尝试来写一个斐波纳契数列.实例如下: #!/usr/bin/python3 # Fibonacci ...
- Python3 编程之字符串处理
Python3 编程之字符串处理 在编程中最常见的任务就是字符串的处理,So,学好字符串的使用非常重要 一.变量的定义规范 Python中声明变量时,要符合以下规则为准: 只能使用数字.字母.下划线组 ...
- Java编程小技巧(1)——方法传回两个对象
原文地址:Java编程小技巧(1)--方法传回两个对象 | Stars-One的杂货小窝 题目是个伪命题,由Java语法我们都知道,方法要么返回一个对象,要么就不返回 当有这样的情况,我们需要返回两个 ...
- python3编程的一些实用技巧1
1.choice函数:返回一个列表,元组,字符串的随机项 : 调用时应导入random模块,如from random import choice 2.print 两个字符串, 逗号,+号进行连 ...
- python3编程技巧二——如何在列表、字典、集合 中根据条件筛选数据
一.列表筛选数据 # coding=utf-8 from random import randint # 创建随机列表 l = [randint(-10, 10) for i in range(10) ...
随机推荐
- CloudSim源代码学习——云数据中心(Datacenter)
package org.cloudbus.cloudsim; import java.text.DecimalFormat;//十进制 import java.util.ArrayList; impo ...
- Loadrunner 脚本开发-soap_request函数介绍及WebService接口测试
脚本开发- soap_request函数介绍及WebService接口测试 by:授客 QQ:1033553122 函数介绍 soap_request 函数执行一个SOAP请求 函数原型 int so ...
- js replace替换 忽略大小写问题
实现就是控制台的内容“abc”,但是后台返回的是“ABC”,这个时候在前台遍历,需要将后台返回的在控制台标红. 当然控制台可以是 abc Abc等大小写混合,以下代码都可替换. var flagnew ...
- git批量修改已经提交的commit的姓名和邮箱
首先,我们创建change.sh脚本,并根据个人信息复制以下脚本. #!/bin/sh git filter-branch --env-filter ' OLD_EMAIL="填写原来的邮箱 ...
- C#微信公众号开发——获取access_token
access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token.正常情况下access_token有效期为7200秒(两个小时),微信获取access_token接 ...
- Python数据分析_Pandas_窗函数
窗函数(window function)经常用在频域信号分析中.我其实不咋个懂,大概是从无限长的信号中截一段出来,然后把这一段做延拓变成一个虚拟的无限长的信号.用来截取的函数就叫窗函数,窗函数又分很多 ...
- 什么是ORM?为啥要是用ORM?
了解orm,先了解以下概念: 什么是“持久化” 持久(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘).持久化的主要应用是将内存中的数据存储在关系型的数据库中 ...
- 如何快速安装visual studio 2017和破解
https://sm.myapp.com/original/Development/vs_community__1229872941.1512460494-v15.5.0.exe visual stu ...
- 控件布局_LinearLayout的嵌套
import android.os.Bundle; import android.app.Activity; public class Layout03 extends Activity { @Ove ...
- 【美妙的Python之三】Python 对象解析
美妙的Python之Python对象 简而言之: Python 是能你无限惊喜的语言.与众不同. Python对象概念的理解,是理解Python数据存储的前提.Pyth ...