我正在寻找有关如何格式化Nagios性能数据的规范或示例。
本文档没有提供任何好的示例,我正在寻找有关如何在Thruk / Nagios输出中创建此类表的说明。
原始数据 :
pending=3;5500;7000 complete=18940;; error=454;;7000
我有以下列表c(1.23,1,0.9)显示在控制台中[1] 1.23 1 0.9 ,我想将其转换为:
[1] 1.23,1.,.9.正如你所看到的那样,第一个数字保持不变,但是1变为1.而0.9变为.9.
有这种格式的优雅方式吗?
问候
我有制表符分隔文件(city-data.txt):
Alabama Montgomery 32.361538 -86.279118
Alaska Juneau 58.301935 -134.41974
Run Code Online (Sandbox Code Playgroud)
有可能以某种方式读取前两列作为字符串,最后两列作为浮点数?
我的输出应该如下所示:
[(Alabama,Montgomery,32.36,-86.28),
(Alaska,Juneau,58.30,-134.42)]
Run Code Online (Sandbox Code Playgroud)
我试过了:
mylist2=np.genfromtxt(r'city-data.txt', delimiter='\t', dtype=("<S15","
<S15", float, float)).tolist()
Run Code Online (Sandbox Code Playgroud)
这给了我字节类型的前两列:
[(b'Alabama', b'Montgomery', 32.361538, -86.279118),
(b'Alaska', b'Juneau', 58.301935, -134.41974)]
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
with open('city-data.txt') as f:
mylist = [tuple(i.strip().split('\t')) for i in f]
Run Code Online (Sandbox Code Playgroud)
这给了我字符串类型的所有列:
[('Alabama', 'Montgomery', '32.361538', '-86.279118'),
('Alaska', 'Juneau', '58.301935', '-134.41974')]
Run Code Online (Sandbox Code Playgroud)
我无法想出如何实现我需要的东西......
所以我真的希望这一切发生.我有一个整数变量,我想使用该变量在我的printf函数中给出间距,但C不允许我这样做,是否有任何解决方法.
#include<stdio.h>
int main(void){
int s = 5;
printf("%sd",s);
}
Run Code Online (Sandbox Code Playgroud)
非常感谢提前!
我刚刚在我的网站上更新了EPiServer.随着更新来了新的TinyMCE.我有一个关于如何更改格式列表内容的问题.
昨天发布了这个很好的指南(https://world.episerver.com/documentation/developer-guides/CMS/add-ons/customizing-the-tinymce-editor-v2/),它展示了如何做很多事情.但我需要知道的是如何调整格式列表的内容.例如,<h1>从format下拉列表中删除选项.
这是在JavaScript中的方法:https: //www.tinymce.com/docs/configure/editor-appearance/#menu
tinymce.init({
selector: 'textarea', // change this value according to your HTML
menu: {
format: {title: 'Format', items: 'bold italic underline strikethrough superscript subscript | formats | removeformat'}
}
});
Run Code Online (Sandbox Code Playgroud)
但是我如何在TinyMCE的EPiServer C#版本中执行此操作?
toolbarSmall是我的cusom配置,它现在看起来像这样.
public void ConfigureContainer(ServiceConfigurationContext context)
{
var toolbarsSmall = new[]
{
"epi-link unlink | cut copy paste pastetext pasteword searchreplace | table",
"bold | bullist numlist hr | formatselect undo redo | | fullscreen …Run Code Online (Sandbox Code Playgroud) 我倾向于在Python中使用列表理解,因为我认为它是一种生成列表的简洁方法,但我常常发现自己一周后回来并自言自语"我到底为此做了什么?!" 它是一个70多个字符的嵌套条件列表理解语句.我想知道如果我应该将其分解为if/elif/else,以及性能影响(如果有的话),它是否达到某一点.
我目前的情况:
从调用返回的结构是元组列表.我需要将它转换为列表,需要清理一些值,我需要从列表中删除最后一个元素.
例如
[(val1, ' ', 'ChangeMe', 'RemoveMe),
(val1, ' ', 'ChangeMe', 'RemoveMe),
(val1, ' ', 'ChangeMe', 'RemoveMe)]
Run Code Online (Sandbox Code Playgroud)
因此,在这种情况下,我想删除RemoveMe,替换所有' '带''和替换ChangeMe用val2.我知道这是一个很大的变化,但我回来的数据有时很糟糕,而且我无法控制作为回应的东西.
我目前有类似的东西:
response = cursor.fetchall()
response = [['' if item == ' ' else item if item != 'ChangeMe' else 'val2' for item in row][:-1] for row in response]`
Run Code Online (Sandbox Code Playgroud)
嵌套的多条件理解语句是否令人不悦?我知道风格上Python更喜欢可读性,但也很紧凑,而不是冗长.
任何提示或信息将不胜感激.谢谢大家!
有人可以向我解释.format()方法发生了什么,它只能处理字符串声明,而不能处理包含字符串的变量吗?
下面是工作和失败代码的示例,后面跟着每个代码的输出
# This works fine
s = "{0} \n" \
"{1} \n" \
"{2}\n" \
.format("Hello", "world", "from a multiline string")
print(s)
# This does not
f = "{0} \n" \
"{1} \n" \
"{2}\n"
f.format("Hello", "world", "from a multiline string")
print(f)
Run Code Online (Sandbox Code Playgroud)
各自的产出
Hello
world
from a multiline string
{0}
{1}
{2}
Run Code Online (Sandbox Code Playgroud)
我试过这个,在braces({})中没有数字,也没有通过赋值({aname})和传递关键字参数.我想了解格式方法如何处理它们的第一个和第二个例子之间的区别,以及是否有一种方法来格式化包含与实际声明分开的字符串的变量.
我想带着这些日子面临的挑战来到这里.
基本上对于每个记录,应该在put语句中使用不同的格式,并且它在自己的数据中定义.
挑战不是分割datasteps并在datastep中获得想要的结果,所以避免明显的%do循环和类似:)
proc format;
value $a 'FRS'='FIRST';
value $b 'SCN'='SECOND';
run;
data a;
length var $3 res $10 fmt $5;
var='FRS'; fmt='$a.'; res=''; output;
var='SCN'; fmt='$b.'; res=''; output;
run;
data b;
set a;
*your code goes here, the result should go into res variable;
*and should be the "putted" value of var using fmt as format.;
*an obviously non working version can be found here below;
res=put(var,fmt);
run;
Run Code Online (Sandbox Code Playgroud)
下面是它的样子,res是预期的结果:
VAR FMT RES
---------------
"FRS" $a. =put("FRS",$a.)="FIRST"
"SCN" $b. =put("SCN",$b.)="SECOND"
Run Code Online (Sandbox Code Playgroud) 我有多个日期,我想在SELECT中将小时,分钟,秒和毫秒设置为零.
例如:2017-10-10 15:23:28.603成为2017-10-10 00:00:00.000
到目前为止,我可以将所有内容设置为零到期
dateadd(hour, datepart(hour,getdate()),CAST(convert(varchar(20),getdate(),112) as datetime)) AS 'Date',
Run Code Online (Sandbox Code Playgroud)
给:2017-10-10 15:00:00.000,如何摆脱时间呢?
我有一个以字符串形式返回的日期:
date_str = "2018-08-17"
Run Code Online (Sandbox Code Playgroud)
我如何将其格式化为另一种标准日期格式,例如.17.8/2018以编程方式无需手动解析字符串?