python基础自学 第五天(附带视频和相关资源)
数据类型
01.列表
- List 是 python 中使用最频繁的数据类型,在其他语言中叫做数组
- 专门用于存储一串信息
- 列表用 [ ] 定义,数据之间用 , 分隔
- 列表的索引从 0 开始
补:索引就是数据在列表中的位置编号,索引又可以被称为下标
sorted()对列表进行临时排序。
name_Lise = ["zhangsan", "lisi", "wangwu"] # 取值和取索引
# list index out of range 列表索引超出范围
# print(name_Lise[3])
print(name_Lise[2])
# 直到数据的内容.想知道数据在列表中的位置
# 如果内容不再数列表中,程序会报错
print(name_Lise.index("lisi"))
# 修改
name_Lise[1] = "李四"
# list assignment index out of range 表索引超出范围
# name_Lise[3]="wangxianger"
# 增加
# append 在列表末尾增加数据
name_Lise.append("王小二") # insert 在指定的位置插入数据
name_Lise.insert(1,"小小") # extend 把另外一个列表的完整内容追加到列表末尾
tmp_list=["小明","小工","小王"]
name_Lise.extend(tmp_list)
# 删除
# remove 可以从列表中删除指定的数据
name_Lise.remove("小工") # pop 方法默认把列表最后一个元素删除
name_Lise.pop()
# pop 方法可以指定要删除的数据
name_Lise.pop(3) # clear 方法可以清空列表
name_Lise.clear() print(name_Lise) name_Lise = ["zhangsan", "lisi", "wangwu", "lisi", "lisi"] # 统计
# len ( length 长度) 函数可以统计列表中的元素总数
lis=len(name_Lise)
print(lis) # count 方法可以统计列表中某一个数据出现的次数
count= name_Lise.count("lisi")
print(count) # 同一个数据多次出现,从列表中删除第一次出现的数据,如果程序不存在报错
name_Lise.remove("lisi") print(name_Lise) name_Lise = ["zhangsan", "lisi", "wangwu", "lisi", "lisi"]
num_list = [6, 8, 4, 1, 10]
# 升序 sort()
name_Lise.sort()
num_list.sort() # 降序
name_Lise.sort(reverse=True)
num_list.sort(reverse=True) # 逆反(反转)
name_Lise.reverse()
num_list.reverse() print(name_Lise)
print(num_list)
补: del 关键字
本质上是用来将一个变量从内存中删除
后续的代码就不能再使用这个变量了
例1:
name_Lise = ["zhangsan", "lisi", "wangwu"]
del name_Lise[1] 例2:
name = "小明"
del nama
运行会提示没有 name 这个变量
循环遍历
遍历就是从头到尾一次从列表中获取数据
在python 中为了提高列表的遍历效率,专门提供了 迭代 iteration 遍历
例:
name_Lise = ["zhangsan", "lisi", "wangwu","dsaf"] # 使用迭代遍历列表
"""
顺序的从列表中获取数据,每一次循环过程中,数据都会保存
在name 这个变量中,在循环体内部可以访问到这次获得的数据
"""
for name in name_Lise :
print(name)
补:
python的列表中可以存储不同类型的数据,
列表存储一般都是相同的数据
02.元祖
- Tuple 元祖于列表类似,不同之处在于元祖的元素不能修改
- 定义元祖 () 定义
- 元祖的索引从 0 开始
- 元祖一旦定义完成不能进行增删改查
- 元祖表示多个元素组成的序列
补: 定义只有一个元素的元祖,要在单独数据后面加逗号(,)
int_tuple = (5 , )
元祖常用操作
info_tuple=("zhangsan",18,1.75,"zhangsan") # 取值和取索引
print(info_tuple[0])
# 已经知道数据的内容,希望知道数据在元祖中的索引
print(info_tuple.index("zhangsan")) # 数据统计
print(info_tuple.count("zhangsan"))
# 统计元祖中包含的个数
print(len(info_tuple))
循环遍历
实际开发中,除非能够确认元祖中的数据类型,否则针对元祖的循环遍历需求不是很多
info_tuple=("zhangsan",18,1.75,"zhangsan") for ii in info_tuple :
# 使用格式字符串拼接不方便,使用占位符不同
# 元祖通常保存的数据类型是不同的
print(ii)
元祖和列表的转换
使用 list 函数可以吧元祖转换成列表
list(元祖)
使用 tuple 函数可以把列表转换成元祖
tuple(列表)
03 字典
是除了列表以外最灵活的数据类型
字典用 {} 定义
使用键值对存储数据,键值之间使用 , 分割
- 键key 是索引
- 值value 是数据
- 键和值之间使用 : 分隔
- 键必须是唯一的
- 值可以去任何数据类型,但键只能使用字符串,数字,和元祖
字典和列表的区别
- 列表是有序的对象集合
- 字典是无序的对象集合
xiaoming = {"name": "小明"} # 取值
print(xiaoming["name"])
# 增加
xiaoming["age"] = 18
# 修改
xiaoming["age"] = 15
# 删除
xiaoming.pop("name") print(xiaoming) xiaoming={"name":"小明","age":18,"gede":"发多少"} # 统计键值对数量
print(len(xiaoming)) # 合并字典
tepp={"gheh":1.44}
# 如果被合并的字典中包含已经存在过的键值对,会覆盖
xiaoming.update(tepp) # 清空字典
xiaoming.clear()
print(xiaoming)
字典的遍历
xiaoming={"name":"小明","age":18,"gede":"发多少"} # 变量 zi 是每一次循环中,获取到的键值对的KEY
for zi in xiaoming :
print("%s - %s"%(zi,xiaoming[zi]))
04 字符串
- 字符串就是一串字符,是程序与验证中表示文本的数据类型
- python可以使用一对双引号或者一对单引号
- 可以使用索引获取一个字符串中指定位置的字符,索引从0开始
- 可以使用for循环遍历字符串
补:
len(字符串) : 获取字符串的长度
字符串.count(字符): 字符在字符串中出现的次数
holle_str="hello hello"
# 统计字符串的长度
print(len(holle_str)) # 统计字符在字符串中出现的次数
print(holle_str.count("h")) # 某个字符出现的位置
print(holle_str.index("o"))
python的视频和资料的下载链接:https://pan.baidu.com/s/1oAoD1nPnK6HGxrtWz8omXw
python基础自学 第五天(附带视频和相关资源)的更多相关文章
- Python基础知识(五)
# -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...
- python基础篇(五)
PYTHON基础篇(五) 算法初识 什么是算法 二分查找算法 ♣一:算法初识 A:什么是算法 根据人们长时间接触以来,发现计算机在计算某些一些简单的数据的时候会表现的比较笨拙,而这些数据的计算会消耗大 ...
- python基础教程项目五之虚拟茶话会
python基础教程项目五之虚拟茶话会 几乎在学习.使用任何一种编程语言的时候,关于socket的练习从来都不会少,尤其是会写一些局域网的通信的东西.所以书上的这个项目刚好可以练习一下socket编程 ...
- Python基础篇(五)_文件和数据格式化
Python基础篇_文件和数据格式化 文件的使用:文件打开.关闭.读写 文件打开:通过open()函数打开文件,并返回一个操作文件的变量. 使用语法:<变量名> = (<文件路径以及 ...
- Py修行路 python基础 (十五)面向对象编程 继承 组合 接口和抽象类
一.前提回忆: 1.类是用来描述某一类的事物,类的对象就是这一类事物中的一个个体.是事物就要有属性,属性分为 1:数据属性:就是变量 2:函数属性:就是函数,在面向对象里通常称为方法 注意:类和对象均 ...
- Python基础(十五)
今日主要内容 模块初识 模块导入 模块路径 自定义模块 内置模块(标准库) time datetime random sys os funtools 一.模块初识 (一)什么是模块 其实我们创建的每一 ...
- Python 基础【第五篇】元组和列表
一 .Python之列表: 其实所谓的列表我个人感觉和shell 中的数组是一样的(只是个人见解哦),列表其实说白了就是元素的组合: 格式: Name = [a,b,c,d] 下标: 每一个列表中的元 ...
- python基础教程(五)
字符串基本操作 所有标准的序列操作(索引.分片.乘法.判断成员资格.求长度.取最小值和最大值)对字符串同样适用,前面已经讲述的这些操作.但是,请注意字符串都是不可变的. 字符串的方法: 字符串从str ...
- python基础自学 第四天
break和continue break:某一条件满足,退出循环,不在执行后续重复代码 continue:某一条件满足时,不执行后续重复的代码 注意:在循环中,如果使用continue这个关键字,使用 ...
随机推荐
- 关于Linux 文件权限的思考
Linux文件系统每个文件分为inode和block,inode中包含一些基本信息(文件名,类型,长度,修改时间,权限等待),并且指向包含文件真实内容的block,而目录是文件的一种,其block的内 ...
- Java第一周作业
Java第一周作业 本周作业: 参考<<教材学习指导(http://www.cnblogs.com/rocedu/p/7911138.html)) 学习第一章视频 参考<<使用 ...
- 学习日记--用Vector(向量)实现动态数组
Vector的使用方法: 能在添加元素时增加长度的数组称为动态数组或可变长数组.相对地,必须事先指定长度,只能容纳一定数量元素的数组称为静态数组.下面分享一下如何借助STL(标准模板库)中的Vecto ...
- 【c# 数据库】对数据库进行增删查改
1.DataGridView链接数据库 2.链接数据库 using System.Data.SqlClient; SqlConnection con = null; //创建SqlConnection ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-3禁止交换和禁用大页面
1.禁止交换(每台机器都要做): 执行命令:vim /etc/sysctl.conf 增加一行:vm.swappiness=0 执行命令:sudo sysctl vm.swappiness=0 2.禁 ...
- 手工脱壳之AsPack压缩脱壳-随机基址
一.工具及壳介绍二.脱壳1.ESP定律脱壳2.单步跟踪脱壳3.基址重定位的修复 一.工具及壳介绍 使用工具:Ollydbg.PEID.ImportREC.LoadPE.010 Editor 查看待脱壳 ...
- .Net圈子里的一些看法
金三银四招聘季,不一定一定要跳巢,但是出去看看行情还是有必要的,所以就有这篇随笔. 首先,这里说的.Net圈子是只两个方面 第一,技术人才,属于人的圈子 第二,技术本身,技术的圈子,也就是技术所涵盖的 ...
- java常用集合浅层解析-面试必备
ArrayList 1.动态数组 2.线程不安全 3.存储空间连续 4.查询快,添加删除慢 构造方法 /** + Shared empty array instance used for defaul ...
- linux(centos) tomcat设置开机启动
亲测有效 环境: centos7 apache-tomcat-8.5.37 设置步骤: 1.修改/etc/rc.d/rc.local vi /etc/rc.d/rc.local 2.添加下面两行脚本, ...
- web安全之机器学习入门——3.1 KNN/k近邻
目录 sklearn.neighbors.NearestNeighbors 参数/方法 基础用法 用于监督学习 检测异常操作(一) 检测异常操作(二) 检测rootkit 检测webshell skl ...