字符串在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 字符串常用方法总结的更多相关文章

  1. day2 -- 字符串常用方法、列表、字典

    1.字符串常用方法 name = "Convict abc" count(): print(name.count("c")) # 2 find(): print ...

  2. Day2:字符串常用方法

    字符串常用方法 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan name = "my \tname is ...

  3. python_way ,day2 字符串,列表,字典,时间模块

    python_way ,day2 字符串,列表,字典,自学时间模块 1.input: 2.0 3.0 区别 2.0中 如果要要用户交互输入字符串: name=raw_input() 如果 name=i ...

  4. OC中的字符串常用方法

    OC中的字符串常用方法 OC中对字符串进行操作使用了Foundation框架中的NSString类(不可变).NSMutableString类(可变). NSString 1.创建字符串 [objc] ...

  5. python 字符串常用方法

    字符串常用方法 capitalize() String.capitalize() 将字符串首字母变为大写 name = 'xiaoming' new_name = name.capitalize() ...

  6. python基础3 字符串常用方法

    一. 基础数据类型 总览 int:用于计算,计数,运算等. 1,2,3,100...... str:'这些内容[]'    用户少量数据的存储,便于操作. bool: True, False,两种状态 ...

  7. Python基础二_操作字符串常用方法、字典、文件读取

    一.字符串常用方法: name.captitalize()                       #字符串首字母大写 name.center(50,'*')                   ...

  8. python_字符串常用方法

    1.切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚). a = 'ABCDEFGHIJK' print(a[0:3]) # print(a[:3]) 从开头开 ...

  9. 2018.03.26 Python-Pandas 字符串常用方法

    import numpy as np import pandas as pd 1 #字符串常用方法 - strip s = pd.Series([' jack ','jill',' jease ',' ...

随机推荐

  1. ORACLE获取某个时间段之间的月份列表

    返回1-31,或者1-12,或者某个 select rownum   from dual   connect by rownum<31 就是connect by http://marcospri ...

  2. Error: Chromium revision is not downloaded. Failed to download Chromium

    在使用prerender-spa-plugin做前端预渲染的时候,安装puppeteer的时候因为下载Chromium 失败报错,有如下解决方法: 1.使用Chromium 国内源 npm confi ...

  3. eclipse快速复制一行代码(向下/向上)快捷键修改设置

    eclipse快速复制一行代码(向下/向上)快捷键修改设置 2015年10月05日 17:46:57 xiaoguanglgc 阅读数:20906 标签: eclipse快速复制一行快捷键冲突英特尔 ...

  4. Matlab一个错误引发的血案:??? Error using ==> str2num Requires string or character array input.

    Matlab总遇到一些神奇的问题,让人摸不着头脑.昨天编写程序的时候遇到一个让我十分火大的问题,也是自己的matlab基础不好吧. 先描述一下问题,再GUI界面有个listbox,Tag属性是’lis ...

  5. SCI 投稿全过程信件模板一览

  6. (转)使用Excel批量给数据添加单引号和逗号

    在使用PLSQL连接oracle数据库处理数据的过程中,常用的操作是通过ID查询出数据,ID需要附上单引号,如果查询的ID为一条或者几条,我们手动添加即可,但是如果是几百条.几千条的话,就需要使用一些 ...

  7. 【BZOJ】2466: [中山市选2009]树 高斯消元解异或方程组

    [题意]给定一棵树的灯,按一次x改变与x距离<=1的点的状态,求全0到全1的最少次数.n<=100. [算法]高斯消元解异或方程组 [题解]设f[i]=0/1表示是否按第i个点的按钮,根据 ...

  8. Findbugs插件安装与使用

    FindBugs 是由马里兰大学提供的一款开源 Java静态代码分析工具.FindBugs通过检查类文件或 JAR文件,将字节码与一组缺陷模式进行对比从而发现代码缺陷,完成静态代码分析.FindBug ...

  9. zedboard学习记录.2.PS+PL 流水灯与uart

    1.建立一个工程. 硬件设计 2.IP integrator -> create block desgin;Run Block Automation. 3.add IP -> AXI GP ...

  10. python之自然语言处理入门(一)

    前言 NTLK是著名的Python自然语言处理工具包,记录一下学习NTLK的总结. 安装nltk pip install nltk # 测试 import nltk 安装相关的包 import nlt ...