数据类型之 整型、布尔类型、字符串

数据类型

整型 int、浮点型 float

  • 整型,整数

    正数或负数,不带小数点。没有大小限制,也可以是十六进制和八进制来表示。

  • 浮点型,即小数

    整数部分和小数部分组成,浮点型也可以使用科学计数法,2.5e2


  1. 浮点型相关函数 round
a = 3.1415926
print(round(a,1))
print(round(a,2))
   
   
  • 1
  • 2
  • 3

round(数字,保留位数)

  1. 浮点型和整型互换
a = 3.1415926
b = 5
print(int(a))
print(float(b))
   
   
  • 1
  • 2
  • 3
  • 4

int() 方法之向前取整,不存在四舍五入

float() 内的参数是 整数,返回以为小数;参数本身是浮点数,返回浮点数

  1. 字符 E
# 字符 E 表示 10 的次方
>>> 1.5e11
150000000000.0
>>> 15e10
150000000000.0
>>> a = 0.000000000025
>>> a
2.5e-11
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

布尔类型 bool

用 True 和 False 来表示真假,任何非 0 数字都为 True。所以,在一定意义上可以把 bool 类型看成整型。不单独使用,和运算符一起使用

字符串

  • 单引号和双引号括起来的字段,称为字符串。注意,一旦使用单引号,要全程使用,不可单双一起用
  • 使用三引号,可以指定一个多行字符串
>>> word = '''我
阿里
没有
'''
>>> word
'我\n阿里\n没有\n'
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

原始字符串 r、转义字符 \

  • 反斜杠可以用来转义,使用 r 可以让反斜杠不发生转义
# 普通字符串之前加 r 或者使用反斜线 \
>>> test = r'C:\windows\system'
>>> test = C:\windows\system

>>> print(test))
C:\windows\system

# 原始字符串结尾不允许有反斜线出现,可通过下面的方式实现
>>> test = r'C:\windows\system\office''\\'
>>> print (test)
C:\windows\system\office\
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

字符串方法

dir函数

dir([object])

object -- 对象,变量,属性,方法
   
   
  • 1
  • 2
  • 3

字符串内置方法的使用 =大师兄python

str.find()   
New_Str = str.join()
   
   
  • 1
  • 2

常用方法见红色标注

