我在 Golang 中有一个名为的字符串mystring,我想将它放在两个百分号之间(像这样%mystring%)。然而直到现在我还无法做到这一点。
我尝试过的事情是:
value := fmt.Sprintf("%%s%",mystring)
value := fmt.Sprintf("%s%s%s","%",mystring,"%")
value := fmt.Sprintf("/% %s/%",mystring)
Run Code Online (Sandbox Code Playgroud)
但是当我打印它时,最终我收到了一个nil. 示例:mystring 的值为“HelloWorld”,然后我得到:%HelloWorld%nil
现在我收到这个结果:
/%s/%!(NOVERB)%!(EXTRA string=HelloWorld)<nil>
Run Code Online (Sandbox Code Playgroud)
那么,我错过了什么?
谢谢。
此代码在每个 Console.WriteLine 语句下面的注释中生成输出。
谁能解释这种行为?
DateTime date1 = new DateTime(2008, 8, 18);
Console.WriteLine(date1.ToString("M"));
// Displays August 18
Console.WriteLine(date1.ToString("M "));
// Displays 8
Console.WriteLine(date1.ToString("(M)"));
// Displays (8)
Console.WriteLine(date1.ToString("(M) MMM, MMMM"));
// Displays (8) Aug, August
Run Code Online (Sandbox Code Playgroud) 我必须在用 Swift 编写的程序中选择两者之一,但我想我使用哪种编程语言并不重要。
我知道字符串格式化非常昂贵,并且怀疑它比将 Double 转换为 Int 更昂贵,但我什至不确定,最重要的是,到目前为止,我不明白为什么会出现这种情况。
另外,我在这里想做的是截断一个数字并将其打印到控制台,不带小数部分(这意味着我不希望它看起来像这样,0.0而是像这样0)。最有效的方法是什么?
有人可以启发我吗?
这是代码(第一行进行字符串格式化,第二行进行转换):
print(String(format: "%.0f", sender.value))
Int(sender.value)
Run Code Online (Sandbox Code Playgroud) 假设我有一个double = 99.00;. 如何定义一个字符串format,该字符串将输出一个字符串,就像"0.099"使用double.ToString(format);. 正如你所看到的,我想格式化我的双精度,就好像它被除以一样1000。
我知道我可以做这样的事情:
double number = 99.00;
string formattedNumber = (number / 1000).ToString("0.000");
Console.WriteLine(formattedNumber); // Output: "0.099"
Run Code Online (Sandbox Code Playgroud)
然而,有没有一种方法可以直接定义格式而不需要任何额外的计算呢?
我正在尝试格式化数字DecimalFormat.但我希望它格式化一个数字,就像
input: 1234. --> should be formatted to: 1,234.
Run Code Online (Sandbox Code Playgroud)
但我得到1,234.0或1,234.00取决于我的十进制格式规则我需要做什么才能完成这项工作?
如果我有一个字符串列表,其中一些包含其中包含的代码{},是否可以format()在以后使用这些字符串?
在我有的情况下,我想为身体伤害写一些味道文本,"He appears to be limping on his {1} leg."但我想根据有问题的腿来格式化该字符串"左"或"右".
我在字符串变量中有一个Url.
我所拥有的Urls的示例格式是:
http://something.com/sites/collection
Run Code Online (Sandbox Code Playgroud)
http://something:33/sites/collection,
something:44/sites/collection
现在我想从该URL中提取"/ sites/collection"部分.
我正处于无法使用python 2.7并坚持使用2.4.3的情况.我原本试图使用str.format方法,但现在我正在尝试使用%modulo来支持端口.
原始2.7代码:
LINE = "{:<6} {:34} {:18} {:10} {:10} {:10} {:10} {:10}\n"
def main():
with open(OUTPUT, "w") as outf:
outf.write(LINE.format("SysNum", "Job Name", "Target Machiene", "Status", "Start Date", "Start Time", "End Date", "End Time"))
for result in parse_jobfile(INPUT):
outf.write(LINE.format(*result))
Run Code Online (Sandbox Code Playgroud)
需要后端移植的2.4.3代码:
LINE = "{:<6} {:34} {:18} {:10} {:10} {:10} {:10} {:10}\n"
def main():
outf = open(OUTPUT, "w")
outf.write(LINE.'%s, %s,%s, %s,%s, %s,%s, %s,' % ("SysNum", "Job Name", "Target Machiene", "Status", "Start Date", "Start Time", "End Date", "End Time"))
for result in parse_jobfile(INPUT): …Run Code Online (Sandbox Code Playgroud) 我想用C语言做类似的事情:
# This example is in Python language
var1 = 10
var2 = 45
var3 = 76
text = "Numbers are: %d, %d, %d." % (var1, var2, var3)
Run Code Online (Sandbox Code Playgroud)
这可能在C?我想说一个纯C的解决方案,而不是C++.谢谢.
我不想直接打印字符串,我只想存储格式化的字符串.
我遇到了以下代码。
print ('%04.3f' % random.uniform(1, 100))
Run Code Online (Sandbox Code Playgroud)
'%04.3f'代码中代表什么?