广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python基础数据类型----整数 ,
  • 546
分享到

python基础数据类型----整数 ,

整数数据类型基础 2023-01-31 00:01:33 546人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

Python基础数据类型 bool str int 三者之间的转换 str索引切片,常用操作方法 for循环(大量的练习题) 1.基础数类型总览 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(t

Python基础数据类型

  • bool str int 三者之间的转换
  • str索引切片,常用操作方法
  • for循环(大量的练习题)

1.基础数类型总览

  • 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(tuple),字典(dict),集合(set).
    • 10203 123 3340 int 主要用于计算+- * / 等等
    • '今天吃了没?' str 存储少量的数据,并进行相应的操作。str1 + str2, str *int , 索引,切片, 其他操作方法
    • True False bool 判断真假
    • [12, True, 'alex', [1,2,3 ]] list 存储大量有序数据。列表内部数据可任意改动
    • (12, True, 'alex', [1,2,3 ]) tuple 存储大量的数据,元组不可改变里面的元素。只读,不能更改。
    • {'name': '太白金星'} dict 字典存储大量的关联性比较强的数据,查询速度非常快。
    • set 集合

2.数字int

  • 十进制二进制转换
    
    #二进制转换成十进制
    0001 1010     ------>   26
    
    b = 1 * 2**4 + 1 * 2**3 + 0 * 2**2 + 1 * 2**1 + 0 * 2**0
    print(b)  # 26
    
    
    #十进制整数转换成二进制整数 
    42  -----> 0010 1010    除2取余,逆序排列
    
    #十进制小数转换成二进制小数  
    乘2取整,顺序排列:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,此时0或1为二进制的最后一位。或者达到所要求的精度为止。
    0.625 = (0.101)B
    0.625 * 2 = 1.25 ---->1
    0.25 * 2 =0.5    ---->0
    0.50 * 2 =1.0    ---->1
    
  • bit_lenth 十进制转化成二进制的有效长度【bit_length()计算整数在内存中占用的二进制码的长度.】

    # bit_lenth 有效的二进制的长度
    i = 4
    print(i.bit_length())  # 3
    i = 5
    print(i.bit_length())  # 3
    i = 42
    print(i.bit_length())  # 4

3.布尔值bool:True False

  • bool str int 三者之间的转换

    数据类型之间的转换:
    ##### bool  <---> int #######
    #bool-->int  :True    1   False     0
    print(int(True))  # 1
    print(int(False))  # 0   
    
    #int-->bool  :非零即True ,0 为 False
    i = 0
    print(bool(i))
    
    【重点】##### str   <--->   int  #####
    # str ---> int  : 只能是纯数字组成的字符串可以转化成数字类型
    s1 = '1088'     
    print(int(s1))  # 字符串引号内必须是数字组成 
    
    print(int('   22   '))#22  仅由数字和空白组成的字符串,通过int进行数据类型转换时,自动去除空格
    print(int('   \n   22\t'))#22  仅由数字和空白组成的字符串,通过int进行数据类型转换时,自动去除空格
    
    #应用:两个整数相加
    while 1:
        content = input('请输入内容:')
        l1 = content.split('+')
        result = int(l1[0]) + int(l1[1])
        print(result)
    
    
    # int ----> str  所有数字都能转化成字符串
    i = 100
    print(str(i),type(str(i)))
    
    【重点】###### str <---> bool ##### 
    # str--->bool :非空即True
    s1 = ' '  #空格,不是空
    print(bool(s1))  #True
    
    s1 = ''  # 空字符串,为False
    print(bool(s1))   #False
    
    # bool  ---> str  无意义
    print(str(True), type(str(True)))  # 运行结果:True <class 'str'>
    
    • 应用:
    s = input('输入内容')   #input输入的为字符串类型
    if s:                #(字符串作为布尔值进行判断)
        print('有内容')
    else:
        print('没有输入任何内容')
    #直接回车,显示“没有输入任何内容”
    #先空格,再回车,显示“有内容”

4.字符串str(重点)

  • python中凡是用引号引起来的数据可以称为字符串类型,组成字符串的每个元素称之为字符,将这些字符一个一个连接起来,然后在用引号起来就是字符串。

  • 索引:索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推

  • 切片:切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串

  • 对字符串进行索引和切片,出来的数据都是字符串类型

  • 常用操作方法:字符串的常用操作方法,不会对原字符串进行任何操作,都是产生一个新的字符串

    • 索引切片步长
    #字符从左至右有顺序,依次为0,1,2....。从右往左以次为-1,-2,-3,....
    s1 = 'Python全栈22期'
    
    # 按照索引取值,每次取一个字符。索引即下标index
    s2 = s1[0] 
    print(s2)          #p
    print(s2,type(s2)) #p <class 'str'>
    s3 = s1[2]
    print(s3)          #t
    s4 = s1[-1]
    print(s4)          #期
    
    # 按照切片取值。按照切片取值,原则:顾头不顾腚
    s5 = s1[0:6]
    s5 = s1[:6]  #从开头开始取,0可以默认不写
    print(s5)   #python
    s6 = s1[6:]
    print(s6)   #全栈22期
    print(s1[:-1] #python全栈22 
                   #-1 是列表中最后一个元素的索引,但是要满足顾头不顾腚的原则,所以取不到'期'元素
    
    # 切片步长
    s7 = s1[:5:2]  #加步长
    print(s7)     #pto
    print(s1[:])  ##开头到最后,python全栈22期
    
    # 倒序:
    s8 = s1[-1:-6:-1]  ##反向加步长
    print(s8)     #期22栈全
    
    # 倒序全部取出来
    s9 = s1[-1::-1]
    print(s9)    #期22栈全nohtyp
    
    s9 = s1[::-1]
    print(s9)    #期22栈全nohtyp
    
    s9 = s1[-1:0:-1]  #错误
    print(s9)    #期22栈全nohty  没有字母p 
    
    
     按索引:s1[index]   注释:index下标
     按照切片取值: s1[start_index: end_index+1]
     按照切片步长取值: s1[start_index: end_index+1: step]
     反向按照切片步长取值: s1[start_index: end_index后延一位: step]
    
    
  • 练习题

    '''
    有字符串s = "123a4b5c"
    通过对s切片形成新的字符串s1,s1 = "123"
    通过对s切片形成新的字符串s2,s2 = "a4b"
    通过对s切片形成新的字符串s3,s3 = "1345"
    通过对s切片形成字符串s4,s4 = "2ab"
    通过对s切片形成字符串s5,s5 = "c"
    通过对s切片形成字符串s6,s6 = "ba2"
    '''
    
    s = "123a4b5c"
    s1 = s[0:3]
    s1 = s[:3]
    print(s1)
    s2 = s[3:6]
    s2 = s[-5:-2]
    print(s2)
    s3 = s[0:-1:2]
    print(s3)
    s4 = s[1:6:2]
    print(s4)
    s5 = s[-1]
    print(s5)
    s6 = s[-3:0:-2]
    print(s6)
    
    • 常用操作方法【重点】
    字符串的常用操作方法,不会对原字符串进行任何操作,都是产生一个新的字符串
    
    
    upper lower
    #例
    s = 'taiBAifdsa'
    s1 = s.upper()   #字符串s中字符全部大写(不会对原字符串进行任何操作,都是产生一个新的字符串
    print(s1,type(s1))  #TAIBAICBR
    s2 = s.lower()    #字符串s中字符全部小写
    print(s2,type(s2))   #taibaicbr
    
    # 应用:
    username = input('用户名')
    passWord = input('密码')
    code = 'QweA'
    print(code)
    your_code = input('请输入验证码:不区分大小写')
    if your_code.upper() == code.upper():
        if username == '太白' and password == '123':
            print('登录成功')
        else:
            print('用户名密码错误')
    else:
        print('验证码错误')
    
    
    
    startswith    endswith
    #startswith 判断是否以...开头
    s = 'taiBAifdsa'
    print(s.startswith('t'))        #True ***【重点】 判断是否以单个字符开头
    print(s.startswith('taiBAi'))   #True ***【重点】 判断是否以多个字符开头
    print(s.startswith(' '))        #False 判断是否以空格开头
    
    #endswith 判断是否以...结尾
    s = 'taiBAIcBr'
    s1 = s.endswith('t')
    print(s1)  #False,返回的是布尔值
    s2 = s.endswith('Br')
    print(s2)  #True
    
    # 了解
    s = 'taiBAifdsa'
    print(s.startswith('B',3,6))   #True   括号内的字符串必须加引号'B'
                                   #切片,顾头不顾腚。判断'BAi'是否以B开头。下标3,6,不包括6对应的f。
    s = 'taiBAifdsa'
    print(s.endswith('f',3,6))    #False
    
    
    
    replace(old,new,count)
    #讲
    msg = 'alex 很nb,alex是老男孩教育的创始人之一,alex长得很帅'
    msg1 = msg.replace('alex','太白')  # 默认全部替换,用'太白'替换'alex'
    msg1 = msg.replace('alex','太白',2)   #用'太白'替换'alex',2表示只替换前两个字符串
    print(msg)  #alex 很nb,alex是老男孩教育的创始人之一,alex长得很帅
    print(msg1) #太白 很nb,太白是老男孩教育的创始人之一,alex长得很帅
    
    #自
    msg = '小明生病了,小明没去上学,小明在家休息'
    msg1 = msg.replace('小明','小红')
    print(msg1)  #小红生病了,小红没去上学,小红在家休息
    msg2 = msg.replace('小明','小红',2)
    print(msg2)  #小红生病了,小红没去上学,小明在家休息
    
    #自:比如某个字母小写变大写,大写边小写
    s = ' qw sertyu eQtrti '
    s1 = s.replace('t','T',2)
    print(s1)# qw serTyu eqTrti
    
    
    
    strip:去除空白,如空格,\t制表符, \n换行符。
    # \n(换行符-将光标移动到下一行的开头)
    # \t(水平制表符-将光标向右移动一个制表符位)
    
    #默认去除字符串两边的空格,换行符,制表符
    s4 = '  \n太白\t'
    print(s4)
    s5 = s4.strip()
    print(s5)
    #修改测试
    s4 = '  \n太 白 tai \tbai\t'
    print(s4)
    s5 = s4.strip()
    print(s5)#太 白 tai     bai   #只能去掉两边的空白,内部的去不掉
    
    
    
    name='*barr*y**'
    print(name.strip('*'))  # barry
    print(name.lstrip('*'))  # barry**
    print(name.rstrip('*'))  # *barry
    #修改测试
    name='*barr*y**'
    print(name.strip('*'))  # barr*y   #只把两边的*去掉了,内部的*去不了。
    print(name.lstrip('*'))  # barr*y**
    print(name.rstrip('*'))  # *barr*y
    
    # 了解:可以去除指定的字符
    s4 = 'rre太r白qsd'
    s5 = s4.strip('qrsed')  #括号内字符串加引号,字符顺序无所谓
    print(s5)  #太r白     #只能去两头的对应字符
    
    
    split  【非常重要】以什么分割,最终形成一个列表,此列表不含有这个分割的元素。
    # str ---> list  字符串类型转换为列表类型,- 默认按照空格分隔,可以指定分隔符。
    
    # 默认按照空字符串(空格,换行,制表符)分隔,返回一个列表
    s6 = '太白 女神 吴超'
    l = s6.split()
    print(l)  #['太白', '女神', '吴超']
    
    # 指定分隔符
    s6 = '太白:女神:吴超'
    l = s6.split(':')   #  :作为分隔符
    print(l)  #['太白', '女神', '吴超']
    
    ret9 = 'title,Tilte,atre,'.split('t')  # t作为分隔符
    print(ret9)  #['', 'i', 'le,Til', 'e,a', 're,']  ''空字符
    
    #rsplit  
    ret91 = 'title,Tilte,atre,'.rsplit('t',2)  
    print(ret91)#['title,Til', 'e,a', 're,']
    
    # 了解:
    s6 = ':barry:nvshen:wu'
    print(s6.split(':'))    #['', 'barry', 'nvshen', 'wu']  注:''空字符串
    print(s6.split(":",2))  #['', 'barry', 'nvshen:wu']  #2表示前两个:有效
    
    #自-实验
    s1 = ' .haha.heihei.hehe.123'
    s2 = s1.split('.')   # .作为分隔符
    s3 = s1.split('.',3)
    print(s2)  #[' ', 'haha', 'heihei', 'hehe', '123']  注:' ' 引号内为空格
    print(s3)  #[' ', 'haha', 'heihei', 'hehe.123']
    
    
    
    join(iterable):联合,连接,可以操作任何可迭代对象(可迭代:这个数据由多个元素组成,如字符串,列表),     
    
    s1 = 'alex'
    s2 = '+'.join(s1)   #'设置连接符'.join(iterable)  iterable可迭代  用+作为连接符
    print(s2)   #   a+l+e+x(字符串类型)
    print(s2,type(s2))  # a+l+e+x <class 'str'>
    
    #list ---> str  前提:列表里面的元素必须都是str类型才行
    l1 = ['太白', '女神', '吴超'] 
    s3 = ':'.join(l1)   #用:作为连接符
    print(s3)   #  太白:女神:吴超(字符串类型)
    print(s3,type(s3)) #太白:女神:吴超 <class 'str'>
    s3 = ' '.join(l1)   #用空格作为连接符
    
    
    
    count
    #count数出字符串中的元素出现的个数。
    s8 = 'sdfsdagsfdagfdhgfhgfhfghfdagsaa'
    print(s8.count('a'))  #5,5是数字类型
    s9 = s8.count("a",0,11) # 可切片,索引0,11不包含11
    print(s9)             #2
    
    
    fORMat: 格式化输出
    # 第一种用法:
    msg = '我叫{}今年{}性别{}'.format('大壮',25,'男')
    # 第二种用法:
    msg = '我叫{0}今年{1}性别{2}我依然叫{0}'.format('大壮', 25,'男')
    print(msg)
    # 第三种用法:
    a = 100
    msg = '我叫{name}今年{age}性别{sex}'.format(age=a,sex='男',name='大壮')  #此处format()内可以不按顺序
    print(msg)
    
    
    is 系列: 返回布尔值
    #name = '100①'
    name = 'taibai123'
    print(name.isalnum()) #字符串由字母或数字组成   True
    print(name.isalpha()) #字符串只由字母组成    False
    
    s1 = '123'
    print(s1.isdecimal()) #字符串只由十进制组成    True
    print(s1.isdigit())  # 如果字符串中的所有字符都是数字,并且至少有一个字符,则返回True。  True
    
    s1 = b'123'
    # print(s1.isdecimal()) #报错:AttributeError: 'bytes' object has no attribute 'isdecimal'
    print(s1.isdigit())  # 如果字符串中的所有字符都是数字,并且至少有一个字符,则返回True。  True。
    
    
    #应用
    s1 = input('请输入您的金额:')
    if s1.isdecimal():
         print(int(s1))
    else:
         print('输入有误')
    
    补充:
    #寻找字符串中的元素是否存在
      find :通过元素找索引,找到第一个就返回,找不到 返回-1
      index:通过元素找索引,找到第一个就返回,找不到 报错
    
    a4 = "dkfjdkfasf54"
    ret1 = a4.find("fjdk",1,6)
    print(ret1)  #2 返回的找到的元素的索引,如果找不到返回-1
    ret2 = a4.index("fjdk",2,6)
    print(ret2) #2 返回的找到的元素的索引,找不到报错。
    ret2 = a4.index("fjdk",4,6)
    print(ret2)#报错
    
    #capitalize,swapcase,title
    name='taiBAIhi123'
    print(name.capitalize()) #Taibaihi123   首字母大写,其余变小写
    print(name.swapcase()) #TAIbaiHI123     大小写翻转
    msg='taibai say hi'
    print(msg.title()) #Taibai Say Hi  每个单词的首字母大写
    
    # 内同居中,总长度,空白处填充
    ret3 = a4.center(22,"*")
    print(ret3)#*****dkfjdkfasf54*****
    
    #python内置函数
    1.len()
    #len():获取可迭代对象的元素总个数,是内置函数。不是字符串专用的
    
    2.ord()
    #以一个字符(长度为1的字符串)作为参数,返回单个字符的 ASCII 数值(0-255),或者 Unicode 数值,如果所给的 Unicode 字符超出了你的 Python 定义范围,则会引发一个 TypeError 的异常。
    print(ord('a'))#97
    print(ord('A'))#65
    
    3.chr()
    #chr()函数是输入一个整数(0-255),返回其对应的ASCII字符
    print(chr(65))#A
    print(chr(97))#a
    
    

5.for循环:有限循环

s1 = '老男孩edu'
print('老' in s1)   #True   成员运算符
print('老男' in s1)   #True
print('老ed' in s1)   #False
print('老ed' not in s1)  #True

s1 = '老男孩教育最好的讲师:太白'

输出:
'''
老      s1[0]
男      s1[1]
孩      s1[2]
教      s1[3]
育      ....
最
...
'''

s1 = '老男孩教育最好的讲师:太白'
print(len(s1))   #13

#while循环代码(利用while循环打印可迭代对象的每个元素)
s1 = '老男孩教育最好的讲师:太白'
index = 0
while index < len(s1):   # len() :获取可迭代对象的元素总个数,是内置函数。不是字符串专用的
     print(s1[index])
     index += 1


# for 循环

'''
有限循环
for 变量 in iterable:
    pass
'''

#for循环代码
s1 = '老男孩教育最好的讲师:太白'
for i in s1:
     print(i)

        #
for i in s1:
    print(i)
    if i == '好':
        break

# break continue
# for else: while else:用法一样。

--结束END--

本文标题: python基础数据类型----整数 ,

本文链接: https://www.lsjlt.com/news/182157.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python基础数据类型----整数 ,
    Python基础数据类型 bool str int 三者之间的转换 str索引切片,常用操作方法 for循环(大量的练习题) 1.基础数类型总览 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(t...
    99+
    2023-01-31
    整数 数据类型 基础
  • python 基础 数据类型
    1、变      量:变量是计算机内存中的一块儿区域,变量可以存储规定范围内的值,而且值可以改变。  范    例: a a1 a_ a_1     变量命名:变量名有字母、数字、下划线组成;                      数字...
    99+
    2023-01-31
    数据类型 基础 python
  • Python基础--数据类型
    Numbers数字 String字符串 Bool布尔型 List列表 # List列表,支持字符,数字,字符串以包含列表(即嵌套),用[]标识,有序对象 x5 = [1,'a',2.4,502.2,[1,2,3]] print(x5,...
    99+
    2023-01-30
    数据类型 基础 Python
  • 基础数据类型
    计算机处理不同的数据需要定义不同的数据类型。改变数字数据类型的值,意味着要重新分配内存空间用来存储新的数值。 int,整数包含正整数和负整数,32位和64位系统的取值范围不同。32位系统的取值范围:-2**31 ~ 2**31-164位系...
    99+
    2023-01-30
    数据类型 基础
  • Python基础之数据类型详解
    目录一、整数二、浮点数三、复数四、运算符,优先级以及结合性五、混合类型计算六、除法七、十进制,八进制,十六进制和二进制八、位操作九、集合十、布尔类型十一、其他数值类型一、整数 pyt...
    99+
    2022-11-12
  • Python基础知识(五)--数据类型
      #标识符,以字母或下划线开头,不与关键字重复  #不使用系统内置标识符、函数名、异常名  #不使用开头和结尾都是下划线作为自定义标识符名  #以免与系统定义的特殊方法或变量冲突  #当循环不影响实际变量的时候,可以在for..in中使用...
    99+
    2023-01-31
    基础知识 数据类型 Python
  • python之基础篇(五)——数据类型
    防伪码:忘情公子著  前面四篇我们已经讲了许多概念方面的东西,从此篇开始,我们将真正开始学习python。  在上一篇中,我们已经说过python有哪些核心数据类型,接下来我们将一一细说这些数据类型。python数据类型之数字类型  pyt...
    99+
    2023-01-31
    数据类型 基础 python
  • MySQL基础数据类型
    2020年4月27日 8:22 1、整型     类型: 字节大小 数值范围 Tinyint 1 有符号:-128~127 无符号: 0~255 smallint 2 有符号...
    99+
    2019-05-06
    MySQL基础数据类型
  • Python3基础数据类型
    Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。等号(=)用来给变量赋值。等号(=)运算符左边是...
    99+
    2023-01-31
    数据类型 基础
  • python3--基础数据类型
    python基础二(基础数据类型)1.什么是数据  x=10,10是我们要存储的数据2.为何数据要分不同的类型  数据是用来表达状态的,不同的状态就应该用不同的类型数据去表示3.数据类型数字,字符串,列表,元组,字典,集...
    99+
    2023-01-30
    数据类型 基础
  • 第二天学习_基础数据类型整理
    1. int - 整型    bit_length() 是int唯一的方法 2. bool - 数据类型之间的转换   int(字符串)->把字符串转换成数字   str(数字)->把数字转换成字符串 3. str - 字符串...
    99+
    2023-01-31
    第二天 数据类型 基础
  • Python数据类型 -数值类型(整数,
    一、整数:1)整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。如:num01 =100...
    99+
    2023-01-31
    整数 数值 数据类型
  • Python基础学习教程:Python基础之基本数据类型(一)
    Python基础学习教程:Python基础之基本数据类型(一)...
    99+
    2023-06-02
  • python基础之数值类型
    python基础之数值类型 python3中共有11种基本数据类型,而这11种基本数据类型又通常分成3类,即 数值类型:int (整形)float(浮点型) bool(布尔) complex(复数) 序列类型:string(字符串) l...
    99+
    2023-01-30
    数值 类型 基础
  • 【Python3】基本数据类型-整型(
    整型(int) 在32位机器上,整数的位数为32位,取值范围为-231~231-1,即-2147483648~2147483647 在64位系统上,整数的位数为64位,取值范围为-263~263-1,即-9223372036854775...
    99+
    2023-01-31
    数据类型 整型
  • Python基础知识+结构+数据类型
    目录前言一、编程基础1.基本的输入输出2.变量3.基本运算符二、控制流程1.选择结构2.循环结构三、数据类型1.字符串前言 今天给大家分享一些Python的基础知识,想要盖好大房子,...
    99+
    2022-11-11
  • python基础之变量和数据类型
    目录变量和数据类型Python中变量的命名规则总结变量和数据类型 赋值不需要指定类型,如何定义变量 # 定义 规则 变量名=数据 a=10 #python不声明...
    99+
    2022-11-12
  • Java基础-Java基本数据类型
    目录1 前言2 布尔类型3 字符类型4 值类型4.1 byte4.2 short4.3 int4.4 long4.5 float4.6 double5 码农来洞见5.1 类型转换5....
    99+
    2022-11-12
  • 【Python基础篇】Python中的七种数据类型
    文章目录 前导一、数字类型(Number)二、布尔类型(Boolean)三、字符串类型(String)3.1 字符串索引3.2 字符串截取、拼接和复用 四、列表类型(List)4.1 ...
    99+
    2023-09-04
    python 开发语言
  • Python基础之数据类型知识汇总
    目录一、数字类型二、字符串类型三、布尔类型四、空类型五、列表类型六、元组类型七、字典类型一、数字类型 1、整型int 就是整数 :100 ,200,2,3,4······· 2、浮点...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作