day2 字符串常用方法总结
字符串在Python中是常用的功能,我们知道,字符串在Python中存储的形式是以字符数组的形式存在,比如"alex"在内存中的存储形式是:["a","l","e","x"],因为我们发现字符串的功能很多与列表的功能相似,比如切片s[:],索引s[index]等常用的方法,我们要知道,既然是字符串的方法,那就有字符串独有之处,字符串可以分割,可以合并,有长度,能够查找替换,还可以设置字符串长度格式,最主要的是跟文件的操作一起使用,我们在基础里面经常操作文件这种实物,文件里面存储的都是字符串,那就要用到字符串的方法,下面来看看字符串常用的功能。
1.split(self,sep)
字符串的拆分功能,我们经常会拆分文件中的内容,比如文件中存储用户的用户名和密码,以冒号表示,name:pwd,那么我们想得到用户名和密码,就可以使用字符串的拆分功能,下面我们来看看具体的实例:
>>> name = "alexissb"
>>> name.split("is")
['alex', 'sb']
>>> user = "alex:is:sb"
>>> user.split(":")
['alex', 'is', 'sb']
>>> name.split("D")
['alexissb']
从实例中可以看出,字符串的拆分是以某个标识为拆分点,拆成前后部分。有多少个这样的标识符就能拆分成n+1部分。拆分形成的是数组,把拆分的内容放在一个数组中,并且,如果没有这个拆分符的话,那么就只形成一个字符元素的字符数组。
2.splitlines(self)
splitlines()是以换行符的形式进行拆分的,在文件读取的时候有用,比如我们想读取文件的每一行,然后找到文件的位置,删除这个位置的话就可以使用。
下面来看一个简单的实例:
>>> message = """
... alex
... is
... sb
... """
>>> message
'\nalex\nis\nsb\n'
>>> message.splitlines()
['', 'alex', 'is', 'sb']
>>> message.split("\n")
['', 'alex', 'is', 'sb', '']
从上面程序可以看出,splitlines()是按行的形式进行拆分的,但是split()和splitlines()还是有一些区别的。比如split()如果末尾有空行,是会显示内容的,显示为空;但是splitlines()却屏蔽没有内容的行。(备注:字符串末尾没有信息的内容)
3.partition(self,sep)
partition(self,sep)拆分成三部分(head,sep,tail)想成的是一个元组,以分割标识符为单位进行拆分,拆分成前,中,后三部分。在python中有三种拆分的方法,split()、splitlines()。来进行查分。
实例如下:
>>> name = 'alexissb'
>>> name.partition("is")
('alex', 'is', 'sb')
拆分在字符串中非常常用,是很常用的方法,在文件操作中使用,我们可以看出上述三种不同拆分方法的区别以及共同之处。要根据需求来使用。
4.isdigit() isnumeric() isdecimal()
判断数字形式的字符串在用户输入的时候很常用,我们知道,如果用户输入的是一个不是数字形式的字符,我们使用int()函数,那么就会报错,我们知道,input()函数默认用户输入的都是字符格式,因为当我们需要使用数字的时候,我们需要用int()函数来进行转换,转换的时候我们就需要用到isdigit()类判断的函数,对用户输入的格式进行判断。下面来看一个实例:
>>> num = input("Please input your luncy num:")
Please input your luncy num:6
>>> num1 = input("Please input your lucky num:")
Please input your lucky num:d12
>>> num.isdigit()
True
>>> num1.isdigit()
False
>>> int(num)
6
>>> int(num1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'd12'
从上面代码可以看出,在我们需要用户输入数字的时候要使用if函数进行判断,不然就会报错。
5.join()
join()顾名思义是用来字符串链接的,我们知道,字符串是列表形式存储的,因为我们在链接的时候可以与列表进行列表,而且可以指定链接的格式。
>>> l1 = ["11","22","33"]
>>> ":".join(l1)
'11:22:33'
>>> name = "alex"
>>> name.join(l1)
'11alex22alex33'
>>> name.join("sb")
'salexb'
>>> "".join(l1)
'112233'
从上面代码可以看出,字符串可以与列表链接,列表中的每一个元素都与字符串进行链接,为此我们在遍历文件的时候,可以使用split()进行拆分,然后使用join()进行链接,这样也是可以的,我们可以使用"",让列表中的每个元素与空进行链接。
还有很多方法,就不一一介绍了,因为哪些方法都是差不多的。要我们经常使用。不然很容易忘记,上述方法是我们常用的。
day2 字符串常用方法总结的更多相关文章
- day2 -- 字符串常用方法、列表、字典
1.字符串常用方法 name = "Convict abc" count(): print(name.count("c")) # 2 find(): print ...
- Day2:字符串常用方法
字符串常用方法 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan name = "my \tname is ...
- python_way ,day2 字符串,列表,字典,时间模块
python_way ,day2 字符串,列表,字典,自学时间模块 1.input: 2.0 3.0 区别 2.0中 如果要要用户交互输入字符串: name=raw_input() 如果 name=i ...
- OC中的字符串常用方法
OC中的字符串常用方法 OC中对字符串进行操作使用了Foundation框架中的NSString类(不可变).NSMutableString类(可变). NSString 1.创建字符串 [objc] ...
- python 字符串常用方法
字符串常用方法 capitalize() String.capitalize() 将字符串首字母变为大写 name = 'xiaoming' new_name = name.capitalize() ...
- python基础3 字符串常用方法
一. 基础数据类型 总览 int:用于计算,计数,运算等. 1,2,3,100...... str:'这些内容[]' 用户少量数据的存储,便于操作. bool: True, False,两种状态 ...
- Python基础二_操作字符串常用方法、字典、文件读取
一.字符串常用方法: name.captitalize() #字符串首字母大写 name.center(50,'*') ...
- python_字符串常用方法
1.切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚). a = 'ABCDEFGHIJK' print(a[0:3]) # print(a[:3]) 从开头开 ...
- 2018.03.26 Python-Pandas 字符串常用方法
import numpy as np import pandas as pd 1 #字符串常用方法 - strip s = pd.Series([' jack ','jill',' jease ',' ...
随机推荐
- Python3 字典 pop() 方法
Python3 字典 描述 Python 字典 pop() 方法删除字典给定键 key 所对应的值,返回值为被删除的值.key值必须给出. 否则,返回default值. 语法 pop()方法语法: ...
- 用dtree实现树形菜单 dtree使用说明
http://www.jb51.net/article/28566.htm 准备工作: 请从脚本之家http://www.jb51.net/jiaoben/31974.html下载dtree.zip文 ...
- Spring MVC @ModelAttribute详解
被@ModelAttribute注释的方法会在此controller每个方法执行前被执行,因此对于一个controller映射多个URL的用法来说,要谨慎使用. 我们编写控制器代码时,会将保存方法独立 ...
- Canny边缘检测算法原理及其VC实现详解(二)
转自:http://blog.csdn.net/likezhaobin/article/details/6892629 3. Canny算法的实现流程 由于本文主要目的在于学习和实现算法,而对于图像 ...
- 「Linux」VMware安装centos7(一)
1.点击:创建虚拟机 2.选择:自定义(高级),下一步 3.点击:下一步 4.选择:稍后安装操作系统,下一步 5.选择:操作系统和对应的版本,下一步 6.设置:虚拟机名称和安装位置,下一步 7.设置: ...
- Splay 区间操作
据大佬说,\(Splay\)是序列操作之王.\(Splay\)是一种平衡树,通过伸展(\(Splay\)),在不改变中序遍历的前提下变换根的位置,从而快速的进行序列操作 \(Splay\)最常见的序列 ...
- 3 ways to download files with PowerShell
Perhaps the greatest strength of PowerShell is it's foundation on the .NET framework. The .NET frame ...
- HTTP、TCP、 UDP、 IP 、 Socket的关系
TCP和UDP协议是传输协议,IP是网络层协议.传输协议和网络层协议主要解决数据如何在网络中传输,或者说TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准.TCP负责发现传输 ...
- 使用Eclipse进行SWT编程
使用Eclipse进行SWT编程 1. 为什么要使用SWT? SWT是IBM开发一套跨平台的GUI开发框架.为什么IBM要创建另一种GUI呢?为什么他们不使用现有的JavaGUI框架呢?要回答这些问题 ...
- DevExpress使用教程:GridView经验小结(官方中文文献经典资料技巧)
下面是笔者自己总结的使用 DevExpress Gridview 的一些经验小结,分享给大家: 1.去除 GridView 头上的 "Drag a column header here to ...