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 ',' ...
随机推荐
- 使用pt-ioprofile监控数据库io文件读写情况
我们在做IO密集型的应用程序的时候,比如MySQL数据库,通常系统的表现取决于workload的类型. 比如我们要调优,我们就必须非常清楚的知道数据的访问规律,收集到足够的数据,用来做调优的依据. 有 ...
- 中南多校对抗赛 第三场 B
B:Arithmetic Progressions 题意: 给你一个长度为n的序列,问你这个序列中长度最长的等差数列长度为多少 题解: 方法一:将数组从小到大排序,n方扫,枚举出公差d,然后二分找有多 ...
- Linux上调试core文件(Good)
coredump文件 什么是coredump? 通常情况下coredmp包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息等.可以理解为把程序工作的当前状态存储成一个文件.许多程序和操作系统出 ...
- socket--接受大数据
一.简单ssh功能 1.1 实现功能 在前面的一篇博客中,我们已经实现了一个简单的类似Linux服务器ssh功能的小程序,可以输入系统命令来返回命令运行结果,今天我们也以此开始,看看socket如何来 ...
- CDN问题积累
我见到的CDN服务器只支持GET方法,只能以URL为索引来缓存内容. 有的时候我用相同的URL,相同的GET方法,但是不同Header参数时,后台对应的应该是不同的方法,返回不同的结果. 而这时候使用 ...
- centos7下安装配置jenkins+git+maven+jdk
环境 centos7 jdk1.8 maven3 git 在安装jenkins之前,先安装jdk1.8.maven.git 一. 安装jdk1.8 第一步:下载 jdk-8u131-linux-x64 ...
- Android 菜单和上下文演示
在Action添加个TextView控件(上下文演示用); package com.example.test; import android.app.Activity;import android.o ...
- TabLayout 使用方法 (基础)
此为布局文件 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:a ...
- Vue.js入门系列教程(一)
基本的Vue代码结构 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> ...
- windows下启动mysql服务的命令行启动和手动启动方法
1.图形界面下启动mysql服务. 在图形界面下启动mysql服务的步骤如下: (1)打开控制面板->管理工具->服务,如下图所示: 可以看到Mysql服务目前的状态是未启动(未写已启动的 ...