第三章 python的数据类型(上)

在本章,我们介绍下python的数据类型。
这章的内容比较多,我们分上,下两部分来介绍。

3.1 整型(int),浮点型(float)

3.1.1 整形的长度

在py2中有int和long,但是在py3中只有int,py3的int相当于py2的int+long。
py3的int的长度跟内存容量一样。

3.1.2 整除

py2和py3的整除是不一样的
py2:除的结果是小数也会返回整数,小数点后面的直接砍掉(不是四舍五入)
py3:除的结果是小数会自动转换成浮点类型

3.1.3 浮点型(float)

占位符 %f 的时候默认小数点后6位,第7位四舍五入。

3.2 布尔(bool)

用于表示真假的类型,只有True和False两种。

其他类型转换成布尔值:
{},[],None,"",0 -> False

3.3 字符串(str),及其方法

字符串是写代码中最常见的,python内存中的字符串是按unicode编码存储的。
在python中字符串用‘‘或者""括起来表示。

在python中‘和"是一样的

注意:字符串是不可变类型

下面介绍下字符串的方法:

3.4.1 字母大小写

  • .capitalize(self)
    首字母大写
  • .casefold(self)
    字符串变小写。除此之外,可以把英语以外的字母变小写(多用于unicode)。(py3中新追加的)
  • .upper()
    英字母全转大写,没有大小写的字符串不会报错
  • .isupper()
    判断都是大写
  • .lower()
    英字母全转小写
  • .islower()
    判断都是小写
  • .swapcase(self)
    大小写互相转换
  • .title(self)
    每个单词的首字母变大写

3.4.2 判断数字

判断是否是数字有下面3中方法:

  • .isdigit()
s1 = '1'
s2 = '二'
s3 = '③'

s1.isdigit()  # True
s2.isdigit()  # False
s3.isdigit()  # True

# '1','②'可以判断
  • .isdecimal()
    和int()能转换的字符串一致,所以推荐使用。
s1 = '1'
s2 = '二'
s3 = '③'

s1.isdecimal()  # True
s2.isdecimal()  # False
s3.isdecimal()  # False

# 只有'1'可以判断,和int()能转换的一致。推荐使用
# 详细:判断是否是10进制小数
  • .isnumeric() # 判断是否是数字 -> ‘1‘,‘二‘,‘②‘都可以判断
s1 = '1'
s2 = '二'
s3 = '③'

s1.isdecimal()  # True
s2.isdecimal()  # True
s3.isdecimal()  # True

# '1','二','②'都可以判断

3.4.3 字符串格式化

  • .center(self,width,fillchar=None)
    占用文本长度并居中,fillchar 是填充的字符

    类似的还有居左 .ljust(),居右 .rjust(),居右补0 .zfill()

  • .format(self,*args,**kwargs)
    类似于字符串里用 %s 插入内容
s = "Welcome {0} to Apeland,you are No.{1} user. you are {0}"
s.format("Alex",998)
print(s)                            #输出不出来
print(s.format("Alex",998))         #这种方式或者加个变量 d = s.format("Alex",998) 然后print(d)

s = "Welcome {name} to Apeland,you are No.{num} user. you are {name}"
s.format(name = "Alex",num = 998)
print(s.format("Alex",998))         
  • .format_map(self,mapping)
    用字典的元素填充{}。基本与format类似,只是{}里面要放入字典的key。
s = "Welcome {key1} to Apeland,you are No.{key2} user. you are {key2}"
d = {"key1":"aaa","key2":"bbb"}
s = s.format_map(d)
print(s)
执行结果:Welcome aaa to Apeland,you are No.bbb user. you are bbb

3.4.4 查询,判断字符串内容

  • .endswith(self,suffix,start=None,end=None)
    判断以什么字符串结尾,也可以切片后判断

    类似的有:
    .startswith(self,prefix,start=None,end=None)

  • .find(self,sub,start=None,end=None)
    从左到右找第一个sub相同的字符串,找到了返回下标,找不到返回-1。可切片。

    注意:切片后返回的下标依然是原字符串的下标
    类似的有: .rfind()

  • .index(self,sub,start=None,end=None)
    与find基本一样,但是找不到会报错

    类似的有: .rindex()

  • .count(self,sub,start=None,end=None)
    查询sub的个数,可以用start和end切片后数(范围count)
  • .isspace(self)
    判断是不是空格,多个空格也可以
  • .isalnum(self)
    判断是不是字母或数字
  • .isprintable(self)
    是否可以打印(比如\r,\t,\n,空格 等)
  • .istitle()
    每个单词的首字母都是大写

3.4.5 字符串处理

  • .strip(self,chars=None)
    默认去掉字符串前后的 ‘\t‘,‘\n‘,‘\r‘,空格 (‘\t‘相当于tab)。输入参数可以去掉前后参数指定的字符串。
#去掉特殊的字符串,然后去掉空格
s = '  aabbccdd  ee'
s = s.strip('ee').strip()
print(s)

#输出结果:
aabbccdd

类似的有:
只去掉右边的:rstrip(),只去掉左边的:lstrip()

  • .join(self,iterable)
    把iterable的列表拼接起来,每个元素之间用self字符串隔开。返回拼接后的字符串

    注意:只有字符串型的元素可以拼接

list1 = ["hello","the","world!"]
str1 = "-".join(list1)     #用 - 拼接
print(str1)
#执行结果:
hello-the-world!
  • .split(self,sep=None,maxsplit=-1)
    把字符串分割并且返回一个列表,可以指定sep字符串来分割元素,sep会被删除。

    不指定sep,整个字符串会变成一个元素。注意sep不能同时指定两个字符。
    maxsplit是最大分割次数,1就是分割一次。从左往右分割。

  • .splitlines(self,keepends=None)
    根据换行分割,类似split(‘\n‘)
  • .partition(sep)
    找到第一个sep,分割成3份:["sep前的","sep","sep后的"]

    类似的有: .rpartition()

  • 1对1的文字替换
    .maketrans(self,*args,**kwargs)
    .translate()
