只是一个简单的问题,如何在不修改数字的情况下将百分号添加到数字中。我已尝试使用myStyleFont.num_format_str ='0.00%'格式化百分比,但它乘以100,但我只需追加百分比。
提前Ty。问候。
答案 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;
}
希望这对您有帮助。