python自动化开发-2
1.python的数据类型之列表
列表是Python开发语言中最常见的数据类型之一,通过列表可以实现对数据的增删改等常用操作。
列表的定义:例子
names = ["Lucy","Lily","jack"]
列表的常用功能
1)取出列表中的元素:例子
取出列表的第二个元素:通过下标的方式,下标从0开始计数。
取出列表的最后一个元素:
2)切片:例子 注意列表在切片的时候是包头不包尾。
例一:
names = ["Lucy","Lily","jack","rain"]
print (names[0:3])
运行结果如下:
['Lucy', 'Lily', 'jack']
例二:
datas = ["jack","john","rain","lily"]
print(datas[-1])
运行结果:lily
3)追加:例子
datas = ["jack","john","rain","lily"]
datas.append("新人")
print(datas)
运行结果:['jack', 'john', 'rain', 'lily', '新人']
4)插入:例子
datas = ["jack","john","rain","lily"]
datas.insert(1,"插入到下标为1的位置上")
print(datas)
运行结果:['jack', '插入到下标为1的位置上', 'john', 'rain', 'lily']
5)修改;例子
datas = ["jack","john","rain","lily"]
datas[2]="lilei"
print(datas)
运行结果:['jack', 'john', 'lilei', 'lily']
6)删除:例子
datas = ["jack","john","rain","lily"]
del datas[2]
print(datas)
运行结果:['jack', 'john', 'lily']
datas = ["jack","john","rain","lily"]
datas.remove("jack")
print(datas)
运行结果:['john', 'rain', 'lily']
7)拷贝:例子
datas = ["jack","john","rain","lily"]
data = datas.copy()
print(data)
运行结果:['jack', 'john', 'rain', 'lily']
8)统计:例子
datas = ["jack","john","rain","lily","john"] print(datas.count("john"))
运行结果:2
9)排序和反转:例子
排序:
datas = ["jack","john","rain","lily","john","1","2"] datas.sort()
print(datas)
运行结果:['1', '2', 'jack', 'john', 'john', 'lily', 'rain']
反转:
datas = ["jack","john","rain","lily","john","1","2"] datas.reverse()
print(datas)
运行结果:['2', '1', 'john', 'lily', 'rain', 'john', 'jack']
10)获取列表里某个元素的下标位置:例子
datas = ["jack","john","rain","lily","john","1","2"] print(datas.index("lily"))
运行结果:3 2.python的数据类型之元组
元组与列表类似,也是存一组数,但是元组一旦创建,便不能再修改,所以又叫只读列表。
元组只有两个方法,一个是count,另一个是index。
例子1:
datas = ("jack","john","rain","lily","john","1","2") print(datas.index("rain"))
运行结果:2
例子2:
datas = ("jack","john","rain","lily","john","1","2") print(datas.count("john"))
运行结果:2
3.python的数据类型之字符串
字符串的特性就是不可修改。
字符串的一些功能如下:
1)首字母大写
datas = "far across the distance and spaces between us" print(datas.capitalize())
运行结果:Far across the distance and spaces between us 2)大写全部变小写
datas = "Far Across The Tistance And Spaces Between Us" print(datas.casefold())
运行结果:far across the tistance and spaces between us 3)输出方式
datas = "Far Across The Tistance And Spaces Between Us" print(datas.center(50,"-"))
运行结果:--Far Across The Tistance And Spaces Between Us--- 4)统计
datas = "Far Across The Tistance And Spaces Between Us Us" print(datas.count("Us"))
运行结果:2 5)判断字符串是否以...结尾
datas = "Far Across The Tistance And Spaces Between Us Us" print(datas.endswith("s"))
运行结果:True
6)查找字符,找到返回其索引, 找不到返回-1
datas = "Far Across The Tistance And Spaces Between Us" print(datas.find("d"))
运行结果:26
datas = "Far Across The Tistance And Spaces Between Us" print(datas.find("D"))
运行结果:-1 7)format使用方式
datas = "you are {} yeras old,your are {}." print(datas.format(25,"Lily"))
运行结果:you are 25 yeras old,your are Lily.
datas = "you are {age} yeras old,your are {name}." print(datas.format(name="Lucy",age=28))
运行结果:you are 28 yeras old,your are Lucy.
8)isdigit():是否整数
print("9".isdigit())
运行结果:True
print("9a".isdigit())
运行结果:False
9)返回某字符所在字符串的索引
datas = "you are 22 yeras old,your are lily." print(datas.index("s"))
运行结果:15 4.python的数据类型之字典
字典主要有两个特性:a.无序;b.key必须是唯一的。
字典的常用功能如下:
1)增加
datas = {"name":"lily","age":"23"}
datas["job"]="IT"
print(datas)
运行结果:{'age': '23', 'name': 'lily', 'job': 'IT'} 2)修改
datas = {"name":"lily","age":"23"} datas["name"]="jack"
print(datas)
运行结果:{'age': '23', 'name': 'jack'}
3)删除
datas = {"name":"lily","age":"23","job":"IT"} datas.pop("name")
print(datas)
运行结果:{'age': '23', 'job': 'IT'}
datas = {"name":"lily","age":"23","job":"IT"} del datas["age"]
print(datas)
运行结果:{'name': 'lily', 'job': 'IT'}
4)查找
datas = {"name":"lily","age":"23","job":"IT"}
print("name" in datas)
运行结果:True
datas = {"name":"lily","age":"23","job":"IT"}
print(datas.get("age"))
运行结果:23 5)字典的循环
datas = {"name":"lily","age":"23","job":"IT"}
for i in datas:
print(i,datas[i])
运行结果:
job IT
name lily
age 23
5.文件
1) 打开文件
打开文件时,需要指定文件路径和以哪种方式打开文件,打开后,就可以获取该文件句柄并且把它赋值给一个变量,以后通过此文件句柄对该文件操作,对文件操作结束后,要关闭文件。
打开文件的主要模式如下:
r ,只读模式【默认】
w,只写模式【不可读;不存在则创建;存在则清空内容;】
x, 只写模式【不可读;不存在则创建,存在则报错】
a, 追加模式【可读; 不存在则创建;存在则只追加内容;】
"+" 表示可以同时读写某个文件
r+, 读写【可读,可写】
w+,写读【可读,可写】
x+ ,写读【可读,可写】
a+, 写读【可读,可写】
2)对文件进行操作
文件句柄
=
open
(
'文件路径'
,
'模式'
):例子
例子1: f = open("test.txt",mode="r",encoding="utf-8") #以只读方式打开test.txt文件
例子2:
test.txt文件内容如下:
abcde
ABCDE
opqrst 程序代码内容如下:
f = open("test.txt","r",encoding="utf-8") #以只读方式打开文件且获取文件句柄
Files = f #把文件句柄赋值给变量Files
a = Files.read() #读取文件内容,并且把它赋值给一个变量
print(a) #输出或者打印文件内容
运行结果:
abcde
ABCDE
opqrst
例子3:
test.txt文件内容如下:
abcde
ABCDE
opqrst 程序代码如下:
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
f = open("test.txt","r",encoding="utf-8")
Files = f
a = Files.readline() #读取文件的一行内容
print(a) f.close()
运行结果如下:
abcde
python自动化开发-2的更多相关文章
- python自动化开发学习 进程, 线程, 协程
python自动化开发学习 进程, 线程, 协程 前言 在过去单核CPU也可以执行多任务,操作系统轮流让各个任务交替执行,任务1执行0.01秒,切换任务2,任务2执行0.01秒,在切换到任务3,这 ...
- python自动化开发学习 I/O多路复用
python自动化开发学习 I/O多路复用 一. 简介 socketserver在内部是由I/O多路复用,多线程和多进程,实现了并发通信.IO多路复用的系统消耗很小. IO多路复用底层就是监听so ...
- Python自动化开发-简介
1.Python简介 Python创始人 Guido Van Rossum,人称"龟叔",1989年圣诞节期间,为了在阿姆斯特丹打发时间,开发的一个新的脚本解释程序 作为ABC语 ...
- python自动化开发-1
1.python简介 python是一门简明并且强大的面向对象的开发语言,已经在WEB开发,软件开发,科学计算,大数据分析,自动化运维等领域得到了广泛的应用. 注意:所有测试均已python3为主,与 ...
- 写给深圳首期Python自动化开发周未班的信
你是否做了正确的决定? 深圳首期周未班的同学们大家好,我是Alex, 老男孩教育的联合创始人,Python项目的发起人,51CTO学院连续2届最受学员喜爱的讲师,中国最早一批使用Python的程序员, ...
- python自动化开发-[第二十一天]-form验证,中间件,缓存,信号,admin后台
今日概要: 1.form表单进阶 2.中间件 3.缓存 4.信号 5.admin后台 上节课回顾 FBV,CBV 序列化 - Django内置 - json.dumps(xxx,cls=) Form验 ...
- python自动化开发-[第十六天]-bootstrap和django
今日概要: 1.bootstrap使用 2.栅格系统 3.orm简介 4.路由系统 5.mvc和mtv模式 6.django框架 1.bootstrap的引用方式 1.Bootstrap 专门构建了免 ...
- python自动化开发-[第十一天]-Mysql
今日概要: 1.初识mysql 2.MySQL的增删改查 3.主键.外键 4.组合和分组 一.数据库的由来 1.什么是数据库? 数据的仓库,在ATM,购物车中存储数据为目录,称为数据库 1.数据以表格 ...
- python自动化开发-[第十天]-线程、协程、socketserver
今日概要 1.线程 2.协程 3.socketserver 4.基于udp的socket(见第八节) 一.线程 1.threading模块 第一种方法:实例化 import threading imp ...
随机推荐
- WebIM(5)----将WebIM嵌入到页面中
在之前的文章中,已经开发了一个简单的WebIM,但是这个WebIM是在独立的页面中的,今天发布的WebIM是一个可以嵌入到自己网页中的版本,你只需添加少量的代码,就可以在页面中嵌入一个WebIM.不过 ...
- 深入理解javascript new的机制
我们在使用对象的时候,除了一些浏览器内置的单体对象可以直接使用外,都会new一个出来使用. 1.最简单的莫过于如下获取一个Object对象实例 var obj = new Object(); 说明:此 ...
- linux find命令之exec
find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了. exec解释: -exec 参数后面跟的是command ...
- Visual Studio 编辑器
如何扩展 Visual Studio 编辑器 在 Visual Studio 2010 的时代,扩展 Visual Studio 的途径有很多,开发者可以选择宏.Add-in.MEF 和 VSPack ...
- Julia语言:让高性能科学计算人人可用
Julia语言:让高性能科学计算人人可用要:一群科学家对现有计算工具感到不满:他们想要一套开源系统,有C的快速,Ruby的动态,Python的通用,R般在统计分析上得心应手,Perl的处理字符串处理, ...
- Android系统源码导入到eclipse
1.把eclipse工程配置文件复制到android源码根目录下 cp development/ide/eclipse/.classpath ./ 2. 在android源码根目录下新建文 ...
- Unable to start activity异常的解决方案
当时我正在测试一个用户身份验证组件.使用的是android内置的Accounts API.当时的情况是,需要在App2中调用App1的用户身份验证组件,但是不知道为什么登入界面总是无法正常开启.后来我 ...
- 业务接口+UI层的设计(基于Castle实现的Repository)
业务接口+UI层的设计(基于Castle实现的Repository) Repository层设计的文章见:[http://www.cnblogs.com/yomho/p/3297042.html] ...
- TCP连接的建立与终止
TCP/IP详解学习笔记(13)-- TCP连接的建立与终止 1.TCP连接的建立 设主机B运行一个服务器进程,它先发出一个被动打开命令,告诉它的TCP要准备接收客户进程的连续请 ...
- EF-Code First(5):二级缓存
EF-Code First(5):二级缓存 〇.目录 一.前言 二.缓存设计 (一) 引用EFProviderWrappers (二) 缓存代码分析及整合 1. 关键代码简介 2. 应用缓存扩展 三. ...