python中 int、str、bool使用

1.基础数字类型
int:用于计算,计数,运算等。1,2,3,100...
str:'这些内容'用户少量数据的存储,便于操作。
bool:True,False两种状态,机器反馈给用户的对,错。
list:[1,'student',True,[ ],( ),{ }...]大量的数据,各种数据类型,操作方便。
tuple:( 1,'student',True,[ ],( ),{ }...),只读列表。
dict:字典。大量的关联型数据。
{'name':'alex','name_list':[小甲鱼,小鱿鱼,村花....],'丽丽':{'name':'丽丽','sex':男}}
set:集合,{ }关系测试。
2.int
i=4
print(i.bit_length()) #查询十进制转换成二进制占用的最小位数
3.bool
数据类型之间的转化。 *****
int----->str str(int) int(str)
int----->bool 非零及True,零即为False,True----->1 False--->0
bool<--->str
(1)print(bool('alex')) #True
(2)空字符串--->bool False,非空即True
s1=' '
print(bool(s1)) #True
(3)
name=input(">>>")
if name:
     print('666')
else:
     print('333') #666
(4)bool---->str
print(str(True),type(str(True))) #True <class 'str'>

 对字符串的下面这两部分操作:形成的都是一个新的字符串,与原来的字符串没有关系。

4.字符串的索引,切片
(1)按照索引取值,取出来的都是一个字符,形成的字符串。
s1='python1期骑士计划'
s2=s1[0]
print(s2,type(s2)) #p <class 'str'>
s3=s1[-1]
print(s3) #划
(2)按照切片取值,左含(包含)右不含(包含)
s1='python1期骑士计划'
s5=s1[0:6]
s6=s1[ :6]
s7=s1[6:]
print(s5)
print(s6)
print(s1[1:7])
print(s7)
>>>python
python
ython1
1期骑士计划

 

(3)按照切片+步长
s8=s1[:5:2]
s9=s1[1::2]
#如果想倒序取值,加一个反向步长(负号)。
s10=s1[-1:-6:-2]
print(s8,s9)
print(s10)
>>>pto yhn期士划
划士期

 5.字符串的常用方法

  

name='\t   oldBody   \n'
(1)capitalize() 首字母大写 ***
print(name.capitalize()) #   oldbody  
(2)center 字符串居中前后填充自定义的字符 **
print(name.center(20,'*'))     #**    oldBody
(3)upper 全部大写  lower  全部小写  *****
print(name.upper()) #OLDBODY
print(name.lower()) #oldbody 
应用举例
username= input('请输入用户名:')
code='ADfer'.upper()
your_code=input('请输入验证码:').upper()
if username=='alex' and your_code==code:
    print('账号密码及验证码输入正确')

  

(4)startswith endwith 用法一样,以...开始/结束
name='pYtHon'
print(name.startswith('o')) #判断是不是以o开始  False
print(name.startswith('pY')) #判断 是不是以pY开始 True
print(name.startswith('Y',1)) #判断 是不是以Y第一个位置开始  True
print(name.startswith('Yt',1,5)) #判断 是不是以Yt是不是在1到5位置 True
print(name.startswith('pYtHon')) #判断是不是以pYtHon开始   True
name='pYtHon'
print(name.endswith('n')) #判断是不是以n结束  True
print(name.endswith('on')) #判断是不是以n结束  True
print(name.endswith('n',5)) #判断是不是以n第5个位置结束 True
print(name.endswith('on',1,6)) #判断on是在第1到第6个位置结束 True
print(name.endswith('pYtHon')) #判断是不是以pYtHon结束   True

  

(5)swapcace 大小写翻转
name='pYtHon' print(name.swapcase()) #PyThON (6)title 非字母隔开的每个部分的首字母大写 ** s1='alex wusir*taibai6nvshen'
print(s1.title()) #Alex Wusir*Taibai6Nvshen (7)find 通过元素找索引,找到第一个就返回,没有此元素就返回-1 ***** index 通过元素找索引,找到第一个就返回,没有此元素就报错 print(name.find('B')) #3 print(name.find('ld')) #1 print(name.find('w')) #-1 print(name.find('o')) #0 print(name.find('d',1,-1)) #2 d是整体的索引 print(name.index('q')) #报错 (8)strip 默认去除字符串前后空格,换行符,制表符 ***** name='oldBody' name1='*alex**' name2='weralexwqwe' print(name.strip()) #oldBody print(name1.strip('*')) #alex print(name2.strip('erw')) # alexwq 可以指定去除 lstrip() 去除左边空格 rstrip() 去除右边空格 name=' oldBody ' print(name.lstrip()) print(name.rstrip())

  

应用场景: 
username=input('请输入用户名:').strip()
         
 if username=='alex': 
              
    print('登陆成功.....')

  

 

(9)split   将字符串分割成列表(str--->list)
s1=' alex wusir taibai'
l1=s1.split() #默认按照空格分隔
print(l1)  #['alex', 'wusir', 'taibai']
s2='alex, wusir,taibai'
print(s2.split(''))  #['alex, wusir,taibai']  按照,分隔
s3=',alex,wusir,taibai'
print(s3.split(','))  #['', 'alex', 'wusir', 'taibai'] # 按照,分隔成4个
s4=' alex wusir taibai'
print(s4.split(' '))  #['', 'alex', 'wusir', 'taibai']  #按照空格分隔
s5='alexlwle'
print(s5.split('l',1))  #按照l进行分隔,可设置次数   ['a', 'exlwle']
练习:
print(s5.rsplit())
(10)join 自定制连接符,将可迭代对象中的元素连接起来  *****
str1='alex'
s2='*'.join(str1)
print(s2)  # a*l*e*x
(11)replace  替换  *****
str2='alex是创始人,alex很厉害,alex很帅'
s3=str2.replace('alex','艾利克斯',1)  #替换次数可设置
print(s3)

6.格式化输出:format

(1)
s1='我叫{},今年{},性别{}'.format('小甲鱼','22','')
print(s1)
(2)下标可以重复使用
s2='我叫{0},今年{1},性别{2},我依然叫{0}'.format('小甲鱼','22','')
print(s2)
(3)
s3='我叫{name},今年{age},性别{sex}'.format(age='22',sex='',name='小甲鱼')
print(s3)

7.is 系列

name='taibai123'
name1='a123'
print(name.isalnum()) #判断字符串是否由数字或字母组成 True
print(name1.isdigit())  #判断全部由整数组成   False
print(name.isalpha())  #判断由字母组成   False

8.公共方法

 name='alexaaa' 
print(name.count('a')) #判断a出现次数,并且有切片 4

print(len(name)) #判断元素的个数 7

9.for循环

将s1的字符打印出来

 

s1='skdqwewwwwwdffkkbbdjdsbhdhs'
方法一
index=0
while index<len(s1):
    print(s1[index])
    index+=1

方法二

如果对于一个数据类型循环,或者是一个有限次数的时候,往往要用到for
(1)for i in s1:  #for 变量 in iterable(可迭代对象:多个元素组成的数据)
    print(i)
(2)for i in s1:    #for循环的次数是和迭代对象的元素个数有关
    print(666)

 

posted @ 2020-05-10 17:05  菜鸟鸭  阅读(444)  评论(0编辑  收藏  举报