热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python数据类型一(重点是字符串的各种操作)

一、python基本数据类型1,int,整数,主要用来进行数学运算2,bool,布尔类型,判断真

一、python基本数据类型

  1,int,整数,主要用来进行数学运算

  2,bool,布尔类型,判断真假,True,False

  3,str,字符串,可以保存少量数据并进行相应的操作(未来使用频率最高的一种类型)

  4,list,列表,用来存储大量数据,用[]表示(里面可以存放各种数据类型)

  5,tuple,元组,不可以发生改变,用()表示

  6,dict,字典,保存键值对,{key : value}也可以保存大量数据

  7,set,集合,保存大量数据,不可以重复,其实就是不保存value的dict

      

二、整数(int)

       在python3中所有的整数都是int类型,但在python2中如果数据量比较大,会使用long类型,在python3中不存在long类型。

       整数可以进行的操作:bit_length() 计算整数在内存中占用的二进制码的长度(很少用) 

       十进制5转化成二进制是101,长度是3,程序如下:

 

 

三、bool类型,取值只有True和False,bool值没有操作

       转换问题:

              str => int      int(str)

              int => str      str(int)

 

              int => bool    bool(int)   0是False,非0是True

              bool => int    int(bool)   True是1,False是0

 

              str => bool    bool(str)   空字符串是False,非空字符串是True

              bool => str    str(bool)   把bool值转换成相应的“值”,即字符串True或者False

       结论:所有的空都是False,所有的非空都是True;例如:0,None,空字符串,空列表,空字典,空集合,空元组。

                要想把某数据转换成xxx数据类型,则xxx(数据)即可;

       补充:比较下面两个死循环

              while 1:

                     print(“hello world!”)

              和

              while True:

                     print(“hello world!”)

我们可以发现两者的区别是循环条件分别是1和True,我们通常用第一种。因为前者代码较后者更少,且计算机最底层认的是01,True需要转化成01,而1到了计算机底层也是1,所以前者比后者运行快那么一点点。

 

四、字符串(str)

       把字符连成串,在python中用’,”,’’’,”””引起来的内容被称为字符串。

       切记:字符串是不可变的对象,所以任何操作对原字符串是不会有任何影响的,每次操作都返回新字符串。

4.1 索引和切片

       索引:索引就是下标,下标从0开始,使用[下标]可以获取到每一个字符,如下列代码示例:

       

 

 

切片:我们可以使用下标来截取部分字符串的内容。

       语法:str[start : end]

    规则:顾头不顾尾,从start开始,截取到end位置,但不包括end,如下列代码示例:

             

 

       通过上边知道切片默认是从左向右截取,我们可以给出第三个参数来控制方向,第三个参数叫步长,步长为负数时,则从右往左取值。

  语法:str[start : end : step]

       start : 起始位置

       end : 结束位置

       step : 步长(步长如果是整数,则从左往右取,如果是负数,则从右往左取,默认是1)

如下列代码示例:

       

 


4.2 字符串的相关操作方法
      

       s1.capitalize()  # 首字母大写,其他字母都变成小写

       s1.lower()  # 全部转换成小写

       s1.upper()  # 全部转换成大写,记住!!!

       s1.swapcase()  # 大小写互相转换

       s1.casefold()  # 转换成小写,和lower相比,casefold()对所有字母都有效,比如东欧的一些字母

       s1.title()  # 每个被非字母字符隔开的单词首字母大写

       s1.center()  # 居中,

    示例:s5 = “周杰伦”

               ret = s5.center(10 , “*”)

       s1.expandtabs()  # 改变\t的长度,更改为8

       s1.strip()  # 去掉字符串左右两端空格(还有换行符\n,缩进\t),也可以加参数去掉指定的元素,记住!!!

       s1.lstrip()  # 去掉字符串左边空格

       s1.rstrip()  # 去掉字符串右边空格

       s1.replace(“原字符”,“新字符”)  # 将原字符替换成新字符,也可以再加一个参数指定替换几个,记住!!!

       s1.split()  # 字符串按照指定字符切割(注意:如果切割符在左右两端,则切完一定出现空字符串),还可以跟第二个参数,表示根据第几个指定字符分割,记住!!!

  注意:split默认是按照空白切割!具体示例如下:

a = "al ex ha nishi shui"lst = a.split()print(lst)# 结果为:['al', 'ex', 'ha', 'nishi', 'shui']


4.3 格式化输出
       

 

4.4 查找

       s13.startswith()  # 是否以指定字符开头,记住!!!

       s13.endswith()  # 是否以指定字符结尾,记住!!!

       s13.count()  # 查找指定字符在字符串中出现的次数

       s13.find()  # 查找指定字符的索引,若没有所查找字符,则返回-1

       s13.index()  # 求指定字符索引,注意:若找不到,程序会报错

 

4.5 条件判断

       s14.isalnum()  # 是否由字母和数字组成

       s14.isalpha()  # 是否由字母组成(包括汉字)

       s14.isdigit()  # 是否由数字组成,不包括小数点

       s14.isdecimal()  # 这个比较牛,中文数字也能识别

   s14.islower()  # 是否是小写字母

   s14.isupper()  # 是否是大写字母 

4.6 计算字符串长度,用法如下示例:

       

 

4.7 迭代

       我们可以使用for循环来遍历(获取)字符串中的每一个字符。

       语法:

    for 变量 in 可迭代对象 :

                     pass(也存在break和continue)  

    else:

                     当循环结束的时候会执行

       可迭代对象:可以一个一个往外取值的对象。

转:https://www.cnblogs.com/xihuanniya/p/9378121.html



推荐阅读
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 去掉空格的方法——Python工程师招聘标准与实践
    本文介绍了去掉空格的方法,并结合2019独角兽企业招聘Python工程师的标准与实践进行讨论。同时提供了一个转载链接,链接内容为更多相关信息。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 本文介绍了Oracle存储过程的基本语法和写法示例,同时还介绍了已命名的系统异常的产生原因。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • 合并列值-合并为一列问题需求:createtabletab(Aint,Bint,Cint)inserttabselect1,2,3unionallsel ... [详细]
author-avatar
你死了涐陪葬_793
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有