python基本数据类型,int,bool,str

不想你离开。 提交于 2019-12-26 01:33:41

一丶python基本数据类型

  1.int  整数,主要用来进行数学运算.

  2.str  字符串,可以保存少量数据并进行相应的操作

  3.bool  判断真假.True.False

  4.list  存储大量数据,用[]表示

  5.tuple  元组,不可以发生改变 用()表示

  6.dict  字典,{key:value} ,一样可以保存大量数据

  7.set  集合,保存大量数据,不可以重复,其实就是不保存value的dict.

 

二丶整数(int)

  bit_length().计算整数在内存中占用的二进制码的长度

 

三丶布尔值(bool)

  布尔只有两个值,Ture,False  一般是没有什么操作的

  类型转换问题:

    把XX转换为YY:  YY(XX)

    数字 =>  字符串        str(数字)

  可以表示False的内容: 0,"",[],tuple(),{},None

  所有的空都是False,所有的非空是True

 

四丶字符串(str)

  把字符连成串,在python中用',","""引起来的内容被称为字符串

 4.1:切片和索引

  1.索引就是下标,从0开始

 1 s1 = "python最牛B"
 2     # 0123456 7 8    下标
 3 print(s1[0])   #获取第一个
 4 print(s1[1])
 5 print(s1[2])
 6 print(s1[3])
 7 print(s1[4])
 8 print(s1[5])
 9 print(s1[6])
10 print(s1[7])
11 print(s1[8])     #获取最后一个
12 # print(s1[9])     #索引不能超过边界
13 
14 print(s1[-1])  #负数为倒数   -1为倒数第一个
15 print(s1[-2])  #-2为倒数第二个
View Code

 

 

  2.切片

    我们可以使用下标来截取部分字符串的内容

      语法: str[start:end]

      规则:顾头不顾腚,从start开始截取,截取到end 位置,但不包括end  

 1 s2 = "python无敌BBQ"
 2 
 3 print(s2[0:3]) #从下标零开始获取,获取到下标3,但是不包括下标3,就是获取到下标2了 ,结果为 pyt
 4 print(s2[6:8])#从下标6开始获取,下标6为"无",获取到下标7,所以结果为 无敌
 5 print(s2[9:11])# 顾头不顾腚,要想获取到10,必须到11  结果为 BQ
 6 print(s2[9:12])#如果后面那个值超出最大下标的值,则只显示到最大坐标处  结果为  BQ
 7 print(s2[4:]) #如果想直接获取到最后,那后面的那个值也可以不给  结果为 on无敌BBQ
 8 print(s2[-5:-1]) # 负数为倒取,从后往前取   结果为  无敌BB
 9 print(s2[-5:])# 从倒数第五个,直接获取到最好后  结果为 无敌BBQ
10 print(s2[-1]) # 取倒数第一个  结果为 Q
11 print(s2[:])# 范围不写 代表输出所有值 结果为  python无敌BBQ
View Code

 

   3.步长

    如果是整数,则从左往右取,如果是负数,则从右往左取,默认是1 

    语法:

    str[start:end:step]

    start:起始位置

    end:结束位置

    step:步长

1 s2 = "python无敌BBQ"
2 print(s2[1:6:2])#从下标1开始取,取到下标5,每两个取一个   结果为 yhn
3 print(s2[3:8:3])#同上,从下标3开始取,取到下标7,每三个取一个  结果为 h无
4 print(s2[4::2])#从下标4取到最后,每两个取一个 结果为 o无BQ
5 print(s2[-5::3])#从倒数下标5取到最好,每三个取一个  结果为 无B
View Code

 4.2字符串相关操作

  切记,字符串是不可变对象,所以任何操作对原字符串不会有任何影响的

  1.大小写相互转换

  

 1 # str字符串转换
 2 s1 = "alex eggon,TaiBai*yinWang_麻花藤"
 3 print(s1)
 4 ret = s1.capitalize()
 5 print(ret)
 6 ret = s1.lower()  #全部转换为小写
 7 print(ret)
 8 ret = s1.upper()  #全部转换为大写
 9 print(ret)
