• Day 3 python 整型布尔值和字符串


    整型--数字(int)
    用于比较和运算
    32位 -231-1~231-1
    64位 -263-1~263-1

    long
    python2中长整型存在 / 获取的整数
    python3中长整型不存在 /获取的浮点数
    456--十进制
    十六进制
    八进制
    二进制
    二进制--0,1
    15/2 余1
    7 余1
    3 余1
    1 余1

    24 0
    12 0
    6 0
    3 1
    1 1
    print(bin(15)) 十进制----二进制 从右向左读数

    111000 二进制---十进制 从左向右计算
    02**0+021+0*22+12**3+124+1*25
    print(bin(21))十进制----二进制

    print(int("10101",2))二进制---十进制

    print(bool(1) 数字非零的是True 0是False
    print(bool("111"))True
    print(bool(" "))True #空格也是T
    print(bool(""))False #引号内无内容False
    字符串内不为零 即为True,反之位False

    字符串详解
    在python中,引号引起来的就是字符串
    字符串用来存储少量数据
    name= "meet"
    meet 每个字母叫作一个元素
    # 0123 从左向右
    # -4-3-2-1 从右向左
    索引(下标)通过索引精确定位到元素

    name = "今天是个好日子"
    a = name[0]
    b = name[1]
    print(a+b) # 答案:今天
    切片
    print(1:2)# 顾头不顾尾,起始位置:终止位置+1
    name = "今天是个好日子"
    print(name[2:]) # 答案:是个好日子
    某个位置不指定的时候默认最后或最前的位置

    print(name[-2:-5:-1])#[起始位置:终止位置:步长] 步长不写,默认为1

    name = "阿黑哥吃大煎饼"
    print(name[1:5])
    print(name[-2:-6:-1])
    print(name[-6:6]) #黑哥吃大煎

    print(name[::2]) # 起始位置 终止位置可不写,默认位最开始和最后

    print(name[100:104])# 切片的时候 切片位置超出字符串长度,不会报错,但无输出
    print(name(100))#索引超出范围会报错

    字符串的方法
    s = 'alex'
    s1 = s.upper() # 全部大写
    print(s1)

    s = 'alex'
    s1=s.lower()#全部小写
    print(s1)

    应用场景
    s = input('验证码(AbC5)')
    if s.upper == 'AbC5'.upper:
    print('验证码正确')
    else:
    print('验证码错误')

    以什么开头
    s = 'AlEX'
    s1 = s.startswith('A',2,6)
    print(s1)

    以什么结尾
    s = 'AlEX'
    s1 = s.endswith('X',3,4)
    print(s1)

    出现多少次同样的元素
    s = 'alwxdjbx'
    s1 = s.count('X')
    print(s1)# 答案:3

    脱:字符串头尾两端的空格,换行符以及制表符 ; ,
    n = input('>>>')
    if n .strip() == 'alex':
    print('1')
    else:
    print('2')

    s = 'alexxdsba'
    s1 = s.strip('al') # 可以制定消除内容
    print(s1)

    分割:以空格和换行符以及制表符进行分割
    s = 'alex'
    s1 = s.split()
    print(s1)

    s = 'aslexldsd'
    s1 = s.split('l',maxsplit=1)
    print(s1)
    可以通过制定方式进行切割

    替换:
    s = '大黑个吃肉夹馍'
    s1 = s.replace('肉夹馍','大煎饼',1)#'1'制定替换次数
    print(s1)

    is 系列:
    s = 'alex'
    print(s.isalum())#判断是不是字母数字汉字。
    print(s.isalpha())#判断是不是字母汉字。
    print(s.isdihit())# 判断字符串中全都是阿拉伯数字,不严谨不常用
    print(s.isdecimal())#判断是否是十进制

    name = '你好啊'
    count = 0
    while count < len(name):
    print(name[count])
    count += 1

    name = '你好啊'
    for i in name: # for循环
    print(i) #i是个变量名, 可修改
    # for和in都是关键
    # name 可迭代对象

    name = '你好啊'
    for x in name :
    pass
    print(x)

    数据类型中只有整型和布尔值不能进行for循环

    总结:
    1.整型和布尔值的转换:
    bin()---十进制转二进制
    int('1101',2)--- 二进制转十进制
    除2 取余,获取的所有余数,从下往上进行计算
    二进制转十进制的算法:
    从右向左,依次乘2的次方
    1101 12**0+021+1*22+1*2**3

    python2中右long/获取的是整数
    python3中只有int/获取的是浮点数

    2.字符串的方法:

    name= 'meet'
    0123 从左向右
    -4-3-2-1 从右向左
    索引 通过索引可以精确定位到某个元素

       切边:[起始位置:终止位置:]
       步长:默认是1,通过步长可以决定查找方向的迈的步子
       
       字符串方法:
       upper 全部大写
       lower 全部小写
       startswith 以什么开头 
       endswith 以什么结尾
       count    统计(计数)
       strip  脱:头尾两端的空格,换行以及制表符,可以指定
       split  分割:以空格,换行以及制表符进行分割,可以指定
       repalce  替换:第一个旧值,第二个是新值,可以指定替换次数
       
       
       is系列
       str.isdigit#判断是不是阿拉伯数字
       str.isdecimal# 判断是不是十进制数
       str.isalnum#判断是不是字母,数字,汉字
       str.isalpha # 判断是不是字母,中文
    

    for循环
    for 变量 in可迭代对象:
    print(变量)
    变量可以修改
    len()获取对象的长度

  • 相关阅读:
    hdu4841 圆桌问题[STL vector]
    hdu1002 A + B Problem II[大数加法]
    hdu1501 Zipper[简单DP]
    C语言学习之结构体
    C++学习之从C到C++
    一键自动格式化你的代码
    C标准库string.h中几个常用函数的使用详解
    Jlink使用技巧系列教程索引
    Jlink使用技巧之合并烧写文件
    Jlink使用技巧之烧写SPI Flash存储芯片
  • 原文地址:https://www.cnblogs.com/zhuzhizheng/p/11151509.html
Copyright © 2020-2023  润新知