• 整形,字符串,布尔值,for循环


    一,整型int

    1. 用于计算和比较,在python3中所有的整数都是int类型

    2. 二进制和十进制的转换

      • 十进制转换成二进制:

        正整数转换成二进制:除二取余,倒序排列,高位补零

        14 % 2 = 0
        7  % 2 = 1
        3  % 2 = 1
        1  % 2 = 1
        0
        14转换为二进制为:0000 1110
        

        负整数先转换成对应的正整数,转换成二进制,对二进制取反,再对结果加一

      • 二进制转换成十进制:

        先将二进制补齐位数,如果首位是0代表是正整数,首位是1代表是负整数

        • 正整数:补齐位数后,将二进制中的位数分别将下边对应的值相乘,然后相加得到十进制

          1010  
          # 先补齐位数  =>  0000 1010     128  64   32  16   8   4   2   1 常用的8位
          2**3 *1 + 2**2 * 0 + 2**1 * 1 + 2**0 * 0  =  10
          
        • 负整数,先对二进制取反,再进行换算

    3. bit_length()

      求十进制数转换成二进制时所占用的长度

    二,布尔值

    • True 真 非0数字 非空字符串

    • False 假 0 空字符串

    • 类型转换:想要转换成什么类型,就用这个类型把需要转换的内容括起来

      a = "hahahahaha"
      b = "123456"
      c = 123456
      a1 = bool(a)  => True
      b1 = int(b)   => 123456
      c1 = str(c)   => "123456"
      

    三,字符串的定义与常用操作

    1. 用于储存小量的数据

    2. python中用' '," ",''' ''',""" """括起来的就是字符串

    3. 常用操作

      1. 索引: 索引就是下标,从左向右, 从0开始;从右向左,从-1开始

        num = "1234567890"
        print(num[1])  => 2
        print(num[4])  => 5
        print(num[-1]) => 0
        print(num[-2]) => 9
        print(num[21]) # 索引超出范围,报错
        
      2. 切片:使⽤索引来截取部分字符串的内容

        • 语法: str[start: end: step]

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

          num = "0123456789"
          num[::] == num[:]  # 从头取到尾
          print(num[0:3])  =>  012 # 不包含索引3对应的"3"
          print(num[5:8])   =>  567
          print(num[5:])    =>  56789  # 想取到最后,end可以不写
          print(num[5:20])  =>  56789  # 索引超出范围,不会报错
          print(num[-1:-5:-1]) => 9876 # step步长决定取值的方向,默认为1
          print(num[1:7:2]) =>  135    # str步长决定取值的步子大小,即每step个取一个
          
      3. 常用方法

        • 切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的
        name = "Hello World"
        print(name.upper()) => HELLO WORLD  字母全部转换成大写
        print(name.lower()) => hello world  字母全部转换成小写
        print(name.startswith("H"))  => True  是否以"H"开头
        print(name.endswith("d"))    => True  是否以"d"结尾
        print(name.count("o"))       => 2     统计"o"出现的次数
        print(name.replace("H","A",次数)  => Aello World  # 将H替换成A,默认全部替换,可以输入替换次数
        
        a = "  Alex  "
        print(a.strip()) => Alex  # 去掉两端的某些元素,()内可以指定元素,默认是空白(空格和
        )
        
        b = "1,2,3"
        print(b.split(",")) => ["1","2","3"]  # 分割,可以指定用于分割的元素,分割后损失这个元素,默认以空格分隔,返回一个列表。
        
        • is 判断系列
        name.isdigit()   # 判断是不是阿拉伯数字,有漏洞
        name.isdecimal() # 判断是不是十进制,可以用于判断数字
        name.isalpha()   # 判断是不是中文和字母
        name.isalnum()   # 判断是不是中文,字母和数字
        
      4. 第三种字符串格式化

        name = "alex{}wusir{}"
        print(name.format("结婚了","要结婚了")) # 按照位置顺序填充
        
        name = "alex{1}wusir{0}"        # 按照索引位置填充
        print(name.format("结婚了","要结婚了"))
        
        name = "alex{a}wusir{b}"
        print(name.format(a="结婚了",b="要结婚了"))  # 指名道姓填充
        
      5. 计算字符串的⻓度

        len(字符串) -- 工厂函数 -- 所有类型都能用,除了int和bool 求元素个数

    四,for循环与range

    1. for循环

      # for 变量 in  可迭代对象:
      #	pass
      s = "1234567890"
      for each in s:          # 遍历字符串
          print(each)         # 1 2 3 4 5 6 7 8 9 0
      print(each)             # 0   注意
      
    2. 占位符

      pass :占位符

    3. range

      • 语法range(start,end,step): 范围,从start到end,不包含end,步长step默认是1

      • python3中打印range()会打印本身,python2中会打印出列表

        for each in range(1,10):
        	print(each)
        # 1  2  3  4  5  6  7  8  9
        
  • 相关阅读:
    linux下配置SS5(SOCK5)代理服务
    HttpServletRequest修改/添加header和cookie参数
    jquery ajax 设置全局(常量和变量)
    mysql 5.1超过默认8小时空闲时间解决办法(错误:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure)
    jquery带token访问接口ajax
    CentOS 7下彻底卸载MySQL数据库
    IntelliJ IDEA 终极破解
    haproxy+tomcat实现负载均衡以及session共享(linux centos7环境)
    RocketMQ集群搭建
    IntelliJ IDEA14如何配置tomcat
  • 原文地址:https://www.cnblogs.com/maqian/p/11904683.html
Copyright © 2020-2023  润新知