10 ret = s1.swapcase()     #大小写互相转换
11 print(ret)
12 # 不常⽤
13 ret = s1.casefold() # 转换成⼩写, 和lower的区别: lower()对某些字符⽀持不够好.casefold()对所有字⺟都有效. ⽐如东欧的⼀些字⺟
14 print(ret)
15 s2 = "БBß" # 俄美德
16 print(s2)
17 print(s2.lower())
18 print(s2.casefold())
19 ret = s1.title() #  Alex Eggon,Taibai*Yinwang_麻花藤  #特殊符号后的首字母大写
20 print(ret)
21 # 中文也算是特殊字符
22 s2 = "alex老男孩taibai"
23 ret = s2.title()  #Alex老男孩Taibai
24 print(ret)
View Code

 

结果:

  2.切片

 1 #去空格
 2 s3 = "       alex       taibai      "
 3 
 4 ret = s3.strip()   #去掉两端的空格
 5 print(ret)
 6 ret = s3.lstrip()   #去掉左边的空格
 7 print(ret)
 8 ret = s3.rstrip()   #去掉右边的空格
 9 print(ret)
10 #替换
11 s4 = "alex_taibai_taobao_eggon_xiaoniao"
12 ret = s4.replace("alex","金角大王") #把alex替换为金角大王
13 print(ret)
14 print(s4)
15 ret = s4.replace("t","T",2) #把t替换成T,替换两个
16 print(ret)
17 #切割
18 s5 = "alex_taibai_taobao_eggon_xiaoniao"
19 ret =  s5.split("_")  #字符串切割,根据_切割  结果为  ['alex', 'taibai', 'taobao', 'eggon', 'xiaoniao']
20 print(ret)
View Code

 

结果:

 

  3.格式化输出

1 #格式化输出
2 s6 = "我叫%s,今年%d岁了,我喜欢%s"%('alex',26,'周杰伦')  #之前的格式化输出
3 print(s6)
4 s6 = "我叫{},今年{}岁了,我喜欢{}" .format("alex",26,"周润发") #按位置格式化
5 print(s6)
6 s6 = "我叫{0},今年{2}岁了,我喜欢{1}" .format( "alex","周润发",26) #指定位置
7 print(s6)
8 s6 = "我叫{name},今年{age}岁了,我喜欢{singer}".format(name="alex", singer="周润发", age=28)     # 指定关键字
9 print(s6)
View Code

 

结果:

 

  4.查找

 1 #查找
 2 s6 = "我叫alex,我喜欢python,java,c等编程语言"
 3 ret = s6.startswith("alex")  #判断是否以alex开头
 4 print(ret)
 5 ret = s6.endswith("语言")  #判断是否以语言结尾
 6 print(ret)
 7 ret = s6.count("a")  #查找a出现的次数
 8 print(ret)
 9 ret = s6.find("叫的阿道")  #查找叫 出现的位置  如果没有则返回-1
10 print(ret)
11 ret = s6.index("java")   #索引"java"的位置,如果找不到,则会报错
12 print(ret)
View Code

 

结果:

  5.条件判断

 1 #条件判断
 2 s7 = "123.456"
 3 s8 = "abc"
 4 s9 = " ad$%&89"
 5 print(s7.isalnum())    #是否由字数和数字组成
 6 print(s8.isalnum())
 7 print(s9.isalnum())
 8 print(s7.isalpha())    #是否由字母组成
 9 print(s8.isalpha())
10 print(s9.isalpha())
11 print(s7.isdigit())    #是否由数字组成, 不包括小数点
12 print(s8.isdigit())
13 print(s9.isdigit())
View Code

 

 

 结果:

 

  6.计算字符串长度

1 #计算字符串长度
2 
3 s10 = "alex is a page"
4 ret = len(s10)
5 print(ret)
6 # 注意: len()是python的内置函数. 所以访问方式也不一样. 你就记着len()和print()一样就行 了
View Code

  7.迭代

 1 #迭代
 2 s11 = "我是xiaoniao,我从来都不放P"
 3 a = 0
 4 while a < len(s11):
 5     print(s11[a])   #利用索引切片来完成字符的查找
 6     a += 1
 7 for c in s11: #利用for循环把s11中每一个字符拿出来 赋给c
 8     print(c)
 9 print("xiaoniao"in s11)
10 '''    in有两种⽤用法:
11         1. 在for中. 是把每一个元素获取到赋值给前⾯的变量.
12         2. 如果不在for中. 判断xxx是否出现在str中. '''
View Code

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!