【循序渐进学Python3新语法】

【循序渐进学Python3新语法】

Python因为版本的迭代,所以出现了许多的新的语法,学会这些新语法,在以后的工作中,会大大增加工作的效率,今天我们就来看看这三个新式语法.

字符串的输出

  • f-string(format)提供了一种简洁易懂的方式,可以在字符串中包含Python表达式f-string
  • 可以在字符串中包含Python表达式f-string以字符“f”或者"F"为前缀
  • 格式化字符串使用一对单引号、双引号、三单引,三双引,格式化字符串
  • 主要使用的是字符串的格式化方法进行输出,一般情况下字符串中花括号内部设置输出的格式

实例

age = 10
name = "张三"

print("我是%s,今年%d" % (name, age))
print("我是" + name + ",今年" + str(age) + "岁")
# 在格式化字符串中可以将{}理解为是将字符串与代码进行分割的符号
print(f"我是{name},今年{age}岁")
print(f"我是{'张三'},今年{20}岁")
print(f"我是{name},今年{18 if age<18 else age}岁")


def fun(age):
    if age < 18:
        return 18
    else:
        return age


print(f"我是{name},今年{fun(age)}岁")

格式化输出

数字 格式 输出 作用
3.1415926 {:.2f} 3.14 保留小数点后2位小数
3.1415926 {:+.2f} +3.14 带符号保留小数点后2位
-1 {:+.2f} -1.00 带符号保留小数点后2位
3.1415926 {:.0f} 3 不带小数
5 {:0>2d} 05 数字补0(2d代表数的长度补充左边)
5 {:#<2d} 5# 数字补#(2d代表数的长度补充右边)
100000000 {:,} 100,000,000 以逗号分隔数字的格式,人民币表示
0.25 {:.2%} 25.00% 百分比格式输出
100000000 {:.2e} 1.00e+08 指数计数法
13 {:10d} 13 右对齐(默认宽度为10)
13 {:<10d} 13 左对齐(默认宽度为10)
13 {:^10d} 13 居中对齐(默认宽度为10)
11 {:b} 1011 二进制输出
11 {:d} 11 十进制输出
11 {: o} 13 八进制输出
11 {:x} b 十六进制输出
11 {:#x} 0xb 十六进制格式输出
11 {:#X} 0XB 大写十六进制格式输出

实例:

a = 3.1415926
print("圆周率是%.2f" % a)
print('{:.2f}'.format(a))
print('{:+.2f}'.format(a))
print("{:.0f}".format(a))
print("{:#>3d}".format(5))
print("{:,}".format(100000000))
print("{:%}".format(0.22))
print("{:.2e}".format(100000000))
print("{:10d}".format(13))
print("{:<10d}".format(13))
print("{:^10d}".format(13))

有序字典

  • 原始的字典其内部元素的顺序不稳定,因此提出了一种新字典类型叫有序字典

实例:

from collections import OrderedDict

my_dict = OrderedDict()
my_dict["yi"] = 1
my_dict["er"] = 2
my_dict["san"] = 3
my_dict["si"] = 4
print(my_dict)
  • 在Python3.6版本中dict字典已经经过优化处理,变为有序字典,并且字典所占用的内存减少了20%-25%

猜你喜欢

转载自blog.csdn.net/XVJINHUA954/article/details/107974299