software script nombre language example lua

script - Diferencia entre ''y "dentro de Lua



lua windows (3)

No No hay diferencia, excepto que puede incluir la otra dentro de las que está utilizando.

-- No difference between these myStr = "Hi!!" myStr = ''Hi!!'' myStr = [[Hi!!]] -- The ''weird'' way to make a string literal IMO... -- Double quotes enclosed in single quotes myStr = ''My friend said: "Hi!!"'' -- Single quotes enclosed in double quotes myStr = "My friend said: ''Hi!!''" -- Single and double quotes enclosed in double brackets myStr = [[My friend said: "What''s up?"]]

Ver: Cuerdas en Lua para más información.

Solo tengo una pregunta general.

¿Hay alguna diferencia al usar comillas simples y dobles dentro de Lua?

Ejemplo:

require(''test.lua'') require("test.lua")

Cuando programé en PAWN, un lenguaje similar a C, se podían usar comillas simples para los caracteres, pero no cadenas de texto, tenía que usar comillas dobles para ellos.

Y si no hay diferencia, ¿cuál se recomienda usar?

Lo más probable es que esta pregunta ya haya sido respondida, sin embargo, no pude encontrar un tema ya contestado.

Gracias.


No hay diferencia entre los dos en Lua, así que puedes usar el que quieras. Tiendo a diferenciarlas semánticamente:

  • Uso "double quotes" para las cadenas y el texto visibles por el usuario, básicamente lo que aparezca en la salida o en los archivos
  • Uso ''single quotes'' para cadenas de opciones como para pasar a métodos y generalmente en código, como io.stdout:setvbuf(''no'')

Puede encontrar información acerca de las cuerdas Lua fácilmente buscando en Internet "cuerdas lua".

Aquí hay un resultado: http://www.lua.org/pil/2.4.html

Usted es libre de elegir su propio estilo de cita, ya que no hace ninguna diferencia, pero debe ser coherente para que su código sea más agradable de leer.

Como cuestión de preferencia, normalmente usaría comillas dobles porque Lua usa códigos de escape de estilo C. Muchos lenguajes de script (Perl, por ejemplo) y comandos shells hacen la distinción entre cadenas de comillas simples y dobles, y sería bueno ser un poco coherente con estas prácticas cuasi estándar.

Quiero decir que cuando veo una cadena entre comillas simples, tengo que pensar realmente en qué idioma estoy leyendo y si los códigos de escape están o no sustituidos en esa cadena. Con cadenas de comillas dobles no tengo que pensarlo, porque como regla general, cualquier lenguaje que sustituya los códigos de escape de estilo C en una cadena lo hará en una cadena de comillas dobles.