黑马程序员技术交流社区

标题: 【郑州校区】Pyhton基础篇(4)-基本数据类型-字符串详解 [打印本页]

作者: 我是色色    时间: 2017-12-14 11:17
标题: 【郑州校区】Pyhton基础篇(4)-基本数据类型-字符串详解
本帖最后由 我是色色 于 2017-12-19 10:38 编辑

一:字符串是什么?
  字符串是Python最常用的一种数据类型,虽然看似简单,但能够以不同的方式来使用它们。
  字符串就是一系列的字符,在Python中,用引号括起来的都是字符串,其中的引号可以是单引号,也可以是双引号。如“name”、‘age’都可以称为字符串
二:字符串的创建 
[AppleScript] 纯文本查看 复制代码
"Python" 
'Python'                //  这两种方式都称为字符串
name="Python"         //一般在定义字符串的时候,都会给他赋值给一个变量

三:字符串的常用功能(详细)
  就以name=“Python”为例,详解字符串的各种方法:
  以C开头的方法:
[AppleScript] 纯文本查看 复制代码
复制代码
name="czp"
print(name.capitalize())     ##首字母变大写
#----------------------------------------------------------------------------------
print(name.casefold())    ##将字符串中出现的字母变为小写,很多未知的对相应变小写
#----------------------------------------------------------------------------------
print(name.center(20))      ##字符串内容居中,左右宽度各为20
print(name.center(20,"*"))  ##字符串内容居中,左右宽度各为20个“*”,后面的填充内容可随意更换
#----------------------------------------------------------------------------------
print(name.count("cd"))      ##字符串子序列查询,如存在返回查询次数,不存在返回0,不会报错
复制代码


  以D开头的方法:
[AppleScript] 纯文本查看 复制代码
print(name.decode())        ##解码(这个在Python3中没有提示这个方法,但是大家需要知道,很重要)
print(name.encode())        ##编码(针对unicode,先了解这两个,后面的博客会详细讲解)

  以E开头的方法:
[AppleScript] 纯文本查看 复制代码
复制代码
print(name.endswith("p"))     ##判断以什么结尾,返回值为布尔值
name1="czp\t123"
print(name1)
print(name1.expandtabs())     ##将制表符/t转换为空格,默认是8。参数写多少,就是将多少位分一段,将/t转换为空格填充
                   此方法可以用来绘制表格,如
  test = "username\temail\tpassword\nlaiying\tying@q.com\t123\nlaiying\tying@q.com\t123\nlaiying\tying@q.com\t123"
  v = test.expandtabs(20)
  print(v)

复制代码


  以F开头的方法:
[AppleScript] 纯文本查看 复制代码
复制代码
print(name.find("c"))           ##查找是否包含子字符串,如果有,返回索引位置,否则返回-1
#----------------------------------------------------------------------------------
name1="my name is {name}"
print(name1.format(name="czp"))      ##字符串格式化,通过format方法给变量传值并输出
#----------------------------------------------------------------------------------
print(name1.format_map({"name":"czp"}))  ##字符串格式化,与format方法不同的是赋值的方式不同
复制代码


      以I开头的方法:
[AppleScript] 纯文本查看 复制代码
复制代码
name="czp"
#print(name.index("c"))              ##查找子序列的下标,如果不存在,程序会报错
#------------------------------------------------------------------------------------
print(name.isdigit())               ##判断字符串是否是数字,返回值为布尔值
#------------------------------------------------------------------------------------
print(name.isalnum())              ##判断字符串是否是数字和字母,返回值为布尔值
#------------------------------------------------------------------------------------
print(name.isalpha())               ##判断字符串是否是字母,必须全为字母2,才会返回True
#------------------------------------------------------------------------------------
print(name.isdecimal())             ##判断字符串是否只包含十进制字符。这种方法只存在于unicode对象。
#----------------------------------------------------------------------------------------
print(name.isidentifier())          ##判断字符串是否已字幕开头
#----------------------------------------------------------------------------------------
print(name.islower())               ##判断字符串是否小写
#----------------------------------------------------------------------------------------
print(name.isnumeric())             ##判断字符串是否只是以数字组成
#----------------------------------------------------------------------------------------
print(name.isprintable())           ##判断字符串中所有字符是否都属于可见字符,如有\t,\n等,肯定会返回false
#-----------------------------------------------------------------------------------------
print(name.isspace())               ##判断字符串是否为空格(空值、字符串间的空格,都为False)
#-----------------------------------------------------------------------------------------
print(name.istitle())               ##判断字符串是否为标题,即是否首字母大写
#-----------------------------------------------------------------------------------------
print(name.isupper())               ##判断字符串是否为大写,返回布尔值
复制代码


  以J开头的方法
