字符串的拼接和格式化与深浅复制

一、字符串的拼接和格式化
1.用ipython运行,没有的话,需要安装ipython,用 sudo pip3 install ipython 命令。
2.如果安装失败,那么要升级pip包,用 sudo pip install --upgrade pip命令。

拼接:
  - str+str # 直接拼接 : a+b a = '晚上好' b = '同学们'
  - '%s'%a # 占位符,a可以是变量,也可以是字符串
  - '%s%s%s'%(a,b,c) # 后面有几个变量,前面就要有几个占位符出现,一一对应。
  - ''.join(列表名) # 拼接序列类型中的内容,以''中的内容隔开,()中只能传一个参数,可以是运算式。
  - '{}{}{}'.format(参数) # 占位符,{}中为空,后面format()中传参数,任意类型。
              # {}中也可以放索引号,是后面()中参数的索引号,索引号可以实现不同的排序。
           # {}中也可以放变量,但后面()中必须给变量赋值。

字符串的格式化:
  - '%f'%<float> # 默认保留6位小数
  - '%.2f'%5.2 # 保留小数 输出为'5.20' 保留2位小数。如小数位过多,则6(含)以上入1。
  - '%6.3f'%5.2 # 格式化长度,小数点算一个位置,默认右对齐 输出为' 5.20';
  - '%-6.3f'%5.2 # 左对齐 输出为'5.20 '

  - '%d'%float # 忽略小数点后面,只传整数进字符串

  - '%c'%数值 # 转换为ASCII码

  - '%o'%数值 # 转换为八进制

   - '%x'%数值 # 转换为十六进制

  - '%e'%数值 # 转换为科学计数法

  - print('%s'%'123') # 打印的是''里得内容

  - print('%r'%'123') # 保留类型打印 输出为'123'

  # format 命令格式化
  - '{:.2f}'.format(float) # 保留小数点后面两位,四舍五入;或'{a:.2f}'.format(a = float)这种表达式
  - 该命令也可以格式化长度,'{:8.2f}'.format(float) # 8格长度,默认右对齐。
  - 对齐是用>(右对齐),<(左对齐) 和 ^(居中) '{:^8.2f}'.format(float)

  - '{:.2%}'.format(float) # 百分比格式

  - '{:o}'.format(int) # 转换为八进制

  - '{:x}'.format(int) # 转换为十六进制

  - '{a:<10}'.format(a = 12.3, b = 13.56) # 默认左对齐,长度为10各

  - '{a:0>10}'.format(a = 12.3, b = 13.56) # 以0补齐参数a后面的空缺位,也可以补其他个位数。

  - '{a:^10}'.format(a = 12.3, b = 13.56) # 中间对齐。

  #有意思的函数小案例
  a = '今天是{}。'.format
  a() = ('星期五')


二、深浅复制

  - 赋值 可以重新创建存储地址(ID)
  - 引用 不改变内存的存储地址(ID)

  - .copy() # 浅复制 外层的ID是新的,内层还是引用原列表 。copya = a.copy() 列表a和copya的ID是不同的。
  - deepcopy # 深复制 彻底复制,不随原列表值的改变而改变。
    import copy
    deeps = copy.deepcopy(s)

三、bytes和bytearray
  - bytes(3) # 定义一个2进制 (转换成机器语言的2进制)。
  - bytes(b'wsj')字符串不能转换位2进制,需要在字符串前加个b,就把字符串转换成2进制了
  - bytearray(12) #定义一个2进制数组
  - bytesarray(b'wsj')

四、Linux用户
  - cat /etc/passwd

猜你喜欢

转载自www.cnblogs.com/nealxyz/p/9456368.html