数据类型:int  bool  str  list  元祖  dict  集合

int:整数型,用于各种数学运算。

bool:只有两种,True和False,用户判断。

str:存储少量数据,进行操作(用单引号或双引号包起来的是字符串)

list:列表,用 [] 括起来的是列表,用于存储大量的数据。

元祖:用()括起来的内容是元祖。元祖是只读的。元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")

dict:字典。用{}大括号包起来。对应的是大量关系型信息。例如{'name':'小明','age':16}

集合:用{}大括号包起来。例如:{1,2,2,3,5,6,7,9}

一、int

数字int :数字主要是用于计算,适用于各种数学运算,在这里需要学习的特殊一种是bit_length() ,是计算数字转换成二进制后的最少位数,相当于计算二进制数的长度。

i = 11

s1 = i.bit_length()

print(s1)

输出是 4

二、bool

布尔值就是两种:True 和 False 。

PS:几种数据类型的相互转换

int ---- str        所有的数字都可以转换成字符串类型的数字

i = 2

s2 = str(i)

print(s2,type(s2))

str ----- int      字符串中只有数字才能转换成整数类型

i = '2'

s3 = int (i)

print(s3,type(i))

int ----- bool        非0输出的bool值都是True,只有 0 输出的是False

i = 2

s4 = bool(i)

print(s4)

输出是True

i = 0

s4 = bool(i)

print(s4)

输出是False

bool ----- int            bool 值True转换成整数型的只有1, bool值False转换成整数型的只有0 #

i = True

s5= int(i)

print(s5)

i = False

s5= int(i)

print(s5)

PS:

while True :

pass

while 1 :

pass

这两个循环比较,while 1 的运行效率更高。

str ---- bool         只要输入的字符串非空,输出的bool就是True,空字符串输出的bool值是False,空格也算是有内容,不算空

i = '123456'

s6 = bool(i)

print(s6)

输出的是True

i = ' 123456'

s6 = bool(i)

print(s6)

输出的是True

i = ' '

s6 = bool(i)

print(s6)

输出的是True

i = ''

s6 = bool(i)

print(s6)

输出的是False

例如:

s       #这里的s是一个动态的字符串,可以检测输入的内容是不是空的
if s:
print('你输入的为空,请重新输入')
else:
pass

三、字符串    str

字符串的各种操作:

1.字符串的索引和切片

索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。(用中括号【】来表示,负号代表倒着数,倒着数的时候从1开始)

s = 'ABCDEFGHIJK'
print(s7[0])
# 输出是A
print(s7[5])
# 输出是F
print(s7[8])
# 输出是I
print(s7[-1])
# 输出是K
print(s7[-3])
# 输出是I

切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。(用中括号【】来表示)

s8 = s[0:4]
print(s8)
# 输出的是ABCD
s8 = s[0:-1]
print(s8)
# 输出的是ABCDEFGHIJ
s8 = s[0:]
print(s8)
# 输出的是ABCDEFGHIJK
s8 = s[:]
print(s8)
# 输出的是ABCDEFGHIJK
s8 = s [0:8:2]
print(s8)
#输出的是ACEG
s8 = s [::3]
print(s8)
#输出的是ADGJ
s8 =s [8:1:-2]
print(s8)
# 输出的是IGEC

2.(1)字符串首字母大写

字符串.capitalize()

s = 'guobeibei   sir  is A Man '
s9 = s.capitalize()
print(s9)
# 输出的是 Guobeibei sir is a man

(2)字符串全大写(字符串.upper())全小写(字符串.lower())

s10 = s.upper()
s11 = s.lower()
print(s10)
print(s11)
# 输出的是 GUOBEIBEI SIR IS A MAN
# guobeibei sir is a man

例如:输入验证码

s_str = 'aCq4'
you_input = input('请输入验证码,不区分大小写')
if s_str.upper() == you_input.upper() :
print('输入成功')
else:
print('请重新输入')

(3)大小写翻转

