标签:使用 字符串 字符 turn 经纬度 字段名 不可变 参数 make
# 一句话交换两个变量的值:
a,b = b,a
# 还可以用* 运算符把一个可迭代对象拆开作为函数的参数
# print(divmod(20,8))
# Return the tuple (x//y, x%y) (2,4)
t = (20,8)
divmod(*t) # 拆开
a,b,*rest,d = range(5) # *rest 接收剩余的值 可以出现在赋值表达式的任意位置
print(rest)
接受表达式的元组可以是嵌套式的,例如(a,b,(c,d))。
只要这个接受元组的嵌套结构符合表达式本身的嵌套结构,Python就可以做出正确的对应
metro_areas = { (‘Tony‘,‘JP‘,34.2,(11,12)), (‘Tom‘,‘UI‘,3.8,(13,14)), (‘Jenny‘,‘JP‘,3.0,(15,16)), (‘Jeyffer‘,‘JP‘,34.2,(17,18)) } print(‘{:10} | {:^9} | {:^9}‘.format(‘‘,‘lat.‘,‘long.‘)) # format对齐的方式 fmt = ‘{:10} | {:9.4f} | {:9.4f}‘ for name,cc,pop,(latitude,longitude) in metro_areas: print(fmt.format(name,latitude,longitude)) 用嵌套元组来获取经纬度
具名元组
# 定义和使用具名元组 from collections import namedtuple City = namedtuple(‘City‘,‘name country population coordinates‘) tokyo = City(‘Tokyo‘,‘JP‘,36.933,(35.678,89.3455)) print(tokyo) # City(name=‘Tokyo‘, country=‘JP‘, population=36.933, coordinates=(35.678, 89.3455))
# _fields类属性:包含这个类所有字段名称的元组。 print(City._fields) # (‘name‘, ‘country‘, ‘population‘, ‘coordinates‘) # 用_make() 通过接受一个可迭代对象来生成这个类的一个实例,作用与City(*delhi_data)一样 LatLong = namedtuple(‘LatLong‘,‘lat long‘) delhi_data = (‘Delhi NCR‘,‘IN‘,21.935,LatLong(28.613889,77.2088)) delhi = City._make(delhi_data); # print(delhi) # _asdict()把具名元组以collections.OrderDict(有序的字典结构)的形式返回 print(delhi._asdict()) 专有属性
标签:使用 字符串 字符 turn 经纬度 字段名 不可变 参数 make
原文地址:https://www.cnblogs.com/LYliangying/p/9552177.html