Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 访问字符串中的值_Python - Fatal编程技术网

Python 访问字符串中的值

Python 访问字符串中的值,python,Python,我刚在php和javascript之后开始使用python,但我对这个简单的概念感到困惑……我已经在tutorialpoints或w3school上搜索了很多关于这方面的内容,但我什么也没找到 下面是示例代码 var1 = 'Hello-World!' print("var1[:6]: ", var1[:6]) 此代码将输出为 你好- 但是这里W字在哪里,因为字符串总是从0值开始,所以W也会被打印 不管怎样,现在我决定把每个字都分开打印 print("var1[0]: ", var1[0])

我刚在php和javascript之后开始使用python,但我对这个简单的概念感到困惑……我已经在tutorialpoints或w3school上搜索了很多关于这方面的内容,但我什么也没找到

下面是示例代码

var1 = 'Hello-World!'
print("var1[:6]: ", var1[:6])
此代码将输出为 你好- 但是这里W字在哪里,因为字符串总是从0值开始,所以W也会被打印

不管怎样,现在我决定把每个字都分开打印

print("var1[0]: ", var1[0])
print("var1[1]: ", var1[1])
print("var1[2]: ", var1[2])
print("var1[3]: ", var1[3])
print("var1[4]: ", var1[4])
print("var1[5]: ", var1[5])
print("var1[6]: ", var1[6])
输出是

var1[0]:  H
var1[0]:  e
var1[0]:  l
var1[0]:  l
var1[0]:  o
var1[0]:  -
var1[0]:  W

现在我真的很困惑,为什么我的第一个示例代码中没有打印W?

列表切片从第一个索引一直到最后一个索引。换言之,切片

var1[0:6]  # same as var1[:6]
涵盖指数0到5,但不包括指数6

未打印
W
的原因是
W
是索引6。如果要包含
W
,则需要执行
var1[0:7]


这是直观的,因为如果你这样做,比如说,
var1[m:n]
,那么你会得到一个长度正好为
m-n
的子字符串。类似地,如果我说我想要
var1[:6]
,我是说我想要
var1
的第一个
6
字符。不是索引为6的第七个字符。

[x:y]
是python的切片语法<代码>[x]指的是索引。在我的第一个示例中,我没有定义x值,这意味着它必须从0开始,这意味着它将通过忽略第6位字母来打印第6位之前的所有值?这可能有助于概念化列表的第一个元素具有索引0,第二个元素具有索引1,所以第六个元素有索引5,第七个元素(也就是说,
'W'
)有索引6。bro第六个元素是w0=H,1=e,2=l,3=l,4=0,5=-,6=W第一个元素有索引
0
,所以
W
是索引
6
的第七个元素。