[AppleScript] 纯文本查看 复制代码
name="czp"
print(" ".join(name))                   ##序列中的元素以指定的字符连接生成一个新的字符串。

  以L开头的方法:
[AppleScript] 纯文本查看 复制代码
复制代码
name=" czp"
print(name.ljust(20,"*"))               ##返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串
#---------------------------------------------------------------------------------------------
print(name.lower())                     #将字符串中的字母全部变为小写
#----------------------------------------------------------------------------------------------
print(name.lstrip())                    #去除字符串左边开头的空格
复制代码


  以P开头的方法:
[AppleScript] 纯文本查看 复制代码
name="czp"
print(name.partition("c"))                 ##分割前、中、后三个部分,通过写入指定的字符串子序列

  以R开头的方法:
[AppleScript] 纯文本查看 复制代码
复制代码
name="czp"
print(name.rstrip())                        #去除字符串左边开头的空格
#---------------------------------------------------------------------------------------------
print(name.replace("c","z"))                #替换字符串中的子序列
#-------------------------------------------------------------------------------------------
print(name.rfind("p"))                      #返回字符串最后一次出现的位置(从右向左查询),如果没有匹配项则返回-1。
#-------------------------------------------------------------------------------------------
print(name.rindex("c"))                     #返回子字符串 str 在字符串中最后出现的位置,如果没有匹配的字符串会报异常
#--------------------------------------------------------------------------------------------
print(name.rjust(20,"0"))                   #返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串。
#---------------------------------------------------------------------------------------------
复制代码


  以S开头的方法:
[AppleScript] 纯文本查看 复制代码
复制代码
name="c z p"
print(name.strip())                            #移除字符串头尾指定的字符(默认为空格)。
#-------------------------------------------------------------------------------------------------
print(name.split(" ",2))                       #指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串
#-------------------------------------------------------------------------------------------------
print(name.splitlines())                        #根据换行分割”\n“
#--------------------------------------------------------------------------------------------------
print(name.startswith("c"))                     #判断字符串以什么开头,返回布尔值
#-------------------------------------------------------------------------------------------------
print(name.swapcase())                          #对字符串的大小写字母进行转换
复制代码


  其他的方法:
[AppleScript] 纯文本查看 复制代码
print(name.title())                                #将首字母大写
print(name.upper())                                #将字符串中的字母改为大写
#--------------------------------------------------------------------------------------------------
print(name.zfill(20))                              #返回指定长度的字符串,原字符串右对齐,前面填充0。

四:数字(int)
  在编程中,经常使用数字来记录游戏得分、表示可视化数据等,Python根据数字的用法以不同的方式来处理它们
  在Python中,可对整数执行加(+)、减(-)、乘(*)、除(/)等运算,具体运算请参考上一篇博文
五:布尔值
  真或假(1 或 0)

{:8_507:}
Pyhton基础篇(1)-第一个Pyhton程序
Pyhton基础篇(3)-Pycharm安装及运算符
Pyhton基础篇(2)-变量、用户输入及条件语句
技术贴系列之——Python web开发中常用的标准库...
Python100例基础练习(1)
Python基础:文件的操作
python基础:迭代器与生成器
基于微博数据用 Python 打造一颗“心”
Python基础:Python函数
快速入门:十分钟学会Python
Python基础之文件编码问题

作者: 我是楠楠    时间: 2017-12-15 09:59
楼主棒棒哒




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2