zoukankan      html  css  js  c++  java
  • python入门二: 字符串1

    关于字符串

    数字类型转换:

    print(bin(100)) #转成2进制
    print(oct(100)) #转成8进程
    print(hex(100)) #转成16进制
    
    #结果
    0b1100100     
    0o144
    0x64
    
    # 0b 0o 0x 分别代表2 8 16 进制
    

    字符串类型

    msg='hello xx'
    print(msg[-3],msg[3])
    print(type(msg))
    print(msg[:3])     #第0,1,2 (顾头不顾尾)
    print(msg[5:0:-1]) #部分倒排
    print(msg[-1::-1]) #倒排
    #字符串类型可以像列表一样来取值
    #结果
    x l
    <class 'str'>
    hel
     olle
     xx olleh
    #-1代表着倒数第一个
    
    

    成员运算(判断一个字符串是否在一个大的字符串里面)

    msg='hello'
    msg1='hello world'
    print(msg in msg1)
    print(msg not in msg1)
    
    #结果
    True
    False
    

    去除空白strip

    #调用方法,字符串类型下面的strip方法
    x='  kong ge '
    print(x.strip()) #默认是空格
    y=' xxxxkong+gexxx'
    print(y.strip(" x"))
    #结果
    kong ge
    kong+ge
    #这个方法是去除左右两边的,中间的不予处理(碰到第一个“”外的字符,自动跳过)
    ###
    方法lstrip 去除左边的
    方法rstrip 去除右边的
    

    切分spilt

    方法spilt
    msg='root:x:0:0:/root/bin:x'
    print(msg.split(":")[1])
    #结果
    x
    #可以配置解压赋值来使用,分别赋值给各个变量
    

    字符串处理方法

    lower 转换为小写
    upper 转换为大写
    startswith 开头,返回布尔值
    endswith 结尾
    rspilt 从右切 和指定个数-1是一样的
    lspilt 从左切
    
    
    msg='hello World'
    print(msg.lower())
    print(msg.upper())
    print(msg.startswith('he'))
    print(msg.endswith('ld'))
    print(msg.endswith('he'))
    #结果
    hello world
    HELLO WORLD
    True
    True
    False
    

    字符串的格式化format

    name='dhc'
    age=18
    print('my name is %s , my age is %s'%(name,age))#常见的
    print('mys name is {} , my age is {}.'.format(name,age)) #按照顺序传变量
    print('my name is {age},my age is {age}'.format(age=age,name=name))#指定传入
    #结果
    my name is dhc , my age is 18
    mys name is dhc , my age is 18.
    my name is 18,my age is 18
    
    

    合并join

    #有拆分spilt,自然就有合并join
    msg='logstash:x:987:985:logstash:/usr/share/logstash:/sbin/nologin'
    l=msg.split(':')
    print(l)
    print(':'.join(l))
    
    #结果
    ['logstash', 'x', '987', '985', 'logstash', '/usr/share/logstash', '/sbin/nologin']
    logstash:x:987:985:logstash:/usr/share/logstash:/sbin/nologin
    
    

    替换replace

    msg='i have a pen , i have two pen'
    print(msg.replace('pen','haha'))
    print(msg.replace('pen','haha',1))
    #结果
    i have a haha , i have two haha
    i have a haha , i have two pen
    

    判断字符串是否为数字isdigit

    msg='i have a pen , i have two pen'
    age='18'
    print(msg.isdigit())
    print(age.isdigit())
    #结果
    False
    True
    #可以用来判断用户输入的内容
    
    # print('abc你'.isalpha()) # 字符串中包含的是字母或者中文字符
    
    # 字符串中包含的是字母(中文字符)或数字
    # print('ab'.isalnum())
    # print('123123'.isalnum())
    # print('ab123'.isalnum())
    

    find,rfind,index,rindex,count

    msg='hello, this is a test,dhc is a man,test'
    print(msg.find('test')) 
    print(msg.find('test',0,6))
    print(msg.rfind('test'))
    print(msg.index('test'))
    print(msg.count('test'))
    
    #结果
    17   #如果有的花,第一个在什么位置
    -1   #没有的话,报-1
    35	 #如果有的话,从右边第一个的位置
    17   #index如果存在的情况下,和find一样,但是没有的话就报错
    2    #统计一共出现几处
    

    center,ljust,rjust,zfill

    msg='hello, this is a test,dhc is a man,test'
    print(msg.center(50,'*'))
    print(msg.ljust(50,'*'))
    print(msg.rjust(50,'*'))
    print(msg.zfill(50))
    #格式化填充
    #结果
    *****hello, this is a test,dhc is a man,test******
    hello, this is a test,dhc is a man,test***********
    ***********hello, this is a test,dhc is a man,test
    00000000000hello, this is a test,dhc is a man,test
    

    列表的追加和插入

    msg=['a','b','c']
    print(msg)
    msg.append('d') #在后面追加一个值
    print(msg)
    msg.insert(1,'e')  #在第3位后插入
    print(msg)
    
    

    列表值的删除

    msg=['a','b','c']
    msg.remove('c') #必须指定要删除的值
    print(msg)
    del msg[1]  #单纯的删除值
    print(msg)
    
    #结果
    ['a', 'b']
    ['a']
    

    列表值的mv

    msg=['a','b','c']
    res=msg.pop(2)
    print(msg)
    print(res)
    print(msg[::-1]) #反过来
    #pop的方法是删除了,但是返回值赋值给了一个变量,没有丢,相当于linux中的吗v
    #结果
    ['a', 'b']
    c
    ['b', 'a']
    

    队列:先进先出

    #先进去的先出来
    #入队
    msg=[]
    msg.append('first')
    msg.append('second')
    msg.append('thread')
    print(msg)
    #出队
    print(msg.pop(0))
    print(msg.pop(0))
    print(msg.pop(0))
    
    #结果
    first
    second
    thread
    

    堆栈:先进后出

    #堆栈: 先进后出
    print(msg.pop())
    print(msg.pop())
    print(msg.pop())
    #先进后出
    
    #结果
    thread
    second
    first
    
  • 相关阅读:
    mybatis(八)手写简易版mybatis
    mybaits(七)spring整合mybaits
    Java学习之String StringBuffer StringBuilder区别
    Java学习之基本概念
    java多态
    HashMap变成线程安全方法
    java高级开发工程师面试题
    同步和异步
    Oracle创建索引的原则(转)
    导入maven工程错误
  • 原文地址:https://www.cnblogs.com/dinghc/p/12213588.html
Copyright © 2011-2022 走看看