• python eval、chr、ord、format、join、strip和split函数的使用


    目录

    1. eval 函数

    2. chr函数

    3. ord函数

    4. format函数

    5. join函数

    6. 进制转换

    7. strip函数

    8. split函数


    1. eval 函数

            格式:eval(表达式,globals参数,locals参数)

            作用:将字符串当成有效的表达式来求值并且返回结果

    • 表达式:该位置放置字符串表达式
    • globals参数:该部分一定是字典,否则会出错,表达式中的参数值会被限定在globals参数中
    • locals参数:该参数控制局部的命名空间,必须是字典,当glogals参数和locals参数冲突时,优先选择locals参数

    注意:globals参数和locals参数默认是空的

    示例:

    1. # 表达式示例
    2. a = 10
    3. print(eval("a + 1")) # 输出11
    4. # globals参数使用
    5. g = {'a': 1}
    6. # 这里globals参数与表达式中的参数同名,会选择字典中的参数值作为a的值
    7. print(eval("a + 1", g)) # 输出2
    8. # locals参数使用
    9. b = 20
    10. c = 30
    11. f = {"a": 1, "b": 3}
    12. t = {"b": 2, "c": 3}
    13. # b参数在globals参数和locals参数中都出现了,选择了locals参数中的值作为b的值
    14. print(eval("a + b + c", f, t))

    2. chr函数

            格式:chr(数值表达式)

            作用:返回当前整数的ASCII字符,数值范围在0-1114111

    示例:

    1. # chr() 使用
    2. a = chr(97) # 把97对应的字符返回
    3. print(a) # 输出a

    3. ord函数

            格式:ord("字符串")

            作用:把对应的字符转换为对应的十进制整数,只能传一个字符

    示例:

    1. # ord() 用法
    2. a = ord("a") # 把 a 对应的十进制整数返回
    3. print(a) # 输出97

    4. format函数

            格式:字符串.format(参数,...)

            作用:通过字符串中的 {} 来识别替换字符串中的字符

    • 通过 {} 默认替换:
    1. # {} 数量决定参数数量,{} 数量不可以多于参数数量
    2. str1 = '我叫{}'
    3. up = str1.format('李白', '韩信')
    4. print(up) # 输出 我叫李白
    • 通过索引拿到参数:
      1. # 替换字段可以重复,数字形式的简单字段名相当于把字段当成一个序列形式,通过索引的形式进行一一取值
      2. print('我喜欢{1},我不喜欢{2},我是{0}'.format('李白', '酒', '美女'))
    • 使用关键字拿到参数:
      1. # 可以用关键字传递
      2. print('我喜欢{t},我不喜欢{hobby},我是{name}'.format(name='李白', hobby='酒', t='美女'))

    •  关键字和索引混合使用:
      1. # 关键字参数必须位于位置参数之后
      2. # 混合使用时,可以省略数字
      3. # 省略字段名{}不能和数字形式的字段名同时使用
      4. print('我是{0},我爱{1},我想成为{t}'.format('陈平安', '喝酒', t = '剑圣'))
      5. print('我是{},我爱{},我想成为{t}'.format('陈平安', '喝酒', t = '剑圣')) # 可以省略数字
    • 使用列表和字典传参:
      1. # 列表的使用
      2. list1 = ['英雄', '正义的人', '保护世界']
      3. print('我是一名{},我要成为{},我想{}'.format(*list1))
      4. print('我是一名{2},我要成为{0},我想{1}'.format(*list1)) # 可以加上参数
      5. # 使用字典
      6. dict1 = {'name': '李白', 'age': 20, 'hobby': '唱歌'}
      7. # 一个 * 拿到的是key值,两个 * 拿到的才是 values
      8. print('我叫{name}, 今年{age}, 我喜欢{hobby}'.format(**dict1)) # 需要使用两个 *

    • 列表和字典混合使用时也可以使用索引和关键字:
      1. # 混合使用 关键字和数字可以随意使用
      2. print('我是一名{1},我要成为{name},我想{2}, 我叫{name}, 今年{age}, 我喜欢{hobby}'.format(*list1, **dict1))

    •  对齐字符串

            1. ^ :居中对齐 ,后面接宽度

            2. <:左对齐,后面接宽度

            3. >:右对齐,后面接宽度

    1. print("{:>5}".format(1)) # 向右对齐
    2. print("{:^5}".format(1)) # 居中对齐

    5. join函数

            格式:字符串.join(字符串)

            作用:将字符序列,按指定的字符串进行连接

    • 对列表进行操作(即连接各个字符串):
      1. seq1 = ['hello', 'good', 'boy', 'doiido']
      2. print(' '.join(seq1)) # 以空格分割,组成一个新的长字符串
      3. print(':'.join(seq1)) # 输出 hello:good:boy:doiido

    • 对字符串进行操作(即分割字符串):
      1. # 对字符串进行操作
      2. seq2 = 'hello word'
      3. l = ':'.join(seq2) # 把字符串每个字符按指定字符分割
      4. print(l) # 输出 h:e:l:l:o: :w:o:r:d

    •  对元组进行操作(即合并元组中的字符串):
      1. # 对元组进行操作
      2. seq3 = ('hello', 'good', 'boy', 'doiido')
      3. print(':'.join(seq3)) # 输出 hello:good:boy:doiido

    • 合并目录:
      1. # 合并目录
      2. import os
      3. li = os.path.join('/hello/', 'goodboy/')
      4. print(li) # 输出 /hello/goodboy/

    6. 进制转换

    • 转换成二进制函数:bin(数字)
    • 转换成八进制函数:oct(数字)
    • 转换成十六进制函数:hex(数字)

    注意:各进制数转换出来返回的结果是字符串

            示例:

    1. a = 8
    2. # 十进制转二进制
    3. print(a,'二进制数:', bin(a))
    4. # 十进制转八进制
    5. print(a, '八进制数:', oct(a))
    6. # 十进制转十六进制
    7. print(a, '十六进制:', hex(a))
    8. b = 0o300
    9. # 八进制转换为二进制
    10. print(b, '二进制数:', bin(b))
    11. # 二进制转换为十进制
    12. print(int('1001', 2)) # 这里需要指定
    13. print(0b1001) # 这里需要指定为二进制
    14. # 指定二进制的位数输出
    15. print(format(int(33), '08b')) # 输出八位二进制数 00100001
    16. print(format(int(13), '04b')) # 输出四位二进制数 1101
    17. # 直接转换成十进制
    18. print(0o300) # 八进制转十进制
    19. print(0x200) # 十六进制转十进制

    7. strip函数

            格式:字符串.strip(字符)

            作用:移除开头结尾指定的字符

            示例:

    1. # strip 用于移除头尾指定的字符
    2. str = '//haklg/fig/gj,jaig\i/g|ioar '
    3. print(str.strip('/ ')) # 输出 haklg/fig/gj,jaig\i/g|ioar

    8. split函数

            格式:字符串.split(字符,参数)

            作用:按指定字符进行分割,返回的是字典,参数控制分割的次数

            示例:

    1. str = '//haklg/fig/gj,jaig\i/g|ioar '
    2. # split 通过指定分隔符对字符串进行切片,如果参数num有指定值,则仅分割num个子字符串
    3. print(str.split('/')) # 输出 ['', '', 'haklg', 'fig', 'gj,jaig\\i', 'g|ioar ']
    4. print(str.split('/', 3)) # 输出 ['', '', 'haklg', 'fig/gj,jaig\\i/g|ioar ']

  • 相关阅读:
    《安富莱嵌入式周报》第290期:开源静电便携测试仪,开源音频功放,CAN高波特率设计,超级铁电产品,小米Vela系统,65W USB PD充电器参考设计
    k8s安装与使用
    Spring MVC拦截器
    巯基SH/氨基/NH2/羧基COOH/PEG/蛋白Protein/抗体antibody修饰Au@SiO2核壳纳米粒子/二氧化硅包裹金表面
    温故知新(十一)——IIC
    Docker部署go项目
    AutoJs学习-几个QQ群脚本(群引流\提取成员\加群友\加群)
    【初阶数据结构】二叉树的几种遍历详解
    人工智能图像修复研究,人工智能图像信息处理
    laravel框架介绍(一)
  • 原文地址:https://blog.csdn.net/weixin_62859191/article/details/126497939