s12 = s.swapcase()
print(s12)
# 输出的是 GUOBEIBEI SIR IS a mAN

(4)每个隔开(空格,特殊字符或者数字)的单词首字母大写

s13 = s.title()
print(s13)
# 输出的是 Guobeibei Sir Is A Man

(5)内同居中,总长度,空白处填充

s14 = s.center(30,'+')
print(s14)
# 输出的是 ++guobeibei sir is A Man ++

(6)默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个, # 如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。

s = 'ace\tsir'
s15 = s.expandtabs()
print(s15)
# 输出的是 ace sir

(7)公共方法 计算字符串长度

l = len(s)
print(l)
# 输出的是 26

(8)startswith 判断是否以...开头

s16 = s.startswith('gu')
print(s16)
# 输出的是 True

(9)endswith 判断是否以...结尾

s17 = s.endswith('an ')
print(s17)
# 输出的是 True

(10)寻找字符串中的元素是否存在 find 通过元素找索引,找到输出索引数,找不到返回-1 从左向右,找到第一个就停止了

s18 = s.find('i')
print(s18)

(11)寻找字符串中的元素是否存在 index通过元素找索引,找到输出索引数,找不到报错 从左向右,找到第一个就停止了

s19 = s.index('i')
print(s19)

(12)strip rstrip lstrip strip 默认删除前后空格 ()里有就可以删除什么 rstrip 只删除右边的 lstrip只删除左边的

s = 'alexWUsir%'
s9 = s.strip('%')
print(s9)
s = ' *a%lexWUsi* r%'
s91 = s.strip(' %*')
print(s91)

例如:

username = input('请输入名字:').strip()
if username =='春哥':
print('恭喜春哥发财')

(13)计数器 .count('') 计算某元素在字符串出现的次数

s = 'alexaa wusirl'
s10 = s.count('a')
print(s10)

(14)split 以什么分割,最终形成一个列表此列表不含有这个分割的元素 str ---->list

s = ';alex;wusir;taibai'
l = s.split('a')
print(l)
# 输出的是 [';', 'lex;wusir;t', 'ib', 'i']

(15)格式化输出 format的三种玩法

s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('太白',36,'girl','太白') 
print(s)
name = input('请输入名字:') s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name,36,'girl')
print(s)
name = input('请输入名字:') s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name=name,hobby='girl')
print(s)

# 注:前两种方式考虑顺序对应关系,最后一种不考虑顺序对应关系。

(16)替换 s.replace(老字符,新字符,替换几个老字符)    默认的是替换全部字符

s = '来看待街坊邻居复合大师街坊法好的撒见客户'
s11 = s.replace('街坊','老王',1)
print(s11)
#输出的是 来看待老王邻居复合大师街坊法好的撒见客户
s = '来看待街坊邻居复合大师街坊法好的撒见客户'
s11 = s.replace('街坊','老王',2)
print(s11)
#输出的是 来看待老王邻居复合大师老王法好的撒见客户

#####is系列
name='jinxin123'
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdigit()) #字符串只由数字组成

for in 循环

s = 'fhdsklfds'
for i in s:
print(i)
# 输出的是
# f
# h
# d
# s
# k
# l
# f
# d
# s
s = 'fdsa苍井空fdsalk'
if '苍井空' in s:
print('您的评论有敏感词...')
# 输出的是 您的评论有敏感词...

