zoukankan      html  css  js  c++  java
  • Python字符串格式化学这些就够用了

    一、思考❓❔

    1.什么是字符串格式化?

    • 将变量(对象)的值填充到字符串中
    • 在字符串中解析Python表达式
    • 对字符串进行格式化显示
      • 左对齐、右对齐、居中对齐
      • 保留数字有效位数

    2.你学过的字符串格式化方式有哪些?

    • % 字符串格式化
    • format字符串格式化
    • F字符串


    二、% 字符串格式化操作

    1.使用变量来替换字符串中的%s

    name = "可优"
    lover = "柠檬小姐姐"
    print("%s爱上了%s!" %(name, lover))	# 变量name与lover会以一一对应的形式来填充%s
    

    程序运行结果:

    可优爱上了柠檬小姐姐!
    

    2.保留数字有效位数

    pi = 3.14159265359
    print("圆周率(%.5f)有多长,爱你就有多深!" %(pi, ))  # 将浮点类型的变量,保留5位小数
    

    程序运行结果:

    圆周率(3.14159)有多长,爱你就有多深!
    


    三、format字符串格式化操作

    1.使用变量来替换字符串中的{}

    name = "可优"
    lover = "柠檬小姐姐"
    print("{}爱上了{}!".format(name, lover))	# 变量name与lover会以一一对应的形式来{}
    

    程序运行结果:

    可优爱上了柠檬小姐姐!
    

    2.保留数字有效位数

    pi = 3.14159265359
    print("圆周率({:.5f})有多长,爱你就有多深!".format(pi, )) # 将浮点类型的变量,保留5位小数 
    

    程序运行结果:

    圆周率(3.14159)有多长,爱你就有多深!
    

    3.字符串对齐

    # ^为居中对齐,20为总的字符数
    # “【爱的誓言】”先居中对齐,左右两侧使用符号来填充
    print("{:^20}".format("【爱的誓言】"))
    

    程序运行结果:

    【爱的誓言】
    

    4.其他用法

    self_info = {"name": "可优", "age": 17, "lover": "柠檬小姐姐"}
    # 将self_info字典类型拆包之后,填充指定的{}
    # <为左对齐,6为总的字符数
    # 左侧使用来填充
    print("姓名: {name:<6}\n芳年: {age:<6}\n爱人: {lover:<6}".format(**self_info))
    

    程序运行结果:

    姓名: 可优
    芳年: 17
    爱人: 柠檬小姐姐
    


    四、F字符串格式化操作

    1.在字符串中解析变量

    name = "可优"
    lover = "柠檬小姐姐"
    # 在字符串前面添加一个f之后,即为f字符串,可以在字符串中解析变量
    print(f"{name}爱上了{lover}!")
    

    程序运行结果:

    可优爱上了柠檬小姐姐!
    

    2.在字符串中运行Python表达式

    import random
    
    love_times = random.randint(0, 100)
    name = "可优"
    lover = "柠檬小姐姐"
    sea = ""
    tortoise = ""
    # 可以在f字符串中,计算Python中的表达式
    print(f"{name}对{lover}的爱,犹如滔滔江水绵绵不绝!{sea * 3}\n如果实在要加一个期限的话,我想是{love_times + 10000}年!{tortoise * 3}")
    

    程序运行结果:

    可优对柠檬小姐姐的爱,犹如滔滔江水绵绵不绝!
    如果实在要加一个期限的话,我想是10016年!
    

    3.在字符串中获取字典的值

    self_info = {"name": "可优", "age": 17, "lover": "柠檬小姐姐"}
    # 在f字符串中,获取字典的值
    print(f"姓名: {self_info['name']}\n芳年: {self_info['age']}\n爱人: {self_info['lover']}")
    

    程序运行结果:

    姓名: 可优
    芳年: 17
    爱人: 柠檬小姐姐
    


    五、作业挑战

    1.使用format字符串格式化方法,获取对象的属性,将其填充到字符串中


    2.使用F字符串,获取对象的属性,将其填充到字符串中



    六、总结

    • Python中字符串格式化方法很多,最常用的就是本文提到的三种方法
    • %为Python 2中主导的字符串格式化方式,功能偏弱
    • format字符串格式化方法相比%更加强大,使用场景也更多
    • F字符串是Python 3.6推出的新特性,功能极其强大,简洁明了、解析效率非常高,推荐使用
    *******请大家尊重原创,如要转载,请注明出处: 转载自:https://www.cnblogs.com/keyou1/,谢谢!!*******
    *******有任何疑问,欢迎加入软件测试交流群:699968364(加群时,请备注:博客园-可优)。博主QQ:3429173264*******
  • 相关阅读:
    牛客网 二叉树的镜像 JAVA
    牛客网 反转链表 JAVA
    牛客网 调整数组顺序使奇数位于偶数前面 JAVA
    Integer to Roman LeetCode Java
    Valid Number leetcode java
    Longest Common Prefix
    Wildcard Matching leetcode java
    Regular Expression Matching
    Longest Palindromic Substring
    Add Binary LeetCode Java
  • 原文地址:https://www.cnblogs.com/keyou1/p/11236982.html
Copyright © 2011-2022 走看看