python数组操作

Python第一次作业

做~自己de王妃 提交于 2019-11-30 03:49:44
1.创建一个边界值为1而内部都是0的数组,图例如下: [提示:]解此题可以先把所有值都设置为1,这是大正方形;其次,把边界除外小正方形全部设置为0。 本题用到numpy的切片原理。多维数组同样遵循x[start:stop:step]的原理。 [1. 1. 1. 1. 1. 1. 1. 1. 1. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 0. 0. 0. 0. 0. 0. 0. 0. 1.] [1. 1. 1. 1. 1. 1. 1. 1. 1. 1.] import numpy as yf a=yf.ones((10,10)) a[1:-1,1:-1] = 0 print(a) 2.在数组主对角线上创建一个值为1,2,3,4的5x5矩阵,图例如下: [1 0 0 0] [0 2 0 0] [0 0 3 0] [0 0 0 4] import numpy as yf

javascript-ECMAScript

余生颓废 提交于 2019-11-30 00:53:05
javascript介绍 Web前端有三层: HTML:从语义的角度,描述页面 结构 CSS:从审美的角度,描述 样式 (美化页面) JavaScript:从交互的角度,描述 行为 (提升用户体验) 其中JavaScript基础又分为三个部分: ECMAScript:JavaScript的语法标准。包括变量、表达式、运算符、函数、if语句、for语句等。 DOM:文档对象模型,操作网页上的元素的API。比如让盒子移动、变色、轮播图等。 BOM:浏览器对象模型,操作浏览器部分功能的API。比如让浏览器自动滚动。 JavaScript历史背景介绍 布兰登 • 艾奇(Brendan Eich,1961年~),1995年在网景公司,发明的JavaScript。 一开始JavaScript叫做LiveScript,但是由于当时Java这个语言特别火,所以为了傍大牌,就改名为JavaScript。如同“北大”和“北大青鸟”的关系。“北大青鸟”就是傍“北大”大牌。 同时期还有其他的网页语言,比如VBScript、JScript等等,但是后来都被JavaScript打败了,所以现在的浏览器中,只运行一种脚本语言就是JavaScript ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers

双指针

此生再无相见时 提交于 2019-11-29 21:17:18
数组简介 数组 是一种基本的数据结构,用于按顺序 存储元素的集合 。但是元素可以随机存取,因为数组中的每个元素都可以通过数组 索引 来识别。 数组可以有一个或多个维度。这里我们从 一维数组 开始,它也被称为线性数组。这里有一个例子: 在上面的例子中,数组 A 中有 6 个元素。也就是说,A 的长度是 6 。我们可以使用 A[0] 来表示数组中的第一个元素。因此,A[0] = 6 。类似地,A[1] = 3,A[2] = 8,依此类推。 寻找数组的中心索引 给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法。 我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。 如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。 示例 1: 输入: nums = [1, 7, 3, 6, 5, 6] 输出: 3 解释: 索引3 (nums[3] = 6) 的左侧数之和(1 + 7 + 3 = 11),与右侧数之和(5 + 6 = 11)相等。 同时, 3 也是第一个符合要求的中心索引。 示例 2: 输入: nums = [1, 2, 3] 输出: -1 解释: 数组中不存在满足此条件的中心索引。 说明: nums 的长度范围为 [0, 10000]。 任何一个 nums[i]

前端05 /js基础

主宰稳场 提交于 2019-11-29 19:50:09
前端05 /js基础 昨日内容回顾 css选择器的优先级 行内(1000) > id(100) > 类(10) > 标签(1) > 继承(0) 颜色 rgb(255,255,255) #000000-#FFFFFF 单词表示 rgba(255,255,255,0.5)(透明度) 字体 font-family 设置"微软雅黑","宋体" font-size 设置字体大小 默认的字体大小16px font-weight bold粗体 文本 text-align 对齐方式 left(默认) right center text-decoration 字体的划线 none underline overline line-through line-height 设置行高 字体会自动在行高内垂直居中 text-indent 缩进em或px单位 背景 background-color :设置颜色 background-image :url('xxx.jpg') background-repeat :no-repeat background-position :水平位置 垂直位置 (left center right) (top center bottom) background-attachment:fixed background-size :调整背景图片的大小 background:颜色

numpy、pandas学习笔记

这一生的挚爱 提交于 2019-11-29 18:47:33
1、NumpyNumpy的核心对象:ndarray多维数组对象,数组允许使用类似于标量的操作语法在整块数据上进行数学计算(数组是一个矢量)。一个ndarray是一个通用的多维同类型数据容器,它包含的每一个元素均为相同类型。两个重要属性:shape,dtype,ndim生成ndarray的方法:  (1)、array函数,可接收任意的序列型对象(包括数组),比如列表、元组、字符串、数组,生成一个新的包含传递数据的Numpy数组。  (2)、创建特殊数组:zeros,zeros_like,ones,ones_like,empty,empty_like,full,full_like,eye(或者identity)。其中full有几个重要参数:shape,fill_value,dtype,order,fill_value指定元素值,order指定在内存中的存储方式,选项{'C','F'},是否在内存中以行为主(C风格)或列为主(Fortran风格)连续(行或列)顺序存储多维数据  (3)、其他:asarray,arange。astype:转换数组的数据类型算术运算:批量操作,无需循环注意:Numpy的切片不复制数据,而只是原数组的视图。这话怎么理解呢?Python中对列表的切片是会自动进行复制的,也就是说你切片得到的数据与原列表已经没有关系了,对切片得到的数据的任何操作不影响原列表

numpy的基本使用(一)

