ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2.基本数据类型简介-int-str-bool

2019-05-10 21:38:01  阅读:383  来源: 互联网

标签:qian int sun 数据类型 wu li zhao bool print


基本数据类型简介

int 整数

bit_length():二进制的长度

a=10 //1010 #10的二进制形式
print(a.bit_length()) #测得是二进制的长度

str 字符串

字符串是不可变的对象,所以任何的操作对原字符串是没有任何影响的,操作会返回新的字符串

索引语法:字符串[索引];

s="zhao,qian,sun,li,zhou,wu,zheng,wang"
print(s[0])#索引正向:从零开始
print(s[-1])#反向:从-1开始

切片语法:str[start:end:step]

s="zhao,qian,sun,li,zhou,wu,zheng,wang"
print(s[0:10])#结果为:zhao,qian,  顾头不顾尾 取不到索引为10的那个字符
print(s[-8:-1])#结果为:eng,wan  索引为-1的是取不到的
print(s[2:100])#结果为:ao,qian,sun,li,zhou,wu,zheng,wang  给两个参数,默认向右切,第二个参数如果超出索引的范围,切到最后
print(s[:5])#结果为:zhao,  从头开始切  切到最后同理
print(s[:])#结果为:zhao,qian,sun,li,zhou,wu,zheng,wang  切出全部
#跳着切
print(s[2:9:3])#结果为:aqn  第三个参数代表步数,几步为一组,切出每组第一个,就是结果
print(s[-9:-1:2])#结果为:hn,a
print(s[9:2:-1])#结果为:,naiq,o  反着切

字符串常用的操作

较为重要的count()、find()、index()的操作

#count 数数
s="zhao*qian*sun*li,zhou,wu,zheng,wang"
print(s.count("o")) #统计字母o在字符串出现的次数
print(s.count("j")) #没出现则返回0

# find 查找 可有切片的结合
s="zhao*qian*sun*li,zhou,wu,zheng,wang"
print(s.find("o")) #返回的是索引  找不到则返回-1

#index 求索引  也可有切片
s="zhao*qian*sun*li,zhou,wu,zheng,wang"
print(s.index("o",6,20)) #返回的是索引  找不到则会报错

字母的大小写

s="xiao ming tai shuai le"
s1=s.capitalize() #首字母大写
print(s) #字符串是不可变对象
print(s1)
s2=s.title()#标题,就是每个单词首字母大写
print(s2)
s3=s.upper()#转换成大写字母
print(s3)
s4=s3.lower()#转换成小写字母
print(s4)
l="Xiao Ming"
l1=l.swapcase()#字母大小写转换
print(l1)

strip(str) :剔除特定的字符操作

j="   qu kong ge  "
j1=j.strip() #是去掉左右两边的空格  可用在登录功能方面
print(j)
print(j1)
j2=j.lstrip() #去掉的是左边的空格
j3=j.rstrip() #去掉的是右边的空格
print(j2)
print(j3)
s="小明真帅,臭美"
print(s.strip("臭美"))#去掉特定的字符

replace():替换字符

s="zhao,qian,sun,li,zhou,wu"
print(s.replace(",","之后是"))#结果为zhao之后是qian之后是sun之后是li之后是zhou之后是wu

split():切割字符串(想想锯木头的现实情况)

# #切割 想想锯木头的现实情况
s="zhao*qian*sun*li,zhou,wu,zheng,wang"
l=s.split("*") #列表来接收切割之后的每一项
print(l)#['zhao', 'qian', 'sun', 'li,zhou,wu,zheng,wang']

l1=s.split("zhao*qian*sun*li,zhou,wu,zheng,wang")#全部切割
print(l1) #得到两个空字符串:['', '']

l2=s.split("你")#不存在,则返回的是原字符串的内容
print(l2)#['zhao*qian*sun*li,zhou,wu,zheng,wang']

l3=s.split("zhao*qian*sun*li,zhou,wu,zheng,wang1111")#超出的情况
print(l3)#['zhao*qian*sun*li,zhou,wu,zheng,wang']

l5=s.split("o",1)#还有第二个参数的设置,作用是切数割的次,说成分割更恰当些
print(l5)#['zha', '*qian*sun*li,zhou,wu,zheng,wang']

#在开头和结尾出现你的刀,一定会出现空的字符串
#空字符串不能做参数

{}版的格式化输出

print("{}帅,{}信不,不信给你{}".format("小明","我",200))
print("{1}帅,{0}信不,不信给你{2}".format("小明","我",200))
#这个不要求数据类型,通吃

startswith()、endswith()

s="zhao*qian*sun*li,zhou,wu,zheng,wang"
print(s.startswith("zhao"))#T   判断开头是否为***
print(s.endswith("wan"))#F    判断结尾是否为***

isalnum()、isalpha()

s="zhaoqiansunlizhouwu21343zhengwang"
print(s.isalnum())#T 判断字符串为数字和字母组合而成
print(s.isalpha())#F 判断字符串为字母组合而成

python的内置函数

len():计算字符串的长度

迭代:我们可以使用for循环来便利(获取)字符串中的每一个字符

该语法:for 变量 in 可迭代对象:#可迭代对象:可以一个一个往外取值的对象

      pass

#迭代与len()
s="你好帅"
print(len(s))#3
for k in s:
    print(k)

bool 布尔值

数字变成bool:如果数字是零,那么bool值为False 如果是非零的,那么bool值为True

True与1的效率问题:1的效率高

字符串转换成bool类型:空字符串是False,非空字符串都是True

a=None #真空 什么都没有 它的bool值是False

总的来说涉及到空的(各种数据类型)bool值都是False,非空:True

有什么不对的地方,欢迎指正。

标签:qian,int,sun,数据类型,wu,li,zhao,bool,print
来源: https://www.cnblogs.com/zx-ky/p/10846862.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有