Python中文
首页
教程
问答
标签
搜索
登录
注册
如何在Python中打印负零
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在将十进制度数转换为DMS格式。转换算法是您所期望的,使用modf,加上符号从MS部分取出,只留在D部分。在</p> <p>除了度数为负0,-0的情况外,一切都很好。例如-0.391612,应打印为-0°23'29“。在</p> <p>“%d”删除负号。我可以使用什么格式的字符串打印-0?在</p> <p>将其转换为“-”格式,如果“klve”使用的是“负数”格式。这很尴尬,感觉不雅观。在</p> <p>代码如下:</p> <pre><code>def dec_to_DMS(decimal_deg): deg = modf(decimal_deg)[1] deg_ = fabs(modf(decimal_deg)[0]) min = modf(deg_ * 60)[1] min_ = modf(deg_ * 60)[0] sec = modf(min_ * 60)[1] return deg,min,sec def print_DMS(dms): # dms is a tuple # make sure the "-" is printed for -0.xxx format = ("-" if copysign(1,dms[0]) < 0 else "") + "%d°%02d'%02d\"" return format % dms print print_DMS(dec_to_DMS(-0.391612)) >>> -0°23'29" </code></pre> <p><code>deg_</code>是为了防止函数返回(-0,-23,-29);它返回正确的(-0,23,29)。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>使用<code>format()</code></p> <pre><code>>>> format(-0.0) '-0.0' >>> format(0.0) '0.0' >>> print '''{: g}°{}'{}"'''.format(-0.0, 23, 29) -0°23'29" </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何实现一个类,该类在每次更改其属性时更改其“last_edited”变量?
4 回答
如何实现一个类?
9 回答
如何实现一个类的属性设置?
1 回答
如何实现一个能够存储输入并反复访问输入的存储系统?GPA计算器
7 回答
如何实现一个自定义的keras层,它只保留前n个值,其余的都归零?
10 回答
如何实现一个行为类似于Python中序列的最小类?
9 回答
如何实现一个请求的多线程或多处理
8 回答
如何实现一个长时间运行的、事件驱动的python程序?
5 回答
如何实现一个颜色一致的非舔深度地图实时?
7 回答
如何实现一个默认的SQLAlchemy模型类,它包含用于继承的公共CRUD方法?
8 回答
如何实现一次热编码的生成函数
1 回答
如何实现一种在数组中删除对的方法
5 回答
如何实现一类支持向量机用于图像异常检测
10 回答
如何实现一维阵列到二维阵列的复制转换
9 回答
如何实现三维三次样条插值?
6 回答
如何实现三维数据的连接组件标签?
3 回答
如何实现三角形的空间索引
2 回答
如何实现不同模块中对象之间的交互
1 回答
如何实现不同版本的库共存?
4 回答
如何实现不同的班权重
9 回答