标签: string-formatting

对字符串使用locals()和format()方法:有什么警告吗?

关于使用以下模式是否有任何缺点,警告或不良做法警告?

def buildString(user, name = 'john', age=22):
    userId = user.getUserId()
    return "Name: {name}, age: {age}, userid:{userId}".format(**locals())
Run Code Online (Sandbox Code Playgroud)

我有一个非常重复的字符串生成代码来编写并且很想使用它,但是关于使用的东西locals()让我感到不舒服.这有意外行为的危险吗?

编辑:上下文

我发现自己经常写下这样的东西:

"{name} {age} {userId} {etc}...".format(name=name, age=age, userId=userId, etc=etc)
Run Code Online (Sandbox Code Playgroud)

python local-variables string-formatting locals

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

将浮动转换为美元和美分

首先,我尝试过这篇文章(其中包括):Python中的货币格式.它对我的变量没有影响.我最好的猜测是因为我使用的是Python 3,而且是Python 2的代码.(除非我忽略了一些东西,因为我是Python的新手).

我想将一个浮点数(如1234.5)转换为String,例如"$ 1,234.50".我该怎么做呢?

为了以防万一,这里是我编译的代码,但不影响我的变量:

money = float(1234.5)
locale.setlocale(locale.LC_ALL, '')
locale.currency(money, grouping=True)
Run Code Online (Sandbox Code Playgroud)

也不成功:

money = float(1234.5)
print(money) #output is 1234.5
'${:,.2f}'.format(money)
print(money) #output is 1234.5
Run Code Online (Sandbox Code Playgroud)

python floating-point currency string-formatting python-3.x

47
推荐指数
3
解决办法
8万
查看次数

如何在Python中打印正数的数字符号+

有没有更好的方法在正数上打印数字的+号?

integer1 = 10
integer2 = 5
sign = ''
total = integer1-integer2
if total > 0: sign = '+'
print 'Total:'+sign+str(total)
Run Code Online (Sandbox Code Playgroud)

0应该返回0而不是+.

python string-formatting

45
推荐指数
3
解决办法
3万
查看次数

使用ToString将字节转换为两位十六进制数字?

我可以将一个字节转换为十六进制数字,如下所示:

myByte.ToString("X")
Run Code Online (Sandbox Code Playgroud)

但如果小于0x10,它只有一位数.我需要一个领先的零.是否有一个格式字符串,可以在一次调用中执行此操作ToString

.net c# string-formatting

45
推荐指数
1
解决办法
4万
查看次数

如何将布尔值一般格式化为是/否字符串?

我想根据一些布尔变量在不同的语言中显示是/否.
是否有一种通用的方法根据传递给它的语言环境对其进行格式化?
如果没有,那么格式化布尔值的标准方法是什么boolVar ? Resources.Yes : Resources.No.
我猜这boolVar.ToString(IFormatProvider)涉及到了.
我的假设是否正确?

c# formatting coding-style string-formatting

45
推荐指数
4
解决办法
5万
查看次数

在VB6中实现String.Format()

可以String.Format()在VB6中实现,至少是一个足够接近的版本,在用'VB6'进行编程时可能会有用吗?

关于VB6字符串操作性能的良好资源:http://www.aivosto.com/vbtips/stringopt2.html

在一个相关的不,我也想出了几个字符串比较函数,在CodeReview.SE上找到它们

这些函数对于提高VB6的可读性非常有用,特别是如果你最近被.net代码宠坏了,突然被要求潜入VB6代码库......享受!

string vb6 vba string-formatting

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

JavaScript Chart.js - 在工具提示上显示的自定义数据格式

我在这里查看了各种文档和类似的问题,但似乎无法找到特定的解决方案.如果我遗漏了任何明显或重复这个问题的道歉!

作为一些背景信息,我使用Chart.js插件实现了4个图形,并使用PHP从数据库传递了所需的数据.这一切都正常工作,很好.

我的问题是我需要将工具提示中的数据显示为格式化数据.与%数字一样.例如,我的数据库中的一个数据是-0.17222.我把它格式化为一个百分比显示在我的表中,一切都很好.但是,在设置chart.js条形图的数据时,数据显然缺少此格式并显示为-0.17222,这是我不想要的.

对不起,我想张贴一张照片,但我的声誉太垃圾了!

我从数据库中获取数据,然后设置到我的表中:

var kpiRex = new Handsontable(example1, {
    data: getRexData(),
Run Code Online (Sandbox Code Playgroud)

然后我在图表部分中提供这样的数据:

data: kpiRex.getDataAtRow(3)
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很棒!我已经被困在这几个小时了,这可能是我非常简单的事情.

javascript code-formatting string-formatting number-formatting chart.js

45
推荐指数
8
解决办法
10万
查看次数

WPF StringFormat = {0:C}显示为美元

为什么这行代码

<TextBlock Text="{Binding Net, StringFormat=c}"/>
Run Code Online (Sandbox Code Playgroud)

当我的所有区域设置都设置为UK时,将结果输出为$ xx.xx.我希望它输出为£xx​​.xx.有任何想法吗?我尝试过stringformat的不同变体,包括StringFormat = {} {0:C},但仍然得到相同的结果.

谢谢你的期待.

wpf binding currency regional string-formatting

44
推荐指数
3
解决办法
4万
查看次数

StringFormat和带标签的多重绑定

我想使用StringFormat做这样的事情:

<Label x:Name="myLabel">
    <Label.Content>
        <Multibinding StringFormat="{}{0} - {1}">
            <Binding Path="Lib1" />
            <Binding Path="Lib2" />
        </MultiBinding>
    </Label.Content>
</Label>
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用,我得到了这个错误:

MultiBinding失败,因为它没有有效的Converter.MultiBindingExpression:目标元素是'Label'(Name ='myLabel'); target属性是'Content'(类型'Object')

有没有办法使这个代码工作?

c# xaml string-formatting multibinding

44
推荐指数
3
解决办法
3万
查看次数

嵌套的f字符串

感谢David Beazley的推文,我最近发现新的Python 3.6 f字符串也可以嵌套:

>>> price = 478.23
>>> f"{f'${price:0.2f}':*>20s}"
'*************$478.23'
Run Code Online (Sandbox Code Playgroud)

要么:

>>> x = 42
>>> f'''-{f"""*{f"+{f'.{x}.'}+"}*"""}-'''
'-*+.42.+*-'
Run Code Online (Sandbox Code Playgroud)

虽然我很惊讶这是可能的,但我很遗憾这是多么实际,何时嵌套f字符串是有用的?这可以涵盖哪些用例?

注意:PEP本身没有提到嵌套f字符串,但是有一个特定的测试用例.

python string-formatting python-3.x python-3.6 f-string

44
推荐指数
6
解决办法
8765
查看次数