print(‘2’*3)输出222,Python允许这种写法,表示字符串‘2’复制三次。
int(‘3.3’) 这个是要报错的,因为"."无法转化成int型;int(‘3’)这个ok,int(3.3)也ok。
a = [1,2,3,4,5,6]
print(a[-2:0])
输出[],切片本质,从start开始,按照步长累加取值,-2+1=-1,但是由于0是在后面找不到的,故而无法输出值。字符串也一样
a = [1,2,3,4,5,6]
print(a[-2:90:1])
输出[5,6]这种切片不会越界,只要后面index是可以找到的就会输出。字符串也一样
b = [1,2,3,4,5]
print(b[6])
但是这种就会报错,下标越界IndexError: list index out of range。
a = 'abcdef'
print(a[-1:1:-1])
输出:
fedc
print([1,2,3,4,‘32’][-1])
print(‘sfsdl’[3:])
这种方式也都ok,只是没有给字符串或者列表命名而已。
转义字符:
filepaht = 'D:\note1.txt'
print(filepaht)
输出如下:
D:
ote1.txt
这是由于"\n"当成了转义字符。
解决方案有三种:
1、对于操作系统文件路径这种可以用‘/’代替‘\’;2、加转义符’D:\note1.txt’;3、字符串前加r表示不转义:filepath= r’D:\note1.txt’
列表:
1、可变对象
2、增加元素append:list2.append(180)
3、展开增加元素:list3.extend([100,200])
4、插入元素到指定位置,两个参数(插入位置,插入元素)都不能省,不创建新的列表:
b = [1,2,3,4,5]
b.insert(1,666)
print(b)
输出:
[1, 666, 2, 3, 4, 5]
b = [1,2,3,4,5]
b.insert(0,666)
print(b)
输出:
[666, 1, 2, 3, 4, 5]
b = [1,2,3,4,5]
b.insert(5,666)
print(b)
输出:
[1, 2, 3, 4, 5, 666]
5、删除元素pop:
list2.pop(),默认删除最后一个元素,不创建新的列表。list2.pop(3)删除下标是3的元素。
6、删除元素remove:
根据元素的值删除,这种删除方式效率较低,list2.remove(66),不创建新的列表,当有多个相同值时只删除第一个
7、删除元素或列表del:
del list2[1]根据下标删除某个元素
del list2直接删除整个列表
元组:
元组和字符串一样都是不可变量,跟列表一样可以使用下标和切边,但是不能进行增删改。
定义只有一个元素的元组,需要加个逗号:(10,)
元组中有类似字列表这种,子列表的值是可以修改的:
tuple3 = (10,[20,40])
tuple3[1][0]=99
print(tuple3)
tuple3 = (10,{20:'abc'})
tuple3[1][20]='qqq'
print(tuple3)