str1 = 'abcdefg'
str2 = '1234567'

table = str.maketrans(str1,str2)

str3 = 'abcdefghijklmnopqrstuvwxyz'

result = str3.translate(table)

print(result)

# 执行结果
1234567hijklmnopqrstuvwxyz
  • .replace(self, old, new, count)
    用new替换掉所有old字符串,并且返回替换后结果。
  • 字符串反转 str[::-1]

    注意:字符串没有reverse方法,reverse是列表的方法

原文地址:https://www.cnblogs.com/py-xiaoqiang/p/11030874.html

时间: 2024-09-30 18:53:41

第三章 python的数据类型(上)的相关文章

第三章 python的数据类型(下)

上一篇我们介绍了一些基础的数据类型和方法. 在这篇里,我们来了解下python特有的数据类型及其方法. 3.4 列表(list) 列表可以存储多个数据,有点类似于powershell里的数组 字符串也可以看做是一个列表 names = ["name1","name2","name3"] # 有点像数组 print(names[0]) # 可以用下标来调用 3.4.1 列表的特点(有序,可变) 列表有以下特点 可以存放多个值.(值也可以是列表,元组

linux 第三章目录文件管理(上)

享受生活  热爱挑战                                                                                  明远分享         linux  第三章目录文件管理(上) 每章一段话      人生的确很累,看你如何品味:每天多寻快乐,烦恼别去理会:短短数十寒暑,             何不潇 洒面对.人之所以快乐,并不是因为得到的多,而是因为计较的少,生               活要用大海的胸怀去面对,当别人放

第三章 Python数据类型

3.1 Python简单数据类型 3.1.1 字符串(str) python中的字符串通常由单引号.双引号.三个单引号或三个双引号包围的一串字符组成. 1. 转义字符串 \n 换行符 \t 制表符 \r 回车 \\ '\'字符 \' 单引号字符串中的单引号 \" 双引号字符串中的双引号 2. 字符串运算 Python中是可以使用“+”.“*”运算符运算的. + 连接字符串 * 将单字符串多次连接 3. 字符串处理函数 常见的字符串函数 字符串操作 描述 string.capitalize() 将

第三章 python基础

花了一个星期多看了 <learn python the hard way>,只能说掌握了皮毛的皮毛,今天开始学习看<core python programming>. 同样,也分享自己的学习笔记,督促自己,激励自己. 3.1 语句和语法Python 语句中有一些基本规则和特殊字符:?? 井号(#)表示之后的字符为 Python 注释?? 换行 (\n) 是标准的行分隔符(通常一个语句一行)?? 反斜线 ( \ ) 继续上一行?? 冒号 ( : ) 将代码块的头和体分开?? 语句(代

Python(三)python基本数据类型

数据类型 一.Python支持的数据类型 1.变量 变量是内存中的一块区域 变量的命名:由字母.数字.下划线组成并且开头不能时数字 python中地址变量与c语言刚好相反,一条数据包含多个标签: >>> a=1>>> b=1>>> id(a)34909288>>> id(b)349092882.整型 注:type()可以查看数据类型 >>> num1=123>>> type(num1)<typ

第三章-python基础 笔记

1.一行过长的语句可以使用反斜杠( \ )分解成几行:使用闭合操作符时,单一语句也可以跨多行,例如:在含有小括号.中括号.花括号时可以书写多行.另外就是三引号包括下的字符串也可以跨行书写. 2.一般缩进四个空格宽度为最佳,如果你的代码要跨平台应用,或被不同的编辑器读写,建议不要使用制表符. 3.分号( ; )允许你将多个语句写在同一行上,语句之间用分号隔开. 4.每一个python脚本都可以被当成一个模块. 5.多元赋值最好加上括号使代码有更高的可读性. 6.python的多元赋值方式可以实现无

第三章 Python基础——文件操作&amp;函数 续

3.6函数进阶 名称空间:name space 例:若变量X=1,1存放于内存中,那存放X与1绑定关系的地方就叫做名称空间. 名称空间共三种,分别如下: locals:是函数内名称空间,包括局部变量和形参 globals:全局变量,函数定义所在模块的名字空间 builtins:内置模块的名字空间 不同变量的作用域不同就是由于这个变量所在的命名空间决定的. 作用域即范围: 全局范围:全局存活,全局有效 局部范围:临时存活,局部有效 注:查看作用域方法 globals(),locals() 作用域查

第三章-Python基础 课后答案

3-1 python是动态语言,它的对象的类型和内存都是运行时确定的:在创建新对象时,解释器会根据语法和右侧的操作数来决定新对象的类型. 3-2 python不用去声明函数的返回类型,是由其“若类型”的语言特性决定的.python是把储存的数据直接放到内存,然后再去用一个变量名引用这个数据. 3-3 因为python系统定义的名字是__xxx__,所以在变量名的开始和结尾使用双下划线容易引起混淆. 3-4 可以,但是要用";"分隔开. 3-5 可以,一行过长的语句可以使用反斜杠( \

第三章 python流程控制

第一节    分支结构 if  else 1)if语句: - Python的if语句类似其他语言.if语句包含一个逻辑表达式,使用表达式比较,在比较的结果的基础上作出决定. - if expression: statement(s) 注:Python使用缩进作为其语句分组的方法,建议使用4个空格代替缩进 下面这段代码是我们没有采用缩进的形式,在执行的时候出现的报错   1 #!/usr/bin/python   2   3 if 1<2:   4 print "ok" [emai