创建字符串

创建字符串,可以直接使用引号或双引号进行创建,也可以使用转换函数进行创建。[大谦MATLAB,dqmatlab点com]

直接创建字符串

可以用引号直接创建字符串。

【MATLAB】

MATLAB中创建字符串,用双引号将字符序列包围起来赋给变量。在命令窗口键入:

code.matlab
>> a="Hello"
Hello

也可以用单引号创建字符数组。注意,MATLAB中,字符串和字符数组是不一样的,在某些场合只能用字符串,在某些场合则只能用字符数组。

code.matlab
>> b='Hello'
b =
    'Hello'

在命令窗口中输入whos命令:

code.matlab
>> whos
  Name      Size            Bytes  Class     Attributes
  a         1x1               166  string
  b         1x5                10  char

从以上结果可以看出,在内存中,每个字符占两个字节。

下面使用class函数和isstring函数测试a的数据类型,结果显示它是一个字符串。

code.matlab
>> class(a)
ans =
    'string'
>> isstring(a)
ans =
  logical
   1

下面使用class函数和ischar函数测试b的数据类型,结果显示它是一个字符数组。

code.matlab
>> class(b)
ans =
    'char'
>> ischar(b)
ans =
  logical
   1

【Python】

Python中创建字符串,用单引号或双引号将字符序列包围起来赋给变量即可,例如:

code.python
>>> a='Hello'

code.python
>>> a="Hello"

如果要创建的字符串有换行。

【MATLAB】

在 MATLAB 中,字符串可以包含换行符。换行符用特殊的转义序列 \n 来表示。当字符串中包含 \n 时,MATLAB 将会在该位置插入一个换行符。

下面的示例演示了如何在 MATLAB 字符串中使用sprintf函数和换行符\n插入实现换行效果:

code.matlab
>> a=sprintf('Hello\nMATLAB')
a =
    'Hello
     MATLAB'

也可以使用 newline 函数来表示换行符。例如:

code.matlab
>> a=['Hello' newline 'MATLAB']

输出与之前相同的结果。

【Python】

如果字符串有换行,Python中用三引号包围它们,例如:

code.python
>>> a='''Hello
Python'''
>>> print(a)
Hello
Python

注意,三引号是连续敲三个单引号。

如果字符串中包含单引号或双引号。

【MATLAB】

MATLAB中,字符串中包含单引号,可以直接在双引号表示的字符串中添加单引号。

code.matlab
>> a="I'm John."
a=
    "I'm John."

如果字符串中包含一个双引号,用两个连续的双引号可表示一个双引号。

code.matlab
>> a="I""m John."
a=
    "I"m John."

【Python】

Python中可以用不同的引号将整个字符串包围起来进行赋值,例如:

code.python
>>> a="I'm Python."
>>> a
"I'm Python."
>>> b=' I love "Python".'
>>> b
' I love "Python".'

编程时有时用到固定长度的字符串,称为定长字符串。定长字符串的长度是固定的,给定字符串的长度超出固定长度时,超出部分截除;达不到固定长度时,后面用空格补齐。

通过类型转换创建字符串

使用数据类型转换函数,可以将其他类型的变量转换为字符串类型,从而间接创建字符串类型的变量。

【MATLAB】

MATLAB中,使用string, int2str和num2str等函数可以将其他数据类型转换为字符串类型。下面创建一个短整型变量并赋值,使用CStr函数将它转换为字符串类型,然后在立即窗口输出变量的值。

在命令窗口输入:

code.matlab
>> a=1;
>> b=string(a)
b=
    "1"
>> a1=[1,2,3];
>> b1=string(a1)
b1=
  1×3 string 数组
    "1"    "2"    "3"
>> c=num2str(a)
c =
    '1'
>> c1=num2str(a1)
c1 =
    '1  2  3'

将数值数组转换为字符数组。

code.matlab
>> A=[77 65 84 76 65 66];
>> C=char(A)
C=
    'MATLAB'

【Python】

Python中使用str函数将其他类型的变量转换为字符串类型。下面创建一个整型数字变量,用str函数进行转换后输出它的值。

code.python
>>> a=123
>>> b=str(a)
>>> b
'123'

用str函数将整个列表转换为字符串:

code.python
>>> a=[1,2,3]
>>> b=str(a)
>>> b
'[1, 2, 3]'

如果希望将列表中的每个元素转换为字符串:

code.python
>>> for i in a:
	 b=str(i)
	 b
'1'
'2'
'3'

字符串的长度

字符串的长度即字符串中字符的个数,使用相应的函数可以获取字符串的长度。

【MATLAB】

MATLAB中用strlength函数获取指定字符串的长度。

code.matlab
>> a="Hello MATLAB";
>> strlength(a)
ans =
    12

使用strlength函数获取字符数组的长度。

code.matlab
>> a='Hello MATLAB';
>> strlength(a)
ans =
    12

【Python】

Python中用len函数返回字符串的长度,例如

code.python
>>> len('hello python')   #长度
12