zoukankan      html  css  js  c++  java
  • Python字符串拼接和格式化输出

    1、字符串拼接

    example:a = 'hello' , b = 'python' , c = '!' 将a,b ,c 中的字符串连成一句话。

    第一种方法:用 + 号
    a + b +c

    第二种方法:格式化字符串 %s
    '%s %s %s' % (a , b ,c)

    第三种方法:''.join()方式,注意括号里是要连接的可以是列表,元祖
    ' '.join([a,b,c]) (注:''里面是连接后面各个字符串的字符)

    第四种方法:.format方式
    '{}{}{}'.format(a,b,c) (注:{}里面可以填入与后面相对应的符号)

    format方法详解:
    '{}{}{}'.format(a,b,c)
    当{}里面是空的时候,里面默认索引为0,1,2按format括号里的顺序依次填入
    '{1}{2}{0}'.format(a,b,c)
    当{}里面有索引值时,按前面的索引值将后面的每项依次填入
    '{n1}{n2}{n3}'.format(n1=a,n2=b,n3=c)
    {}里面可以指定对象名称,后面通过赋值的方式给前面的相应的值,后面是无序的

    --------------------------------------------------------------------------------
    2、格式化输出

    %s 格式化字符串
    %d 格式化整数
    %f 格式化小数
    %c 格式化ASCII字符
    %o 格式化八进制
    %x 格式化十六进制
    %e 用科学计数法格式化

    - 用作左对齐
    + 用在正数前面显示正号,用在负数前没啥用
    m.n m是显示的最小长度,当m大于格式化位数时才起作用显示m位,n是代表小数的位数。

    转义字符
    换行 a提示音 退格键 横向制表符
    自然字符串 r' ' ,即取消转义

    example:
    '%s'%'jianeng' # 'jianeng'
    '%15s'%'jianeng' # ' jianeng'
    '%-8s'%'aa' # 'aa '

    '%s'%1 # '1'
    '%s'%1.1 # '1.1'
    '%s'%[1,2,3,4] # '[1, 2, 3, 4]'

    '%d'%2 # '2'
    '%d'%1.1 # '1'
    '%+d'%1 # '+1'
    '%+d'%-1 # '-1'

    '%f'%10.2 # '10.200000'
    '%.3f'%10.2 # '10.200' .3:保留3位小数

    '%10.3f'%10.2 # ' 10.200' 总共10位,保留3位小数
    '%-10.3f'%10.2 # '10.200 ' 左对齐

    '%c'%65 #A
    '%c'%97 #a

    '%o'%7 #逢8 进1
    '%o'%8 #10
    '%o'%24 #30


    #1-9,A,B,C,D,E,F

    '%x'%9 # '9'
    '%x'%10 #a
    '%x'%11 #b
    '%x'%12 #c
    '%x'%13
    '%x'%17 #11

    #%e 用科学计数法格式化

    '%e'%10 #'1.000000e+01' 1*10^1
    '%e'%100 #1*10^2

    s = 'www www'
    s = 'www www'

    '''
    换行 a提示音 退格键 横向制表符
    '''
    print(r'www www') # www www 取消转义

    ------------------------------------------------------------------------------
    3、深复制和浅复制

    复制和浅复制,只会出现在,嵌套列表的时候
    ample:
    li = ['a','b']
    l2 = ['c',li]
    l3 = l2.copy()

    id(l3),id(l2) #新生产一个列表

    id(l3[1]),id(l2[1]) #两者相等,嵌套的列表,没有新生成对象,仍然指向原对象

    #浅复制,就是 l2.copy() ,嵌套的列表不会新建一个对象, li= l2[li] = l3[li]



    #深复制
    import copy
    l4 = copy.deepcopy(l2)

    id(l2[1]),id(l4[1]) #两者不相等,嵌套列表新生成了一个对象




    #扩展

    '%s'%'asd' #打印出展示的值,给客户看
    '%r'%'asd' #如果是字符串,就多加一个引号 “ 'asd' ” %r会打印代码原始值,给程序员看的

  • 相关阅读:
    344. 反转字符串
    942. 增减字符串匹配
    CGO内部机制
    CGO函数调用
    CGO类型转换
    CGO基础
    Go net/http代理
    GO-中间件(Middleware )
    Go如何巧妙使用runtime.SetFinalizer
    ARM基础
  • 原文地址:https://www.cnblogs.com/wenshu/p/12267047.html
Copyright © 2011-2022 走看看