孤人 提交于 2019-11-29 17:18:11
numpy概述 numpy(Numerical Python)提供了python对多维数组对象的支持: ndarray ,具有矢量运算能力,快速、节省空间。numpy支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。 NumPy支持比Python更多种类的数值类型。NumPy数值是 dtype (数据类型)对象的实例,每个对象具有唯一的特征。 创建ndarray数组 ndarray :N维数组对象(矩阵),所有元素必须是相同类型。 ndarray属性:ndim属性,表示维度个数;shape属性,表示各维度大小;dtype属性,表示数据类型。 ndarray 内部由以下内容组成: 一个指向数据(内存或内存映射文件中的一块数据)的指针。 数据类型或 dtype,描述在数组中的固定大小值的格子。 一个表示数组形状(shape)的元组,表示各维度大小的元组。 一个跨度元组(stride),其中的整数指的是为了前进到当前维度下一个元素需要"跨过"的字节数。 数组创建函数 创建一个 ndarray 只需调用 NumPy 的 array 函数 即可: numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0) 参数说明: import numpy as np

八大排序算法python实现

我只是一个虾纸丫 提交于 2019-11-29 15:20:48
一、概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 我们这里说说八大排序就是内部排序。 当n较大,则应采用时间复杂度为 O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。 快速排序:是目前基于比较的内部排序中被认为是最好的方法,当待排序的关键字是随机分布时,快速排序的平均时间最短; unsortedList=[55, 91, 63, 71, 72, 7, 74, 16, 4, 31, 100, 51, 94, 35, 49, 46, 43, 59, 18, 17] 二、 算法 实现 1.插入排序——直接插入排序(Straight Insertion Sort) 基本思想: 将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表。即:先将序列的第1个记录看成是一个有序的子序列,然后从第2个记录逐个进行插入,直至整个序列有序为止。 要点:设立哨兵,作为临时存储和判断数组边界之用。 直接插入排序示例: 从后往前插入 如果碰见一个和插入元素相等的,那么插入元素把想插入的元素放在相等元素的后面。所以,相等元素的前后顺序没有改变,从原无序序列出去的顺序就是排好序后的顺序, 所以插入排序是稳定的。 (无哨兵)直接插入排序——算法的实现: def

各种排序算法的Python实现。

ε祈祈猫儿з 提交于 2019-11-29 15:17:26
大学的算法导论课确实是混过去的,到了毕业的时候结果连个冒泡排序都不能裸写出来,只记得一些算法的基本理论,如分治法、递归、动态规划、回溯、图论、时间空间理论这些。大概知道这些排序算法的实现原理,真在纸上写出来脑子又是一团浆糊。最近在网上看到九章算法的网络课程费用是1299,团购价是799,真是狠不下心去买,也后悔大学里没好好学点算法,浪费了那些学费。 今天花了一天的时间用Python实现了7种排序算法,刚开始的时候觉得非常乱,完全不知道怎么写。不过写着写着思路就变得清晰了,对于排序算法的理解也越发清晰了,好像脑子里有一排数字在比来比去、移来移去,真的是非常有意思。真得感叹一声, 抽象能力真的是软件工程师的必备能力啊 ! 排序算法的本质其实是数字的各种比较方式和移动方式。回到我们大一C语言求一个数组中的最大数和最小数的那门上机课上。其实现原理很简单,就是把第一个数字作为初始数字跟后面的数字依次比较,若后面的数字比它大就跳过,若比它小就拿后面的数字替换掉它,直到遍历这个数组结束,最后得出的这个数就是最小数。 def the_min_of_lists(lists): min = lists[0] for i in range(1,len(lists)): if min > lists[i]: min,lists[i] = lists[i],min return min 冒泡排序

numpy---(上)

冷暖自知 提交于 2019-11-29 14:47:13
Numpy Numpy ndarray N维数组对象ndarray, 是一系列同类型数据的集合, 索引以0下标开始, 创建一个ndarray对象, 需调用array函数: numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0) 名称 描述 object 数组或嵌套的数列 dtype 数组元素的数据类型, 可选, 默认为None copy 是否需要复制, 可选, 默认为True order 创建数组的样式, C为行方向, F为列方向, A为任意方向(默认), 默认为None subok 默认返回一个与基类类型一致的数组, 默认为False ndmin 指定生成数组的最小维度, 默认为0 实例 import numpy as np a = np.array([1, 2, 3]) print(a) # [1 2 3] # 多一个维度 a1 = np.array([[1, 2],[3, 4]]) print(a1) # [[1 2] # [3 4]] # 最小维度 a2 = np.array([1,2, 3, 4, 5], ndmin=2) print(a2) # [[1 2 3 4 5]] # dtype参数 a3 = np.array([1, 2, 3], dtype

数据分析之numpy

好久不见. 提交于 2019-11-29 14:46:34
一、NumPy Ndarray 对象 NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。 ndarray 对象是用于存放同类型元素的多维数组。 ndarray 中的每个元素在内存中都有相同存储大小的区域。 ndarray 内部由以下内容组成: 一个指向数据(内存或内存映射文件中的一块数据)的指针。 数据类型或 dtype,描述在数组中的固定大小值的格子。 一个表示数组形状(shape)的元组,表示各维度大小的元组。 一个跨度元组(stride),其中的整数指的是为了前进到当前维度下一个元素需要"跨过"的字节数。 numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0) """ object 数组或嵌套的数列 dtype 数组元素的数据类型,可选 copy 对象是否需要复制,可选 order 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认) subok 默认返回一个与基类类型一致的数组 ndmin 指定生成数组的最小维度 """ View Code 二、Numpy数据类型 numpy 支持的数据类型比 Python 内置的类型要多很多,基本上可以和 C 语言的数据类型对应上