我无法理解这一点。我在人们的代码中看到了这一点。但无法弄清楚它的作用。这是在Python中。
str(int(a[::-1]))
答案 0 :(得分:33)
Assumming a
是一个字符串。 python中的Slice表示法具有语法 -
list[<start>:<stop>:<step>]
因此,当你执行a[::-1]
时,它会从结尾开始,然后是第一个元素。所以它逆转了。这也适用于列表/元组。
示例 -
>>> a = '1232'
>>> a[::-1]
'2321'
然后你将它转换为int然后再转换为字符串(虽然不知道你为什么这样做),这只会让你回到字符串。
答案 1 :(得分:4)
中使用的符号
#include <iostream> // for cin,cout we use iostream
#include <stdio.h> // you don't need this header file in this program
#include <string> // also you don't need this header
using namespace std;
int main()
{
int x,y;
cout<<"Please give me a number : ";
cin>>x;
cout<<"Please give me another number : ";
cin>>y;
cout<<"The sum of "<<x<<" and "<< y<<" is "<<x+y;
return 0;
}
表示对于给定的字符串/列表/元组,您可以使用格式
对所述对象进行切片a[::-1]
这意味着该对象将切换每个&#34;步骤&#34;从给定的起始索引开始的索引,直到停止索引(不包括停止索引)并将其返回给你。
如果缺少起始索引或停止索引,它将使用默认值作为给定字符串/列表/元组的起始索引和停止索引。如果该步骤留空,则它采用默认值1,即它通过每个索引。
所以,
<object_name>[<start_index>, <stop_index>, <step>]
会打印
a = '1234'
print a[::2]
现在索引在这里以及步数,支持负数。因此,如果给出-1索引,则转换为len(a)-1索引。如果你给-x作为步数,那么它将从起始索引开始每个第x个值,直到反向停止索引。例如
13
这将返回
a = '1234'
print a[3:0:-1]
请注意,它不会返回4321,因为不包括停止索引。
现在就在你的情况下,
432
只会反转存储在字符串中的给定整数,然后将其转换回字符串
即&#34; 1234&#34; - &GT; &#34; 4321&#34; - &GT; 4321 - &gt; &#34; 4321&#34;
如果你要做的只是反转给定的字符串,那么只需要[:: - 1]即可。