• Python从入门到精通之Third!


    Python运算符

      算数运算符:+    -    *   /     %    //    ** 

      比较运算符:==    >     <     >=   大于等于      <=  小于等于     !=  不等于     <>  不等于

      逻辑运算符:not  、 and   、  or   (布尔值:True 真   False: 假)

      in       not in     判断某个东西是否在某个里面  #  注释符  多个字符叫做字符串,单个字符叫做字符。  

      赋值运算符:    +=、-=、%=、*=、/=、//=、**=

      not    False====>>True           (有括号先计算括号里的)

    name = "张三1"
    if "张1" in name:
        print('ok')
    else:
        print('error')         #输出error,只有连续的或者单个的是子序列。
    name = "李四2"
    if "李2" not in name:
        print("not in ")
    else:
        print("in")

        

      基本数据类型

      数值型   Python2中 :int 整型  long  长整型

          Python3中   所有数字都是整型,没有长整型  

          数值的魔法:  

    1 a1 = 123    #type(a1)查看a1的数据类型         
    2 b1 = 456
    3 r = b1.bit_length()   #当前数字的二进制,至少用几位来表示
    4 - int    将字符串转换为数字
    5     a = "123"
    6     b = int(a)
    7     b = b + 1000
    8                a1 = "0011"
    9                int(a1,base=n)   #将字符串以n进制的形式转换   

      字符串型   : str的必会魔法:7个基本魔法 5个灰魔法  1个深灰魔法

      7个基本魔法:    join    upper   lower   replace   find   strip   split  

            深灰魔法:字符串一旦创建不可修改,一旦修改或者拼接,都会造成重新生成字符串

    test = "alex"
    
    v = test.capitalize()     #首字母大写
    v = test.casefold()    # 所有字母变成小写,casefold更牛逼,可以把很多未知的变成小写
    
    v = test.center(width,"*")   #作用:将内容设置剧中,参数一设置宽度,参数二设置除内容外的字符,可以为空。
         eg:test.center(10,@)
      =====>>@@@alex@@@
    
    v = test.count('子序列',起始位置)   #统计子序列在字符串中出现的次数
         eg:test.count('l',2)
      =====>>1
    
    v = test.endswith('字符序列')       #是否以字符序列结尾的
         eg:test.endwith("ex")
      =====>>True
    
    v = test.startswith('字符序列')     #是否以字符序列开头的
        eg:test.startswith("ae")
      =====>>False
    
    v = test.expandtabs([tabsize=8]) #方法把字符串中的 tab 符号('	')转为空格,tab 符号('	')默认的空格数是 8。     
        eg:test = "ale	x"           #注意:先看tabsize的值,根据指定长度一个个判断,用空格补齐指定长度
             v = test.expandtabs(6)
             print(v,len(v))
      =====>>ale   x   7
    
    v = test.find(str, beg,end)         #检测字符串中是否包含子字符串 str ,如果指定 beg(开始)
    和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回从第一个开始的索引值,否则返回-1。
    
    v = test.format('值1','值2')     #格式化,将一个字符串中的占位符替换为指定的值
        eg:test = 'i am {name},age {a}'
             v = test.format(name='alex',a=19)
      =====>>i am alex, age 19
    
    v = test.format_map({"name":'alex',"a":19})     #与上format作用相同,但书写方式不同,和字典相同。
    
    v = test.index()    #找到其索引,未找到则报错。
        eg:test = "alexalex"
          v = test.index('8')     #报错
    v = test.isalnum()  #判断字符串中是否只包含数字和字母
      eg:test = "fafd_123"
        v=test.isalnum()
     ======>>False 
    
    v = test.isalpha()      #判断是否是字母
    
    v = test.isdecimal()  #判断是否是数字,比较常用
    v = test.isdigit()    #判断是否是纯数字
    v = test.isnumeric()   #可以判断是否是数字,支持中文数字,可用于判断标题
    
    字母的转换与判断
    v = test.islower()  #判断字符串是不是全部小写
    v = test.lower()    #把字母转换为小写
    v = test.isupper()    #判断字符串是不是都是大写
    v = test.upper()      #把字母转换为大写
    v = test.swapcase()   #大小写转换
    
    v = test.isidentifier()  #是否是由字母,数字,下划线,标识符(def、class)组成
    
        eg:test = "alexalex"
          v = test.isidentifier()     
       ======>> True
    
     v = test.isprintable()   #是否存在不可显示的字符,若存在则为False。例如:	、
    
    
     v = test.isspace()         #判断是否全部是空格,空串不包含空格
    
     v = test.title()       #把字符串转为标题类型
     v = test.istitle()       #判断是不是标题,所有首字母大写
    
    # 字符串的填充
     v = ''.join()    
        eg:a = 'fasaff'
         v = '_'.join(a)     #将每一字母之间都添加上下划线
       ======>> f_a_s_a_f_f
     v = test.ljust(长度,"填充符")    #从左侧向右填充,长度是整个字符串长度  abc@@@@
     v = test.rjust(长度,"填充符")   #从右侧向左填充,长度是整个字符串长度  @@@@abc 
     v = test.zfill(长度)   #只能填充0,可用rjust代替          
     
    #空格的增删  注意:可去除	、
    
    还适用于字符删除,匹配子序列中与字符串左或右侧相对应的,先匹配字符多的
     v = lstrip()      #删除左侧空格
     v = rstrip()       #删除右侧空格
     v = strip()        #删除两侧空格
      eg:test = 'abcde'
        v=test.lstrip('deacb')
       =======>>  cde
    
    #maketrans和translate配合使用,实现字符间的转换
     v = test.maketrans("12345","aeiou") #把字符1替换为a 2替换为e
         eg:test = "test"
               m = test.maketrans("ts","12")
           new_v = test.translate(m)  
     ========>>  1e2t
     
    #按照一定规则进行分割
    #partition与split的区别是:partition会把要分割的字符分成一份,而split不会
     v = test.partition(分隔符'a')    #把字符串分隔成3份,找到第一个a,左侧一份,a一份,a右侧一份
     v = test.rpartition(分隔符)    
     v = test.split('a')             #把整个字符串中所有的a都进行分割,但是a本身不会被匹配
     v = test.rsplit(分隔符)
      eg:test = "asdfadreafdgd"
         v = test.split('d',2)    #后面可指定两个参数,第二个参数是为了匹配制定次数的
       =======>>   ['as','fa','reafdgd']
     v = test.splitlines(True/False)  #根据true或false,是否保留换行符
       eg:test = "fas
    fsdaf
    fd"
         v = test.splitlines()    #根据换行符进行分割
       =======>> ['fas','fsdaf','fd']

    #字符的替换
    test = 'alexalexalex'
    v = test.replace("ex","bbb",2) #把ex替换成bbb,只替换前两个
    print(v)
    ==========>> albbbalbbbalex

       

    字符串的灰魔法:

    #索引,下标,获取字符串中的某一个字符
    test = "abcd"
    v = test[2]
    print(v)
    ==========>> c
    
    #切片
    test = "abcd"
    v = test[0:-1]      #从下标0到最后,但不包含最后一个
    pirnt(v)
    ==========>> abcd
    
    #获取字符串长度   注意:当获取列表的元素个数时,获取的是个数
    v = len("abcde")
    print(v)
    =========>>  5
    
    #######例题#########
    
    test = '妹子有种冲我来'
    index = 0
    while index<len(test):
        v = test[index]
        print(v)
        index+=1
    print("==========")
    =========>>妹
               子
               有
               种
               冲
               我
               来
               ==========    
    
    #for循环 注意:for循环可用于列表、字典等等#
     
    for 变量名 in  字符串:
    
      代码块
    
    #帮助创建连续的数字,通过设置步长来设定不连续的数字 
    v = range(0,100,5)   #大于等于0小于等于100的步长为5的数
    for item in v:
      print(item)
    #例题:将文字对应的索引打印出来
     test = input("<<<<<")
     l = len(test)
     r = range(0,l)
     for item in r:
         print(item,test[item])
  • 相关阅读:
    to_char &&to_date
    java中Integer 与 String 类型的 相互 转换
    group by 的用法
    谈 计算时间的天数差
    领域建模
    Java Classloader详解
    阿里巴巴Java招聘
    Maven Archetype
    负载均衡
    Maven
  • 原文地址:https://www.cnblogs.com/xtznb/p/10353305.html
Copyright © 2020-2023  润新知