这似乎是一个简单的问题,但我无法在任何地方找到答案.如果我有一个整数变量,我怎样才能将它转换为带有前导零的字符串?
我想要一些代码如下:
n = 4
string_size = 3
println(fleading(n, string_size))
# result should be "004"
Run Code Online (Sandbox Code Playgroud)
fleading将数字转换为带前导零的字符串的函数将在哪里.Python中的类似的方法是str(4).zfill(3)赋予004作为的结果.
我有一个 CSV 文件,看起来像这样 -
Location ID Location Name
3543459 A
20541 B
C320 C
... ..
Run Code Online (Sandbox Code Playgroud)
当我使用 读取文件时pd.read_csv,我得到这样的信息 -
Location ID Location Name
03543459 A
0020541 B
000C320 C
... ..
Run Code Online (Sandbox Code Playgroud)
如何避免前导零?我做了一些研究,我能找到的所有问题都是基于在 df 中生成前导零。
我首先提到了这个问题,但答案对我的情况没有帮助.
我有一个列表,其中每个组件包含以数字开头的元素,后跟单词(字符).元素开头的一些数字有一个或多个前导零.这是列表的一小部分:
x <- list(el1 = c("0010 First",
"0200 Second",
"0300 Third",
"4000 Fourth",
"0 Undefined",
"60838 Random",
"903200 Haphazard"),
el2 = c("0100 Hundredth",
"0200 Two hundredth",
"0300 Three hundredth",
"0040 Fortieth",
"0 Undefined",
"949848 Random",
"202626 Haphazard"),
el3 = c("0010 First",
"0200 Second",
"0300 Third",
"0100 Hundredth",
"0200 Two hundredth",
"0300 Three hundredth",
"0 Undefined",
"60838 Random",
"20200 Haphazard"))
Run Code Online (Sandbox Code Playgroud)
我想要实现的是删除它们可用的前导零,并且在开头0 Undefined加上所有其他不以前导零开头的元素仍然具有单个零.也就是说,将列表如下:
x <- list(el1 = c("10 First",
"200 Second",
"300 Third",
"4000 Fourth",
"0 Undefined", …Run Code Online (Sandbox Code Playgroud) 我有一个整数,我想转换为带前导零的字符串.
所以我有1并想把它变成01.14应该变成14没有014.
我试过了:
let str = (string 1).PadLeft(2, '0') // visual studio suggested this one
let str = (string 1).PadLeft 2 '0'
let str = String.PadLeft 2 '0' (string 1)
Run Code Online (Sandbox Code Playgroud)
但是没有工作:(当我用F#搜索这样的东西时,我得到了东西,printfn但我不想打印到stdout:/
免责声明:这是我的第一个F#
我试图将数据从Access数据库导入R.我想导入一些主要的CIP代码,这些代码可以包含前导零.RODBC正在将CIP代码转换为数字值,即使它在Access中被定义为文本.任何人都可以阐明我如何在导入时将此字段强制转换为文本字段?
我试图想办法将一个前导零添加到字符串字段值.例如,我有12345,但需要一个公式,将其转换为012345.我是Crystal的新手,因为我知道这可能是一个简单的公式,但似乎无法让它工作.
12345 => 012345 (add leading zero to make it 6 chars)
Run Code Online (Sandbox Code Playgroud)
提前致谢.
formula crystal-reports leading-zero crystal-reports-formulas
问题在于08和09号.我用Google搜索了这个,并找出08和09有问题的原因,但没有解决方案.
这是一个荒谬的例子,用于简要描述我的问题而不深入细节.
cursorDay=2;
let cursorDay=$cursorDay+1;
case "$cursorDay" in
1) cursorDay=01;;
2) cursorDay=02;;
3) cursorDay=03;;
4) cursorDay=04;;
5) cursorDay=05;;
6) cursorDay=06;;
7) cursorDay=07;;
8) cursorDay=08;;
9) cursorDay=09;
esac
echo "$cursorDay";
Run Code Online (Sandbox Code Playgroud)
我期望的输出是"03",实际上我确实得到了输出.但如果我做同样的事情尝试获得08或09,我这个错误:
line 100: let: cursorDay=08: value too great for base (error token is "08")
Run Code Online (Sandbox Code Playgroud)
问题是,有没有办法"强制"它将08和09视为常规数字?我发现了几个帖子详细说明如何消除零,但我想要零.
我有一个oracle列(artnr)包含长度为1的类型为number(9).我想更新数字如下......
示例:
如果number为0则为00000如果number为1则为00001如果number为12则应为00012
记住:这里00000,0000和00012是数字数据类型
以下是我尝试但失败的方法..
UPDATE pitb.toestel b
SET b.artnr = LPAD (b.artnr, 5, 0)
WHERE b.idinventaris = 403743;
Run Code Online (Sandbox Code Playgroud)
失败,因为Lpad只能应用于字符串
UPDATE pitb.toestel b
SET b.artnr = TO_NUMBER (TO_CHAR (artnr, '00009'), '00009')
WHERE b.idinventaris = 403743;
Run Code Online (Sandbox Code Playgroud)
仍然失败,因为to_number不会显示前导零.它只考虑第一个数字
任何人,你能不能给我一些能解决这个问题的方法.
sql比pl/sql解决方案更受欢迎
我意识到读取.csv文件会删除前导零,但是对于我的一些文件,它保持前导零而不必在read.csv中显式设置colClasses.另一方面,令我困惑的是在其他情况下,它会删除前导零.所以我的问题是:read.csv在哪些情况下删除前导零?
我浏览了很多其他问题,但没有看到一个非常合适的问题。
假设我有数据框,df:
Name Month
Bob 5
Jim 7
Mary 12
Run Code Online (Sandbox Code Playgroud)
我正在尝试编写一个 for 循环,它将用一位数向月份添加前导零(并按原样打印其他月份),然后我可以用列表覆盖该列。
这是我所拥有的
list={}
for i in df['Month']:
if len(df['Month'][i]) < 2:
print("{:02}".format(i))
else:
print(i)
print(list)
df['Month']=list
Run Code Online (Sandbox Code Playgroud)
像这样的代码给了我错误:
TypeError: object of type 'numpy.int64' has no len()
Run Code Online (Sandbox Code Playgroud)
我不完全确定从哪里解决这个问题或从哪里开始。谢谢!