工作中遇到了要计算两个数百分比的问题,python 2.7 环境。
代码:
1
2
3
4
5
6
7
8
9
|
#!/usr/bin/env python #function: 计算百分比 #USAGE: python calculator.py num1 num2 import sys a = sys.argv[ 1 ] a = float (a) b = sys.argv[ 2 ] b = float (b) print "%.2f%%" % (a / b * 100 ) |
示例:
1
2
|
root@ops - docker - 1 : / tmp / data # python calculator.py 3 11 27.27 % |
下面是我工作中的应用
需求:要计算一堆数的百分比 并记录在文件中
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
原始文件 - - - - - - - root@ops - docker - 1 : / tmp / data # head -n 7 a.txt 北京 总计: 2488 北京 总计: 78353 电信 301 电信 6515 移动 70 移动 2349 联通 1500 联通 36736 铁通 60 铁通 1671 教育网 12 教育网 234 鹏博士 9 鹏博士 51 shell脚本 - - - - - - - - - root@ops - docker - 1 : / tmp / data # cat ratio.sh #!/bin/bash #USAGE: sh ratio.sh src-file dst-file >$ 2 i = 1 for n in $(grep - E - o "([0-9]*)" $ 1 ) do if [ $(($i % 2 )) - ne 0 ];then echo $n >A else echo $n >B A = $(cat A) B = $(cat B) echo $A "\t" $B "\t" $(python calculator.py $A $B)>>$ 2 fi i = $(($i + 1 )) done rm - rf A B 使用 - - - - root@ops - docker - 1 : / tmp / data # sh ratio.sh a.txt b.txt root@ops - docker - 1 : / tmp / data # head -n 7 b.txt 2488 78353 3.18 % 301 6515 4.62 % 70 2349 2.98 % 1500 36736 4.08 % 60 1671 3.59 % 12 234 5.13 % 9 51 17.65 % 合并两个文件格式化处理后显示 root@ops - docker - 1 : / tmp / data # head -n 7 ab.txt - - - - - - - - - - - - - - 北京 总计: 2488 北京 总计: 78353 2488 78353 3.18 % 电信 301 电信 6515 301 6515 4.62 % 移动 70 移动 2349 70 2349 2.98 % 联通 1500 联通 36736 1500 36736 4.08 % 铁通 60 铁通 1671 60 1671 3.59 % 教育网 12 教育网 234 12 234 5.13 % 鹏博士 9 鹏博士 51 9 51 17.65 % |
以上这篇python计算两个数的百分比方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/Hehailiang_Dream/article/details/54944392