作为本科用了多年MATLAB的工科生,学起来python有些似曾相识但也有些不习惯的地方。

在这里总结一下,慢慢整理,希望能巩固python语法

一、前闭后开

这个是和MATLAB很大不同。不论是range还是数组的切片等,python在这里都是前闭后开原则

查看代码

range(6, 11) # [6, 7, 8, 9, 10]
range(1, 10, 2) # [1, 3, 5, 7, 9]
range(10, 0, -1) # [10, 9, 8, 7, 6, 5, 4, 3, 2, 1] a = range(1,10)
b = a[1:3]
import numpy
b= numpy.array(b)
b # [2,3]

二、Pandas DataFrame

testdf3 = pd.DataFrame(
{"A": np.arange(5),
"B": pd.Timestamp("20171129"),
"C": pd.Series(1, index =np.arange(5), dtype = "float32"),
"D": np.array([3]*5),
"E": pd.Categorical(["test", "train", "test", "train","test"]),
"F": 'foo'})

行操作:

testdf3.iloc[0] # pandas series
testdf3.iloc[[0]] # dataframe testdf3[2:3] # data frame
testdf3.iloc[2:3] # data frame

列操作:

testdf3['A'] # 单独一列是个series
testdf3.loc[:,'A'] # 同上,但比较复杂,一般不用
testdf3.iloc[:,0] # 同上,可以在不知道列名的时候用 testdf3[['A']] #单独一列是个df
testdf3.loc[:,['A']] # 同上,但比较复杂,一般不用
testdf3.iloc[:,[0]] # 同上,可以在不知道列名的时候用 testdf3[['A','C']] # DF, 指定某几列,直接用列名
testdf3.loc[:,['A','C']] # 同上,但比较复杂,一般不用
testdf3.iloc[:,[0,2]] # 同上,可以在不知道列名的时候用 '''取指定的连续几列,不能偷懒了,必须用.loc'''
testdf3.loc[:,'A':'D'] #指定连续列,用列名
testdf3.iloc[:,0:4] # 指定连续列,用数字

同时取行和列:

'''第一种情况,列索引用数字'''
testdf3.iloc[[1,3],[0]] # dataframe
testdf3.iloc[[1,3],0] # series
testdf3.iloc[[1,3],1:3] # dataframe
testdf3.iloc[[1,3],[1,3]] '''第二种情况,列索引用列名'''
testdf3.loc[1,["A","D"]] # series 对应上述1.1
testdf3.loc[[1],["A","D"]] # df 对应上述1.1
testdf3.loc[[1,3],"A":"D"] # df 对应上述1.2
testdf3.loc[[1,3],["A","D"]] # df 对应上述1.3

【python】一些python用法规律笔记的更多相关文章

  1. python核心编程第二版笔记

    python核心编程第二版笔记由网友提供:open168 python核心编程--笔记(很详细,建议收藏) 解释器options:1.1 –d   提供调试输出1.2 –O   生成优化的字节码(生成 ...

  2. python x[:] x[::]用法总结

    python x[:] x[::]用法总结 X[:,0] # 二维数组取第1维所有数据 X[:,1] # 第2列 X[0,:] # 第1行 X[3,:] # 第三行 X[1:4,:] # 第一二三行 ...

  3. 用Python 的一些用法与 JS 进行类比,看有什么相似?

    Python 是一门运用很广泛的语言,自动化脚本.爬虫,甚至在深度学习领域也都有 Python 的身影.作为一名前端开发者,也了解 ES6 中的很多特性借鉴自 Python (比如默认参数.解构赋值. ...

  4. $《利用Python进行数据分析》学习笔记系列——IPython

    本文主要介绍IPython这样一个交互工具的基本用法. 1. 简介 IPython是<利用Python进行数据分析>一书中主要用到的Python开发环境,简单来说是对原生python交互环 ...

  5. Python高阶用法总结

    目录 1. lambda匿名函数 1.1 函数式编程 1.2 应用在闭包 2. 列表解析式 3. enumerate内建函数 4. 迭代器与生成器 4.1 迭代器 4.3 生成器 5. 装饰器 前言: ...

  6. Ubuntu下配置python完成爬虫任务(笔记一)

    Ubuntu下配置python完成爬虫任务(笔记一) 目标: 作为一个.NET汪,是时候去学习一下Linux下的操作了.为此选择了python来边学习Linux,边学python,熟能生巧嘛. 前期目 ...

  7. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

  8. day01-day04总结- Python 数据类型及其用法

    Python 数据类型及其用法: 本文总结一下Python中用到的各种数据类型,以及如何使用可以使得我们的代码变得简洁. 基本结构 我们首先要看的是几乎任何语言都具有的数据类型,包括字符串.整型.浮点 ...

  9. 【Python】关于Python有意思的用法

    开一篇文章,记录关于Python有意思的用法,不断更新 1.Python树的遍历 def sum(t): tmp=0 for k in t: if not isinstance(k,list): tm ...

随机推荐

  1. Camunda开源流程引擎快速入门——Hello World

    市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.由于jbpm.activiti.flowable这几个流程引擎出现的比较早,国内人用的 ...

  2. 你真的很了解printf函数吗?

    对C语言中经常使用的printf这个库函数,你是否真的吃透了呢? 系统化的学习C语言程序设计,是不是看过一两本C语言方面的经典著作就足够了呢?答案是显而易见的:不够.通过这种典型的入门级的学习方式,是 ...

  3. 视图模板引擎——Vue【双向绑定】原理剖析

    首先我们来了解一下MVC.MVP.MVMM这三大架构模式在前端角度上的理解. MVC分别是 Model(模型).View(视图).Controller(控制器)三个模块.View(视图层)最主要完成前 ...

  4. JavaScript易错知识点

    JavaScript易错知识点整理1.变量作用域上方的函数作用域中声明并赋值了a,且在console之上,所以遵循就近原则输出a等于2. 上方的函数作用域中虽然声明并赋值了a,但位于console之下 ...

  5. RPA应用场景-银行回单查询

    场景概述银行回单查询 所涉系统名称银行网银 人工操作(时间/次) 5 分钟 所涉人工数量 4 操作频率不定时 场景流程 1.收到外派业务员申请查询收入银行回单的邮件: 2.依据邮件中提供的客户信息进入 ...

  6. 深入解析kubernetes中的选举机制

    Overview 在 Kubernetes的 kube-controller-manager , kube-scheduler, 以及使用 Operator 的底层实现 controller-rumt ...

  7. (数据库提权——Redis)Redis未授权访问漏洞总结

    一.介绍 1.Redis数据库 Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key- ...

  8. mt19937 用法

    老是忘记怎么用,自己写一个用作备忘录吧. 首先需要的头文件: #include <random> 或者是 #include <bits/stdc++.h> //万能头 yyds ...

  9. 在矩池云使用Disco Diffusion生成AI艺术图

    在 Disco Diffusion 官方说明的第一段,其对自身是这样定义: AI Image generating technique called CLIP-Guided Diffusion.DD ...

  10. day03 Java_运算符_分支结构

    列表: 运算符的练习:算术.关系.逻辑.赋值.字符串连接.条件 分支结构的练习:if结构 分支结构的练习:if...else结构 参考 运算符的练习:算术 输出几个整数取模,验证结果 声明两个整型变量 ...