字符串方法(中括号表示可选) 作用
capitalize() 把字符串的第一个字符改为大写
casefold() 整个字符串的所有字符改为小写
center(width[,fillchar]) 字符串居中,并使用fillchar(默认空格)填充至长度 width 的新字符串
count(sub[,start[,end]]) 统计次数,返回 sub 在字符串中出现的次数,start 和 end 表示范围,可选
encode(encoding='utf-8',errors='stice') 以 encoding 指定的编码格式对字符串进行编码,errors 指定不同的错误处理方法
decode(encoding=”utf-8”, errors=”strict”) Python3 中没有 decode 方法,但我们可以使用 bytes 对象的 decode() 方法来解码给定的 bytes 对象,这个 bytes 对象可以由 str.encode() 来编码返回。
endswith(sub[,start[,end]]) 检查字符串是否以 sub 字符结尾,start开始位置、 end 结束位置,可选。 返回参数,True,Flase
startswith(prefix[,start[,end]]) 检查字符串是否以 prefix 开头,start, end 可选参数
expandtabs([8]) 把字符串中的 tab 符号 (\t)转换为空格,如不指定参数,默认空格数是 tabsieze=8
find(sub[,start[,end]]) 检查 sub 是否包含在字符串中,如果有返回索引值,如果没有,返回 -1,start 和 end 可选
index(sub,[,start[,end]]) 跟 find 一样,不过如果 sub 不再 string 中会产生一个异常
isalnum() 如果字符串至少有一个字符,并且所有的字符串只包含数字或字母(空格、标点不行),返回 true,否则返回 false。
isalpha() 字符串至少有一个字符,并且只包含字母
isdecimal() 字符串只包含十进制数字,则返回 True
isdigit() 字符串只包含数字,返回True
islower() 至少包含一个字符,并且字符都是小写,返回 True
isupper() 字符串中至少包含一个字符,其他字符都是大写,返回 True
isnumeric() 如果字符串中只包含数字字符,返回 True
isspace() 字符串只包含空格,返回 True
istitle() 字符串是标题化(所有的单词大写开始,其余字母均小写),返回 True
join(sub) 字符串作为分隔符,插入到 sub 中所有的字符之间。是字符串作为分隔符,而不是 sub 作为分隔符 并不修改原始字符串
ljust(width) 返回一个左对齐的字符串,并使用空格填充至长度为 width 的新字符串
lower() 转换字符串中所有大写字符为小写
upper() 转换所有小写为大写
lstrip() 去掉字符串左边的所有空格
maketrans() 创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。
partition(sub) 找到子字符串 sub,把字符串分成一个 3 元组(pre_sub,sub,fol_sub),如果字符串中不包含 sub 则返回(”字符串”,’,’
replace(old,new[,count]) 把字符串中的 old 子字符串替换为 new 字符串,如果 count 指定,则不超过 count 次数
rfind(sub[,start[,end]]) 类似于 find,从右边开始查找
rindex(sub[,start[,end]]) 类似于 index,从右边开始查找
rjust(width) 返回一个右对齐的字符串,并使用空格填充至长度为 width 的新字符串
rpatition(sub) 类似 partition,从右边开始查找
rstrip() 删除字符串末尾的空格
split(sep='',[count]) 不带参数默认以空格为分隔符,讲字符串切割为列表,count 表示切割的次数。
splitlines([keepends]) 按照’\n’分隔,返回一个包含各行作为元素的列表,如果 keepends 参数指定,则返回前 keepends 行。
strip([chars]) 用于移除字符串头尾指定的字符,默认去除空格,chars 如果是字符串本身,返回空字符串,
swapcase() 翻转字符串中的大小写
title() 返回标题化,第一个字母大写,其他小写
translate(table, deletechars=”“) 根据 str 给出的表(包含 256 个字符)转换 string 的字符, 要过滤掉的字符放到 deletechars 参数中
zfill(width) 返回指定长度的字符串,原字符串右对齐,前边用 0 填充

字符串格式化 format

此格式化并非硬盘的格式化,而是帮助我们纠正或规范可能出现的格式不一样的问题。

format 有两个参数,一个是位置参数,一个是关键字参数,二者都传入到 replacement 字段。

位置参数-指定位置
>>> '{0} {0} {1}'.format('hello','there')
'hello hello there'

位置参数-不指定位置
>>> '{} {}'.format('hello','there')
'hello there'

关键字参数
>>> '{a} {b} {c}'.format(a='To be' ,b='or', c='not to be')
'To be or not to be'

关键字参数和位置参数混用,位置参数一定在前面
>>> '{0} {b} {c}'.format('To be' ,b='or', c='not to be')
'To be or not to be'

>>> site = {"name": "菜鸟教程","url": "www.baidu.com"}
>>> print('网站名:{name},地址 {url}'.format(**site))
网站名:菜鸟教程,地址 www.baidu.com

>>> list1 = ['菜鸟教程','www.baidu.com']
>>> print("网站名:{1[0]},地址{1[1]}".format('alex',list1))
网站名:菜鸟教程,地址www.baidu.com

>>> '{} 对应的位置是 {{0}}'.format('alex')
'alex 对应的位置是 {0}'
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

字符串格式化 %

符 号       描述 
%c    格式化字符及其ASCII码 
%s    str 格式化字符串 
%d     格式化整数 
%u    格式化无符号整型 
%o    格式化无符号八进制数 
%x    格式化无符号十六进制数 
%X    格式化无符号十六进制数(大写) 
%f    格式化浮点数字,可指定小数点后的精度,默认 6 位 
%e    用科学计数法格式化浮点数 
%E    作用同%e,用科学计数法格式化浮点数 
%g    %f和%e的简写 
%G    %f 和 %E 的简写 根据之的大小决定使用 %f 或 %E 
%p    用十六进制数格式化变量的地址

示例

>>> print('my name is %s and %d years old' % ('Alex',15))
my name is Alex and 15 years old

>>> num = 3.1415
>>> print('price is %.2f' % num)
price is 3.14
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值