标签: string-interpolation

在f字符串插值中转义引号

我无法在以下字符串插补器中包含引号:

f"foo ${math.abs(-0.9876f)*100}%1.1f%%"
Run Code Online (Sandbox Code Playgroud)

输出是

foo 98.8%
Run Code Online (Sandbox Code Playgroud)

现在所需的输出是

foo "98.8%"
Run Code Online (Sandbox Code Playgroud)

插入\"不起作用,只会产生"未关闭的字符串文字"错误.

scala string-interpolation

1
推荐指数
1
解决办法
2418
查看次数

动态格式化

我可以使用"%.5f" % var_name格式化的浮动var_name,其中5代表的小数位数的固定数量.如何动态更改此数字?我试过"%.%f" % var_name, 5"#{var_name}.#{5}f",但他们没有工作.

ruby string-interpolation

1
推荐指数
1
解决办法
136
查看次数

使用ruby阻止内插

我正在编写一个简单的程序,要求用户输入数组并吐出数组及其平均值.真的很容易,我没有任何问题.

最后我想出了:(在这个例子中,我只使用随机数组而不是用户输入的代码)

array = [1,2,3]
sum = array.inject(:+)
average = sum.to_f/array.length
puts "The numbers you entered in the array were: #{array.join(" ")}"
puts "The average of those numbers are: #{average}"
Run Code Online (Sandbox Code Playgroud)

输出是预期的,并给我:

The numbers you entered in the array were: 1 2 3
The averages of those numbers are: 2.0
Run Code Online (Sandbox Code Playgroud)

然而,当我第一次尝试编码时,我试图通过简单的分配进行实际光滑,我尝试在插值中进行插值.我使用了这段代码:

对于上面代码中的第四行,我使用了:

puts "The numbers you entered in the array were: #{array.each{|num| print "#{num} "}}" 
Run Code Online (Sandbox Code Playgroud)

输出:

1 2 3 The numbers you entered in the array were: [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

所以我认为在插值内部的块内进行插值可能存在问题.然后我运行以下代码来测试内插中的一个块. …

ruby arrays codeblocks string-interpolation

1
推荐指数
1
解决办法
658
查看次数

Scala字符串插值和评估表达式

我正在深入研究 Scala 的字符串插值功能,我想知道使用它是否安全。字符串插值允许我们评估表达式,如:

println(s"Hello World! ${for (i <- 1 to 100) println(s"other values $i")}")
Run Code Online (Sandbox Code Playgroud)

我的疑问是我们是否应该评估内插字符串中的表达式。我看到很多其他开发人员正在使用此功能的 Scala 代码,例如示例中,但不知道这是否正确和安全。

scala string-interpolation

1
推荐指数
1
解决办法
674
查看次数

有没有更好的方法来编写这个字符串插值?

我必须编写一段漂亮的代码,但我对以下语法不满意.

有没有更好的方法来编写这个字符串插值?

var details = $"{((currentProfile.FirstName != newProfile.FirstName) ? $"{Environment.NewLine}First Name : {newProfile.FirstName}" : string.Empty)}" +
    $"{((currentProfile.LastName != newProfile.LastName) ? $"{Environment.NewLine}Last Name : {newProfile.LastName}" : string.Empty)}" +
    $"{((currentProfile.MiddleName != newProfile.MiddleName) ? $"{Environment.NewLine}Middle Name : {newProfile.MiddleName}" : string.Empty)}" +
    $"{((currentProfile.Suffix != newProfile.Suffix) ? $"{Environment.NewLine}Suffix : {newProfile.Suffix}" : string.Empty)}" +
    $"{((currentProfile.AddressLine1 != newProfile.AddressLine1) ? $"{Environment.NewLine}Address Line 1 : {newProfile.AddressLine1}" : string.Empty)}" +
    $"{((currentProfile.AddressLine2 != newProfile.AddressLine2) ? $"{Environment.NewLine}Address Line 2 : {newProfile.AddressLine2}" : string.Empty)}" +
    $"{((currentProfile.City != newProfile.City) ? $"{Environment.NewLine}City : {newProfile.City}" : …
Run Code Online (Sandbox Code Playgroud)

c# string-interpolation

1
推荐指数
1
解决办法
84
查看次数

如何在s""中插入双引号?

我知道我可以用字符串插值s"",但是如何在里面插入双引号s""

scala> val x = "x"
x: String = x

scala> s""
res5: String = ""

scala> s"${x}"
res6: String = x

scala> s"${x}\""
<console>:1: error: unclosed string literal
       s"${x}\""
Run Code Online (Sandbox Code Playgroud)

scala string-interpolation

1
推荐指数
1
解决办法
868
查看次数

Swift 条件字符串插值

当我需要根据某些条件(在这种情况下是最喜欢的)构造一个字符串时,我经常让自己编写这样的代码:

let me = Contact(name: "Stefan", isFavorite: true)

var message = "Contact \(me.name)"
if me.isFavorite {
    message.append(" is a favorite contact")
}
Run Code Online (Sandbox Code Playgroud)

对于这样一个简单的任务,这些是 4 行或一个复杂的三元运算符(if ? then : else)。对此,我总是心存芥蒂……

有没有办法用 Swift 更优雅地做到这一点?

string string-interpolation swift

1
推荐指数
2
解决办法
513
查看次数

在 Dart 中直接将实例属性打印到控制台的正确语法(不仅仅是打印范围内的变量)

在 Dart/Flutter 中,假设您有一个Class Y的实例a

Y类有一个属性property1

您想使用字符串插值来打印该属性,如下所示:

print('the thing I want to see in the console is: $a.property1');
Run Code Online (Sandbox Code Playgroud)

但是你甚至不能在没有错误的情况下完成输入。

我可以让它工作的唯一方法是这样做:

var temp = a.property1;
print ('the thing I want to see in the console is: $temp');
Run Code Online (Sandbox Code Playgroud)

我还没有在网上找到答案……我认为必须有一种方法可以直接做到这一点,而不必先创建变量。

printing variables string-interpolation dart flutter

1
推荐指数
1
解决办法
782
查看次数

美元符号不会在 C# 中插入括号

我正在尝试使用使用 $(美元符号)的 c# 功能创建一个字符串。结果将是这样的{{name}}。我唯一捕捉到了名字然后我想做一些像 EG 的事情

$"{{name}}"

所以我的问题是如何捕捉整个事情?在字符串中包括括号?EG“{{name}}”?似乎我不能用 $ 符号做到这一点。

这是我试过的

emailHtmlBuilder.Replace($"{{paramsHtml.Name}}", HttpUtility.HtmlEncode(paramsHtml.Value))};
Run Code Online (Sandbox Code Playgroud)

该模板有一些占位符 EG {{thisIsPlaceholder}}。我想用 EG 杯替换整个 {{thisIsPlaceholder}}

还是我应该使用正则表达式来创建该字符串?

c# string-interpolation

1
推荐指数
1
解决办法
67
查看次数

( (value_in_dictionary) modulo[%] (dictionary) ) 在 Python 中有什么作用?

我想了解有什么value_in_dictionary % dictionary作用。

我试过

values = {
    'hello':'world',
    'hello2':'world2',
}
value = 'world'
print(value % values)
Run Code Online (Sandbox Code Playgroud)

这打印

world
Run Code Online (Sandbox Code Playgroud)

python dictionary modulo string-interpolation python-3.x

1
推荐指数
1
解决办法
110
查看次数