zoukankan      html  css  js  c++  java
  • python 第三章 整型和布尔值+字符串

    第三章

    整型和布尔值

    # 整型 -- 数字(int)
    # 用于比较和计算的
    # 32位 -2 ** 31 -1 ~ 2 ** 31 -1
    # 64位 -2 ** 63 -1 ~ 2 ** 63 -1
    # + - * / // ** %
    
    # python2 整型 int -- long(长整型) /获取的是整数
    # python3 整型 int /获取到的是浮点型
    
    # 456  --十进制
    # 十六进制 八进制 二进制
    # 二进制 --0101
    
    # 二进制
    # 15   1  (15除以2商7 余1)
    # 7    1  (7除以2商3 余1)
    # 3    1  (3除以2商1 余1)
    # 1    1  (1除以2商1 余1)
    # 15的二进制为 1111
    print(bin(15))# 输出0b1111
    
    # 24    0
    # 12    0
    # 6     0
    # 3     1
    # 1     1
    # 24的二进制为 0001
    print(bin(24))# 输出0b11000
    # 二进制从上往下计算
    
    
    # 十进制
    
    # 111000 从右往左计算
    # 0 * 2 ** 0   + 0 * 2 ** 1     + 0 * 2 ** 2    + 1 * 2**3    + 1*2 ** 4   +1 * 2** 5
    # 0            + 0              + 0             + 8           + 16         + 32
    
    # 10101
    # 1 * 2 ** 0   + 0 * 2**1       + 1* 2**2       + 0* 2**3     + 1* 2 **4
    # 1            +  0             + 4             + 0           + 16
    
    print(int("111000",2))# 输出56
    
    print(int("10101",2)) # int("二进制数",2)将二进制转换乘十进制
    print(bin(24))        # bin(数字)将十进制转换乘二进制
    
    # bool()布尔值
    
    # print(bool(1))  # 数字非零的就是True 零就是False
    # print(bool("")  # 字符串不为空就是True 没有任何内容就是False
    

    字符串的讲解

    # !/usr/bin/python
    # -*- coding: utf-8 -*-
    # @File    : 02 字符串讲解.py
    # @time    : 2019-07-0810:28
    # @Author  : zhangshan33
    # 什么是字符串?
    # 在python中引号引起来的就是字符串
    
    # 字符串怎么用?
    # 用来存储少量存储数据
    
    # name = "meet"
    # meet 每一个字母叫做一个元素
    # 0123     从左向右
    # -4-3-2-1 从右向左
    # 索引(下标)通过索引可以精准的定位到某个元素
    name = "meet"
    print(name[1])# 输出为e
    
    name = "今天是个好日子"
    #      0 1 2 3 4 5 6
    #      -7-6-5-4-3-2-1
    a = name[0]
    b = name[3]
    print(a+b)# 输出今个 取第一个和第三个
    
    # 切片
    name = "今天是个好日子"
    print(name[0:2])  # 输出今天 顾头不顾尾 name[起始位置:终止位置]
    print(name[:])    # 输出今天是个好日子某个位置不指定的时候默认取最后或最前
    print(name[2:5])  # 输出是个好
    print(name[-6:-3])# 输出天是个
    print(name[-2:-7:-2])# 输出日个天 [起始位置:终止位置:步长] 步长默认为1
    
    name = "0123456789"
    print(name[1:5]) # 输出1234
    print(name[-2:-6:-1])# 输出8765
    print(name[-3:6])# 输出45
    
    a = name[0]
    b = name[2]
    c = name[4]
    d = name[6]
    print(a+b+c+d)
    print(name[::2])
    
    """
    s = 'Python最NB'
    获取s字符串中前3个内容
    s[0:3]
    获取s字符串中第3个内容
    s[2]
    获取s字符串中后3个内容
    s[-3:]
    获取s字符串中第3个到第8个
    s[2:8]
    获取s字符串中第2个到最后一个
    s[1:]
    获取s字符串中第1,3,5个内容
    s[0:6:2]
    获取s字符串中第2,4,6个内容
    s[1:7:2]
    获取s字符串中所有内容
    s[:]
    获取s字符串中第4个到最后一个,每2个取一个
    s[3::2]
    获取s字符串中倒数第5个到最开始,每3个取一个
    s[-5::-3] 
    """
    
    # print(name[100:105]) #切片的时候起始位置和终止位置都超出的时候不会进行报错
    # print(name[100])  # 索引的时候索引值超出范围的时候会报错
    
    # 字符串方法:
    s = "ALEx"
    s1 = s.upper()# 全部大写
    print(s1)# 输出ALEX
    
    s1 = s.lower() # 全部小写
    print(s1)# 输出alex
    
    # 应用场景
    s = input("验证码(AbC5)")
    if s.upper() == "AbC5".upper():
        print("验证码正确")
    else:
        print("验证码错误!")
    # 输入abc5 正确
    # 输入ABC5 正确
    # 输入ABc5 正确
    # 输入99j8 错误
    
    # 以什么开头:
    s = "ALEX"
    s1 = s.startswith("E",2,6)
    print(s1)# 输出True
    
    # 以什么结尾:
    s = "ALEX"
    s1 = s.endswith("X",3,4)
    print(s1)# 输出True
    
    # 统计:
    s = "alexdxjbx"
    s1 = s.count("x")
    print(s1)# 输出3
    
    # 脱: 字符串头尾两端的空格和换行符以及制表符
    n = input(">>>")
    if n.strip() == "alex":
        print("1")
    else:
        print("2")
    # 输入   alex   输出1 脱掉前后端空格
    # 输入al  ex    输出2 中间空格不能脱掉
    
    
    s = "alexdsba"
    s1 = s.strip("a") # 可以指定内容取脱
    print(s1)# 输出lexdsb
    
    
    # 分割:以空格和换行符以及制表符进行分割
    s = "aelxlaaa"
    s1 = s.split("l",maxsplit=1)  # 可以通过指定方式进行切割
    print(s1)# 输出['ae','xlaaa']
    
    
    # 替换:
    s = "小张吃肉夹馍,肉夹馍"
    s1 = s.replace("肉夹馍","大煎饼")
    s1 = s.replace("肉夹馍","大煎饼",1) # 指定替换的次数
    print(s1)# 输出小张吃大煎饼,肉夹馍
    
    #is 系列:
    s = "12.3"
    
    print(s.isalnum()) # 判断是不是字母,数字,中文
    print(s.isalpha())  # 判断是不是字母,中文
    print(s.isdigit())  # 判断字符串是不是全都是阿拉伯数字
    print(s.isdecimal())  # 判断是否是十进制
    
    
    
    

    今日总结

    # 1、整型和布尔值的转换:
    # 
    # 32位和64位:
    # 整形的32 -2 ** 31 ~ 2 ** 31 -1
    # 整形的64 -2 ** 63 ~ 2 ** 63 -1
    # 
    # 十进制与二进制
    # bin -- 十进制转二进制 算法除以2
    # 验证方法:print(bin(10))
    # 
    # int("1001",2) -- 二进制转十进制 算法 位数*2 **0
    # 验证方法:print(int("1101",2))
    # 
    # 十进制转二进制的算法:
    # 除2 取余,获取的所有余数从下往上进行计算
    # 二进制转十进制的算法
    # 从右往左 依次乘以2的次方
    # 1101 1* 2**0 + 2**1 +1*2**2 + 1*2**3
    # 
    # 整型:
    # python2 中long 获取的是整数
    # python3 中int 获取到的是浮点型
    # 
    # 
    # 布尔值:
    # 数字:非零的都为True
    # 字符串:不为空的为True
    # 
    # 
    # 2、字符串的方法:
    # 
    # name = "meet"
    #         0123
    #     -1-2-3-4
    # 1。从左往右 0...10
    # 2。从右往左 -10...-1
    # 3。倒着取:-1
    # 4。从左往右从右往左混着用
    # 
    # 索引:
    # 通过索引可以精准定位到某个元素
    # 字符串变量名[索引值]
    # 索引超过元素的长度会报错
    # 
    # 切片:
    # 字符串变量名[起始位置:终止位置]
    # 特性:顾头不顾尾,起始位置会获取,终止位置不会获取
    # 切片超过元素的长度不会报错
    # 
    # 步长:
    # 字符串变量名[起始位置:终止位置:步长]
    # 步长决定取值方向
    # 通过步长可以决定方向和查找方式迈的步子
    # 默认是1,从左往右
    # 步长是-1,从右往左
    # 
    # 字符串方法:
    # 全部大写:upper
    # 全部小写:lower
    # 用于验证码验证
    # 以什么开头:startswith
    # 以什么结尾:endswith
    # 统计:count (计数)
    # 脱:strip             去掉头尾两端的空格,换行以及制表符,可以自己指定
    # 分割:split           以空格,换行以及制表符进行分割,可以自己指定,可以指定切割次数
    # 替换:replace         第一个旧的值,第二个新的值,可以指定替换的次数
    #                      都换,只换一个,从左往右换
    # 
    # is 系列
    # 字母,数字,中文isalnmu
    # 字母,中文isalpha
    # 阿拉伯数字iddigit
    # 十进制isdecimal
    # 
    # 数据类型:长len
    # for循环:
    # 只有整型和布尔型不能进行for循环
    # 
    # 
    # 4、for 循环:
    # for i in "手术室" 冒号
    #     print(变量名)
    # for 关键字
    # i   变量名
    # in  关键字
    # "手术室"可迭代对象
    # 
    # 变量可以自己修改
    # 数字和布尔值不可迭代
    # 
    # 
    # len 获取对象的长度
    # 所有的数据类型都可以使用len
    # 
    # 5、面试题:
    # 
    # for i in "alex":
    #     pass
    # print(i)# 输出x
    # pass / ...占位
    # 
    # s = "aaa"
    # for i in s:
    #     print(123)
    

    字符串小结

  • 相关阅读:
    使用ueditor实现多图片上传案例——Servlet层(UploadServlet)
    使用ueditor实现多图片上传案例——截取字符串层Util(SubString_text)
    [转载]oracle删除数据后的恢复
    [转载]oracle删除数据后的恢复
    为什么在定义hashcode时要使用31这个数呢?
    为什么在定义hashcode时要使用31这个数呢?
    [转载]hashCode和equals
    [转载]hashCode和equals
    Oracle HINT的用法
    Oracle HINT的用法
  • 原文地址:https://www.cnblogs.com/zhangshan33/p/11159722.html
Copyright © 2011-2022 走看看