美文网首页
python学习指南之字符串、列表、文件

python学习指南之字符串、列表、文件

作者: 码上就说 | 来源:发表于2018-08-21 20:41 被阅读18次

一、字符串

1.1 基本知识点

1.1.1 控制台输入
str = input("Input a string:");
print "The string is: ", str;
1.1.2 索引

python中的字符串索引有正向索引和反向索引两种。
正向索引是从左到右;
反向索引是从右到左;
strs = "012345678";
对于上面的字符串,正向索引最左边是开始位是 0,反向索引最右边开始位是 -1
字符串遍历:

strs = "0123456789";
for s in strs:
    print s,
1.1.3 字符串基本操作
操作符 含义
+ 连接
* 重复
[] 索引
[:] 切片
len(...) 长度
for var in string 迭代遍历字符串

1.[:] 符号
字符串切片,[start:end:step],下面是实例:

strs = "0123456789";
print strs[:];
print strs[:2];
print strs[4:];
print strs[2::2];

结果输出:

0123456789
01
456789
2468

这样很好理解字符串切片的具体含义。

  1. “*” 符号
    输出重复的字符串,下面是实例:
strs = "0123456789";
print 3 * strs;

结果是:

012345678901234567890123456789
1.1.4 字符串函数

python有非常强大的字符串操作方法,所以python也经常被用来操作文本数据。刚开始学习了解一些基本的操作api即可,不需要一个个函数都琢磨透,等到用到了自然会熟悉。
python字符串操作api
1.find操作
正向find—— find
反向find—— rfind

strs = "0123456789012345";
index = strs.find("4");
rindex = strs.rfind("2");
print "index =", index;
print "rindex =", rindex;

执行结果如下:

index = 4
rindex = 12

2.join操作
join函数调用时:s.join(list),将列表连接到字符串上,使用s作为分隔符。这个也很有意思,文本操作中很多地方会用到这些函数。

list = ["abc","123","True", "edf"];
result = "#".join(list);
print "result = ",result;

结果如下:

result =  abc#123#True#edf

python的字符串操作的功能太强大了,很有api,帮你封装好了很多功能。

1.2 类型转换

函数 含义
float(...) 转化为浮点值
int(...) 转化为整型
str(...) 转化为字符串
eval(...) 将字符串作为表达式传值

1.3 字符串格式化

二、列表

字符串是字符序列,列表也是一种序列,只不过其中的元素既可以是字符串,可以是其他的元素。所以本质上来讲,列表和字符串很像。

2.1 列表定义

list = [];
for i in range(10):
    list.append(3 * i);

print "list = ",list;

这个range函数,有3个参数,range(start,end,step),
是start<=index<end,记住是小于end

2.2 列表与字典

字典就是Java中的map,key-value对应的序列对。
python中字典的示例:

dict = {"a":1, "b":1,"c":6};
print dict;
print dict.get("a");

可以看出来python的定义和写法非常随意,和Java比起来,规矩少很多了。操作起来也非常灵活。

2.3 操作列表

  • 修改列表元素
  • 添加列表元素
  • 删除列表元素
2.3.1 修改列表元素
names = ['tom', 'jack','sandy','frank', 'john'];
print names;
names[0] = 'sam';
print names;

操作之后第一个索引的元素就被修改了。

2.3.2 添加列表元素
  • 添加在列表末尾
    names = ['tom', 'jack','sandy','frank', 'john'];
    names.append('world');
    print names;
  • 插入列表任意索引位置
    names = ['tom', 'jack','sandy','frank', 'john'];
    names.insert(0, 'hello');
    print names;
    直接插入插入到0索引的位置,当前索引之后的元素都要移位。
2.3.3 删除列表元素
  • del删除元素
    names = ['tom', 'jack','sandy','frank', 'john'];
    del names[0];
    print names;
    删除第一个索引的元素之后,之后的元素会自动补齐。
  • pop()与pop(...)删除元素
    pop()是弹出列表中最后一个元素,pop(index)是弹出具体索引的元素。pop函数是有返回值的,del是没有返回值的,记住这个区别。
  • 根据值删除元素
    使用remove方法

关于这个remove方法,下面这段代码比较一下:

names = ['tom', 'jack','sandy','frank', 'john'];
names.insert(2, 'world');
names.insert(5, 'world');
print names;

names.remove('world');
print names;

