知识点
Python中字符串可以看作字符的列表,支持下标索引取值,但字符串是不可变对象,不能修改其中某个字符。
代码
booklist = ["java","csharp","cplusplus"]
# booklist[0] 获取列表第0个元素,得到字符串 "java"
print(booklist[0])
# booklist[0][0] 双重下标:先取列表第0项字符串,再取这个字符串的第0个字符
print(booklist[0][0])Code language: PHP (php)
运行输出:
java
j
索引规则
- 正向索引:从0开始
"java":j[0]、a[1]、v[2]、a[3] - 负向索引:
-1代表最后一个字符
booklist[0][-1] # 输出 a,取java最后一位Code language: CSS (css)
- 索引越界报错
字符串长度是4,最大下标为3,访问[4]会抛出:IndexError: string index out of range字符串索引超出范围
strd = "java"
print(strd[1]) # 输出 aCode language: PHP (php)
字符串首字母作为字典key
需求:把列表里的字符串存入字典,用每个字符串首字母作为字典的key
books = ["java","csharp","cplusplus","python"]
booksdict = {}
booksdict[books[0][0]] = books[0] # books[0][0]拿到"j"
booksdict[books[1][0]] = books[1] # books[1][0]拿到"c"
booksdict[books[2][0]] = books[2]
booksdict[books[3][0]] = books[3]
print(booksdict)
# {'j': 'java', 'c': 'csharp', 'p': 'python'}Code language: PHP (php)
注意
字符串可以读取下标字符,但不能赋值修改
s = "hello"
s[0] = "H" # 报错!字符串不可修改Code language: PHP (php)
循环简化写法
books = ["java","csharp","cplusplus","python"]
booksdict = {}
for item in books:
booksdict[item[0]] = item
print(booksdict)Code language: PHP (php)
练习
s = "apple",取出第一个字符、最后一个字符怎么写?- 列表
lst=["cat","dog","bird"],取出dog的第一个字符。
Previous: 字典 (dict)
Next: 特殊类型 None / True / False