Cuando necesito imprimir "00000", puedo usar "0" * 5 en python. ¿Hay un equivalente en C# sin bucle?Impresión de Python "0" * 5 equivalente en C#
Respuesta
Según su ejemplo, supongo que va a utilizar estas cadenas para ayudar a cero algunos números. Si ese es el caso, sería más fácil usar el método String.PadLeft()
para hacer su relleno. También podría estar usando la función similar en python, rjust()
.
por ejemplo,
var str = "5";
var padded = str.PadLeft(8, '0'); // pad the string to 8 characters, filling in '0's
// padded = "00000005"
De lo contrario si necesita una secuencia repetida de cadenas, que te gustaría utilizar el método String.Concat()
en conjunción con el método Enumerable.Repeat()
. Usar el constructor de cadenas solo permite la repetición de un solo carácter.
por ejemplo,
var chr = '0';
var repeatedChr = new String(chr, 8);
// repeatedChr = "00000000";
var str = "ha";
// var repeatedStr = new String(str, 5); // error, no equivalent
var repeated = String.Concat(Enumerable.Repeat(str, 5));
// repeated = "hahahahaha"
Uno de los String ctor overloads lo hará por usted:
string zeros = new String('0', 5);
Para añadir a las otras respuestas, usted no será capaz de utilizar este constructor de cadenas con otra cadena para repetir cadenas, como string s = new string("O", 5);
. Esto solo funciona con caracteres.
Sin embargo, puede usar Enumerable.Repeat()
después de agregar using System.Linq;
para obtener el resultado deseado con las cadenas.
string s = string.Concat(Enumerable.Repeat("O", 5));
No existe tal constructor que repite cadenas, solo para personajes –
@Jeff Mercado Eso es lo que dije. – Scott
Ah, oops, no noté que dijiste eso. Es mejor dejar fuera el código que no funciona para que no confundas a las personas como yo con pensar que estás sugiriendo que funciona o, al menos, formatearlo para que no aparezca como código normal. :) –
Dependiendo de la aplicación, esto puede ser útil también:
int n = 0;
string s = n.ToString().PadRight(5, '0');
No nunca, nunca utilice este: string.Join("0", new string[6]);
¿Por qué no "00000 "?! patos
Las respuestas incorrectas pueden ser buenas si puede proporcionar una mejor solución. Eso definitivamente es algo que no quieres hacer, pero escribir el literal de la cadena podría no ser siempre factible. –
Éste sólo funciona con cero: 0.ToString("D5");
- 1. Es menos cero (-0) equivalente a cero (0) en C#
- 2. Impresión escapada Unicode en Python
- 3. Equivalente a __func__ (de C) en Python
- 4. Impresión de gráficos en Python
- 5. Impresión silenciosa de un PDF en Python
- 6. Python equivalente a C# .Seleccione?
- 7. Python equivalente a C++ getline()
- 8. ¿Cuál es el equivalente de argv [0]?
- 9. enumeración de Python equivalente
- 10. python: impresión horizontal en lugar de impresión predeterminada actual
- 11. función de impresión python en tiempo real
- 12. C# impresión en red
- 13. ¿Hay un equivalente al urllib de python en c/C++?
- 14. ¿Acepta un rango de números en la forma de 0-5 usando argparse de Python?
- 15. C++ equivalente a los docámenes de Python?
- 16. C# Impresión (RichTextBox)
- 17. 5 valores máximos en un diccionario Python
- 18. Alimentación de formulario en impresión C#
- 19. python - bonitas barras de error de impresión
- 20. valores negativos de impresión como hexagonal en Python
- 21. ¿Qué es '\ 0' en C++?
- 22. impresión en LPT1 en C#
- 23. Encontrar una instrucción de impresión en Python
- 24. Incrementos de impresión de 0.1 en C#
- 25. impresión manual de un número entero de 0 bytes
- 26. C++ equivalente a la función Python len()?
- 27. equivalente en Java de struct.pack de Python?
- 28. Python "dir" equivalente en Clojure
- 29. Impresión de valores de atributo en python-amara
- 30. Python-equivalente de formato corto "si" en C++
¿Hay una diferencia entre '' string' y string'? – Mob
[Nope] (http://stackoverflow.com/questions/7074/inc-c-sharp-what-is-the-difference-between-string-and-string) –