在python中添加百分比 - xlwt / pyexcelerator

时间:2010-06-06 19:53:26

标签: python xlwt pyexcelerator

只是一个简单的问题,如何在不修改数字的情况下将百分号添加到数字中。我已尝试使用myStyleFont.num_format_str ='0.00%'格式化百分比,但它乘以100,但我只需追加百分比。

提前Ty。

问候。

4 个答案:

答案 0 :(得分:7)

只是向任何人澄清,这是一个在xlwt中将数字格式化为百分比的示例:

from xlwt import easyxf, Workbook
wb = Workbook()
ws = wb.add_sheet('Formatting Sheet')
style_percent = easyxf(num_format_str='0.00%')
ws.write(0, 5, 0.12, style_percent)

这在Excel单元格中显示为'12 .00%'。

答案 1 :(得分:4)

请注意:“修改”和“乘以100”会影响显示的结果,它们既不会影响存储在文件中的值,也不会影响公式计算中使用的值。

将操作符视为文字的技术称为“转义”。

Excel数字格式字符串中的转义字符是反斜杠。

要执行您想要的操作,您的格式应为r"0.00\%""0.00\\%"

以上是Excel的属性,不限于Python或xlwt等。您可以使用其中一个UI(Excel,OpenOffice Calc,Gnumeric)对此进行测试。

请注意,除非您有一组受限制的用户阅读并理解您将要编写的文档[不太可能* 3],否则您不应该这样做;它会相当混乱 - 看到5.00%的普通Excel用户认为底层数字是0.05。要查看此内容,请在Excel等中输入A1,A2,A3:5%然后.05然后=A1=A2 ...您将在A3中看到TRUE

pyExcelerator是放弃软件;你为什么提到它?

关于myStyleFont.num_format_str = '0.00%'(1)“font”和“num_format_str”是风格又名XF的独立组件;您的变量名称“myStyleFont”令人困惑/困惑。 (2)通过将属性戳到对象中来设置XF在xlwt中是旧的;请改用easyxf

答案 2 :(得分:0)

00.0%数字格式需要百分比,因此乘以100以显示它是正确的行为。要获得所需的结果,您可以将数据作为字符串以您选择的任何格式放入单元格中,或者在将值存储在单元格中之前除以100.0。

答案 3 :(得分:0)

执行此操作

将值除以100,然后再将格式样式“ 0.00%”应用于该值

body {
  margin: 0;
}

.header-fixed {
  position: fixed;
  top: 0;
  z-index: 1;
  width: 100%;
  background-color: #242424;
  box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.1);
}

.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  line-height: 60px;
}

.navbar .logo {
  height: 80px;
}

.navbar .logo:hover {
  color: #777777;
}

.navbar nav {
  flex: 8;
}

.navbar label {
  user-select: none;
  cursor: pointer;
  padding: 28px 20px;
  position: relative;
  z-index: 3;
}

.navbar label i {
  height: 2px;
  position: relative;
  transition: background .2s ease-out;
  width: 18px;
  font-style: normal;
  font-weight: normal;
}

.navbar label i:before,
.navbar label i:after {
  content: '';
  height: 100%;
  position: absolute;
  transition: all .2s ease-out;
  width: 100%;
}

.navbar label i,
.navbar label i:before,
.navbar label i:after {
  display: block;
  background: #eee;
}

.navbar label i:before {
  top: 5px;
}

.navbar label i:after {
  top: -5px;
}

.navbar #navbar-toggle {
  display: none;
}

.header #navbar-toggle:checked~.menu {
  visibility: visible;
  opacity: 0.99;
}

.header #navbar-toggle:checked~label {
  background: #212121;
  border-radius: 50%;
}

.header #navbar-toggle:checked~label i {
  background: transparent;
}

.header #navbar-toggle:checked~label i:before {
  transform: rotate(-45deg);
}

.header #navbar-toggle:checked~label i:after {
  transform: rotate(45deg);
}

.header #navbar-toggle:checked~label:not(.steps) i:before,
.header #navbar-toggle:checked~label:not(.steps) i:after {
  top: 0;
}

@media (max-width: 768px) {
  .navbar nav {
    visibility: hidden;
    opacity: 0;
    z-index: 2;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    transition: all 0.3s ease-out;
    display: table;
    background: #ddd;
  }

  .navbar nav ul {
    margin: 0;
    padding: 20px 0;
    display: table-cell;
    vertical-align: middle;
  }

  .navbar nav li {
    display: block;
    text-align: center;
    padding: 20px 0;
    text-align: center;
    font-size: 50px;
    min-height: 50px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease-out;
  }

  .navbar nav li:hover {
    background: #525151;
  }

  .navbar nav li:hover a {
    color: #fff;
    transition: all 0.3s ease-out;
  }

  .navbar nav li a {
    color: #212121;
  }
}

@media (min-width: 768px) {
  .navbar nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-around;
    text-align: center;
    list-style: none;
  }

  .navbar nav li {
    flex: 1;
  }

  .navbar nav li a {
    display: block;
    padding: 0 8px;
    font-size: 16px;
    line-height: 60px;
    color: #fff;
    text-decoration: none;
  }

  .navbar nav li.active {
    background: #555;
  }

  .navbar nav li:hover {
    background: #333;
  }

  .navbar label {
    display: none;
  }
}

.navbar .logo {
  flex: 3;
}

.navbar .logo a {
  display: block;
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  margin-left: 20px;
  margin-top: 10px;
}

.navbar .logo a:hover {
  color: #4d4c4c;
  transition: .2s;
}

希望这对您有帮助。