python初级(302) 7 列表
一、列表的概念:
1、创建一个列表
friends = list()
2、列表可以包含的内容:
m_list = [5, 7, 9, 20]
letters = [‘a’, ‘b’, ‘e’]
3、从列表获取元素和修改元素
letters[3]
索引从0开始
m_list[2] = 100
4、列表的分片
m_list[1:3]
分片的简写
m_list[:2]
5 增加元素和删除元素:
append()
remove()
二、选择排序:
算法:
一堆数据中,先找出最小的数来,将之放入新数组中,然后将原有数据选出来的数删除,再将剩下的数中找一个最小的数,放入新数组中尾,直到将剩下的数都找完
示例解析:
[3, 10, 2, 7, 16]
第1次:[3, 10, 2, 7, 16]找出2, 放入新数组中[2]
第2次:[3, 10, 7, 16]找出3, 追加到新数组中[2, 3]
第3次:[10, 7, 16]找出7,追加到新数组中[2, 3, 7]
第4次:[10, 16]找出10,追加到新数组中[2, 3, 7, 10]
第5次:[16]找出16, 追加到新数组中[2, 3, 7, 10, 16]
排序完成
代码示例:
# !/usr/bin/env python3
# -*- coding: utf-8 -*- def get_min_item(arr):
min_num = arr[0]
for i in range(1, len(arr)):
if arr[i] < min_num:
min_num = arr[i]
return min_num def selection_sort(arr):
"""
选择排序
"""
arr2 = list()
length = len(arr)
for i in range(length):
min_num = get_min_item(arr)
arr2.append(min_num)
arr.remove(min_num) return arr2 ori_arr = [3, 10, 2, 7, 16]
sort_arr = selection_sort(ori_arr)
print(sort_arr)
python初级(302) 7 列表的更多相关文章
- python初级(302) 5 列表
一.复习 1.函数的创建 1) def关键字 2) 函数名及后面跟随的括号 3)冒号加上函数体 2.函数的调用 函数名及后面跟随的括号 3.带一个,二个,三个参数的函数及调用 二.列表 family ...
- python初级(302) 6 对象(三)
一.复习 1.什么是魔法方法? 2.什么是类的初始化函数? 二.什么是self 使用一个类可以创建多个对象实例,例如: ball1 = Ball("red", "smal ...
- python初级(302) 6 对象(二)
一.复习 1.什么是对象 2.什么是类 3.什么是属性 4.什么是方法 5.创建一个dog类,dog的属性有颜色,方法有汪汪叫 随堂练习: class Dog: def __init__(self, ...
- python初级(302) 2 easygui简单使用
一.复习之前的两个练习,巩固计数循环和条件循环 1.系统生成一个随机数1到5,然后让用户的猜测,若猜对了,提示恭喜你,猜对了,否则提示,对不起,你猜错了(提示,1到5的随机数为:secret = ra ...
- python初级(302) 1 环境搭建及简单使用
一.安装anaconda(python环境) 1 地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=A 选择Ana ...
- python初级(302) 6 对象(四)
一.复习 1.什么是多态 2.复习上一节课内容 class Triangle: """ 三角形类 """ def __init__(self ...
- python初级(302) 6 对象(一)
作业: 1.编写一个Dog类,并生成对象dog,属性包含颜色,大小,重量,可以汪汪叫,摇尾巴,跑 # -*- coding: utf-8 -*- class Dog: def __init__(sel ...
- python初级(302) 4 函数
一.函数 1.函数定义: 可以完成某个工作的代码块.这是可以用来构建更大程序的一个小部分. 2.创建或定义函数要使用def关键字 3.创建一个函数 1) def 关键字 2)函数名及后面跟随的括号 3 ...
- python初级(302) 3 easygui简单使用二
一.复习 1.easygui 信息提示对话框 2.easygui 是否对话框 二.easygui其它组件 1.选择对话框:choicebox(msg, title, choices) import e ...
- Decorator——Python初级函数装饰器
最近想整一整数据分析,在看一本关于数据分析的书中提到了(1)if __name__ == '__main__' (2)列表解析式 (3)装饰器. 先简单描述一下前两点,再详细解说Python初级的函数 ...
随机推荐
- Android Studio Gradle 配置问题
中国境内可以直接访问 dl.google.com 不会被墙. 由于种种原因导致的Gradle出现各类型配置问题在各大论坛.提问区已经是新人常问的问题了,自己也遇到很恶心的几个问题: Valid cer ...
- javascript学习4、Function函数、伪数组arguments
一.Function函数基础 函数:就是将一些语句进行封装,然后通过调用的形式,执行这些语句. 1.函数的作用: 将大量重复的语句写在函数里,以后需要这些语句的时候,可以直接调用函数,避免重复劳动. ...
- ArcSDE SQL Server 创建地图数据库
1.安装并破解: ArcGIS 10.2 ArcSDE 10.2 Sql Server 2008 R2 本文重点关注Sql Server和ArcSDE配置问题,安装破解过程略. 2.配置Sql Ser ...
- live555 基本框架
(转) 从程序的结构来看,live项目包括了四个基本库.程序入口类(在mediaServer中)和一些测试代码(在testProgs中).四个基本库是UsageEnvironment,BasicUsa ...
- linux中/dev/null与2>&1讲解
首先先来看下几种标识的含义: /dev/null 表示空设备文件 0 表示stdin标准输入 1 表示stdout标准输出 2 表示stderr标准错误 先看/dev/null command > ...
- Brief Introduction to SDK – JRE – JVM – JIT
Brief Introduction to SDK – JRE – JVM – JIT SDK This is complete collection of Java stuff, as it has ...
- 编程语言的类型修饰符modifiers
编程语言修饰符,代表语言要素与常规表达不同的语义: 这些语义的不同需要编译器和运行时作出不同的解释: 作用域.访问: 生命周期: 同步异步: 多态: 纯函数: 注解: 懒加载: 编译器合成:
- 学习:STL_deque容器
deque容器: 功能:双端数组,可以对头端进行插入删除操作 deque与vector区别: 1.vector对于头部的插入删除效率低,数据量越大,效率越低 2.deque相对而言,对头部的插入删除速 ...
- [React] Fix "React Error: Rendered fewer hooks than expected"
In this lesson we'll see an interesting situation where we're actually calling a function component ...
- 动态规划-多维DP
1.最大正方形 我的瞎猜分析: 我的瞎猜算法: #include <stdio.h> #include <memory.h> #include <math.h> # ...