函数的输出是:

['tom', 'jack', 'world', 'sandy', 'frank', 'world', 'john']
['tom', 'jack', 'sandy', 'frank', 'world', 'john']

列表中有两个 world,但是remove之后只删除第一个world元素,这一点很特别,要记住。

2.4 列表函数拓展

2.4.1 排序函数
  • 永久排序:所谓永久排序,是使用sort()操作完列表之后,再也无法恢复到原来的排列方式。
  • 临时排序:使用sorted()函数,输出是排序好的列表,但是没有改变原来的列表结构。
  • sort与sorted函数中都可以使用参数reverse=True,代表可以反向排序输出。
2.4.1.2 永久排序
names = ['tom', 'jack','sandy','frank', 'john'];
print "原来的序列:", names;
names.sort();
print "排序后序列:", names;
names.sort(reverse=True);
print "反向排序后序列:",names;

输出的结果如下:

原来的序列: ['tom', 'jack', 'sandy', 'frank', 'john']
排序后序列: ['frank', 'jack', 'john', 'sandy', 'tom']
反向排序后序列: ['tom', 'sandy', 'john', 'jack', 'frank']

操作完了之后已经改变了原来的序列。

2.4.1.3 临时排序
names = ['tom', 'jack','sandy','frank', 'john'];
print "原来的序列:", names;
print "临时排序后序列:", sorted(names);
print "原来的序列:", names;

输出的结果是:

原来的序列: ['tom', 'jack', 'sandy', 'frank', 'john']
临时排序后序列: ['frank', 'jack', 'john', 'sandy', 'tom']
原来的序列: ['tom', 'jack', 'sandy', 'frank', 'john']

操作完成后没有改变原来的序列。

2.4.2 列表反向输出
names = ['tom', 'jack','sandy','frank', 'john'];
print "原来的序列:", names;
names.reverse();
print "反转后序列:", names;

输出的结果是:

原来的序列: ['tom', 'jack', 'sandy', 'frank', 'john']
反转后序列: ['john', 'frank', 'sandy', 'jack', 'tom']
2.4.3 列表长度函数

计算列表的长度函数使用len(list)

三、文件

简单的文件操作,可以参考之前的文章《python起步》中的File操作。
本文章介绍一下温江对话框:
python安装中的tkinter GUI库提供了一系列简单易用的函数,用于创建获取文件名的对话框,允许用户可视化的选择要选择的文件,这样可以减轻用户的负担。

from Tkinter import *
from Tkinter import *
import Tkinter, Tkconstants, tkFileDialog

root = Tk()
root.filename = tkFileDialog.askopenfilename(initialdir = "/home/jeffmony/",title = "Select file",filetypes = (("jpeg files","*.jpg"),("all files","*.*")))
print (root.filename)
文件选择框.png

相关文章

  • python学习指南之字符串、列表、文件

    一、字符串 1.1 基本知识点 1.1.1 控制台输入 1.1.2 索引 python中的字符串索引有正向索引和反...

  • python切片

    本篇将介绍Python的切片操作,切片支持的数据类型有列表、字符串、元祖,更多内容请参考:Python学习指南 切...

  • Python ☞ day 3

    Python学习笔记之 字符串 & 列表 & 元组 & 字典 字符串 什么是字符串? 字符串运算 字符串方法 列表...

  • python列表

    本篇将介绍python中的列表,更多内容请参考:Python学习指南 一、序列 在python中有六种内建的序列:...

  • Python日常小知识

    一:python列表中的所有值转换为字符串,以及列表拼接成一个字符串 二:字符串转换 三:创建文件并按行写入数据 ...

  • python学习一 字符串

    python学习一 字符串 列表

  • python学习一 字符串

    python学习一 字符串 列表

  • txt读写

    文件打开 读文件 读取字符串 按行读取整个文件 写文件 字符串写入txt 列表写入文件 双层列表写入文件 数组写入文件

  • python字符串操作

    本篇文章将介绍python的字符串操作,更多内容请参考:python学习指南 一、查看帮助文档 在学习编程语言过程...

  • Python notes(2/3)

    目录 一,python 字符串 二,Python列表(List) 三,Python 元组 四,Python字典 五...

网友评论

      本文标题:python学习指南之字符串、列表、文件

      本文链接:https://www.haomeiwen.com/subject/nawdiftx.html