Python基础数据类型之int、bool、str的更多相关文章

  1. python中的基本数据类型之 int bool str

    一.基本数据类型 1. int  ==>  整数.主要用来进行数学运算. 2.str  ==>  字符串.可以保存少量的数据,并进行相应的操作. 3.bool  =>  布尔值.判断 ...

  2. python-基本数据类型(int,bool,str)

    一.python基本数据类型 1. int ==>  整数. 主要⽤用来进⾏行行数学运算 2. str ==> 字符串串, 可以保存少量量数据并进⾏行行相应的操作 3. bool==> ...

  3. 基本数据类型(int,bool,str)

    1.int bit_lenth() 计算整数在内存中占用的二进制码的长度 十进制 二进制 长度(bit_lenth()) 1 1 1 2 10 2 4 100 3 8 1000 4 16 10000 ...

  4. Python——字符转换(int , bool ,str)

    while True: pass while 1: pass #效果相同,后者 效果更快 s = 1 y = bool (s) #结果为True,int只要不是0,就为真 s = 'abc' y = ...

  5. 第三天-基本数据类型 int bool str

    # python基础数据类型 # 1. int 整数 # 2.str 字符串.不会用字符串保存大量的数据 # 3.bool 布尔值. True, False # 4.list 列表(重点) 存放大量的 ...

  6. day03 int bool str

    1. 昨日内容回顾 1. while循环 语法: while 条件: 循环体 else: 语句块 执行过程:判断条件是否为真. 如果真, 执行循环体.然后再次判断条件... 直到条件为假循环停止 br ...

  7. Python的基础类型(int,bool,str):

    Python的基础类型(int,bool,str): 1.int -------> 整形:主要用力进行数字计算 2.string ------>字符串:可以保存少量数据并进行相关的操作 3 ...

  8. day3------基本数据类型int, bool, str,list,tuple,dict

    基本数据类型(int, bool, str,list,tuple,dict) 一.python基本数据类型 1. int  整数. 主要用来进行数学运算 2. str  字符串, 可以保存少量数据并进 ...

  9. 基本数据类型int,bool,str

    .基本数据类型(int,bool,str) 基本数据数据类型: int 整数 str 字符串. 一般不存放大量的数据 bool 布尔值. 用来判断. True, False list 列表.用来存放大 ...

随机推荐

  1. linux编程基础汇总贴

    linux编程基础汇总贴http://newzol.cn/forum.php?mod=viewthread&tid=67&fromuid=3(出处: newzol) 1.管道 http ...

  2. 第一周CoreIDRAW课总结

      一. 问:这节课学到了什么知识? 答:这节课我学到了很多知识,作为初学者的我,老师给我讲了CorelDEAW的启动,安装,基础知识和应用与用途. 基础知识 位图:是由无数个像素点构成的图像,又叫点 ...

  3. 1-3 hibernate核心对象关系映射 xxx.hbm.xml

    详见  http://www.cnblogs.com/biehongli/p/6532800.html 1 <?xml version="1.0" encoding='utf ...

  4. Mycat 分片规则详解--ER关系表分片

    ER模型是实体关系模型,基本元素是实体.关系和属性,Mycat 针对ER关系表的切分规则中,使得有相互依赖的表能够按照某一个规则切分到相同的节点上,避免垮库 Join 关系查询,下面的示例为订单(or ...

  5. Android_scaleType属性

    这里我们重点理解ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType).android:scaleType ...

  6. 多线程——工具类之Semaphore

    一.Semaphore功能介绍 Semaphore类相当于线程计数器,在获取Semaphore对象时设定可以产生的线程总数(线程并不是Semaphore类生成的,它只是统计线程的数量),创建Semap ...

  7. jenkins忘记密码怎么办?

    在nginx配置文件中加上域名访问,重定向到本机的8080端口. server { listen 80; server_name tomcat.qinyj.top; root /application ...

  8. CSS以及JQuery总是忽略掉的小问题

    1.自动居中一列布局需要设置 margin 左右值设置为 auto,而且一定要设置width为一个定值. 2.css3: 3.修改时间SQL(格式) update table set timeColu ...

  9. WEB烟花效果——Canvas实现

    摘要        本文主要介绍一种WEB形式的烟花(fireworks)效果(图1所示),该效果基于Canvas实现,巧妙地运用了canvas绘图的特性,并加入了物理力作用的模拟,使整体效果非常绚丽 ...

  10. java日期格式大全 format SimpleDateFormat

    http://www.cnblogs.com/loveyakamoz/archive/2011/08/18/2145047.html