Python基础(2)

1、List方法

  • append() :在list列表末尾添加元素
  • clear() : 清空list列表中的元素
  • copy() : 拷贝同一个list引用
  • count() :计算指定元素出现的次数
  • extend() : 链接两个list
  • index() :输出指定元素的下标
  • insert() : 插入指定元素,可以指定位置
  • pop() : 默认弹出最上面的元素(可指定下标)
  • remove() : 移除指定元素(第一次出现的)
  • reverse() : 反转list
  • sort() :按字典序排列list(可以放入自己的排序函数)
list = [1,2,3,3];
print("list=", end='');
print(list);
# append()
list.append(4);
print('list.append()=', end='');
print(list);
#count()
print('list.count(3)=', end='');
print(list.count(3))
#extend()
list2 = ['a', 'b'];
list.extend(list2);
print('list.extend(list2)=', end='');
print(list);
#index()
print('list.index("a")=', end='')
print(list.index('a'))
#pop()
print('list.pop()=', end='')
print(list.pop())
print('list=', end='')
print(list)
#remove()
list.remove(3)
print('list.remove(3)=', end='')
print(list)
#reverse()
list.reverse()
print('list.reverse()=', end='')
print(list)
#sort()
#str类型与int类型无法比较,利用pop()方法弹出第一个元素'a'
list.pop(0)
list.sort()
print('list.sort()=', end='')
print(list)
#copy()
list3 = list.copy();
print('list3=', end='')
print(list3)
# clear()
list.clear();
print("list.clear()=", end='');
print(list);

在这里插入图片描述

2、Tuple方法

  • count():同上
  • index():同上

3、Str方法

  • capitalize():字符串首字母大写
  • center(): 指定输出字符串长度,指定一个字符前后填充
  • count():统计指定字符个数
  • encode():为字符串指定编码格式
  • endswith():检测字符串是否以给定字符串结尾(可以指定字符串的开始与结束为止)
  • startwith():检测字符串是否以给定字符串开头(可以指定字符串的开始与结束为止)
  • expandtabs():将字符串中的’\t’字符转变为空格(可以指定转变的空格个数,默认为8)
  • index():查找指定字符串在字符串中第一次出现的下标。若找不到指定字符串,则报错。(rindex()从字符串尾开始找起)
  • format():格式化输出,先不做介绍
  • find():查找指定字符串在字符串中第一次出现的下标。若找不到指定字符串,则返回-1。(rfind()从字符串尾开始找起)
  • isalnum():如果字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
  • isalpha():如果字符串的所有字符都是字母则返回 True,否则返回 False
  • isdigit():如果字符串的所有字符都是数字则返回 True,否则返回 False
  • isspace():如果字符串只包含空格、制表符和换行,并且非空,返回True
  • istitle():如果字符串仅包含以大写字母开头、后面都是小写字母的单词,返回True
  • join():指定连接字符,依次连接传入的字符
  • lower():将字符串中的字母全都转为小写字母
  • upper():将字符串中的字母全都转为大写字母
  • ljust():返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串。
  • rjust():返回一个原字符串右对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串。
  • strip():去除字符串头尾的指定字符(lstrip()与rstrip()分别只移除头与尾部)
  • maketrans(intab, outtab):intab – 字符串中要替代的字符组成的字符串。outtab – 相应的映射字符的字符串。
  • translate():与maketrans()方法连用,将指定字符串中的代替字符改为映射字符
  • partition():指定字符串分割字符串,返回一个三元组。第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。
    (rpartition()从字符串尾开始找起)
  • replace():返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。
  • title():每一个空格后的英文单词首字母都大写
  • spilt():以指定字符串分割字符,若是两个指定字符串相邻,则分割出的元素为空格。(rsplit()从字符串尾开始查找)
  • splitlines([keepends]):keepends – 在输出结果里是否保留换行符(’\r’, ‘\r\n’, \n’),默认为 False,不包含换行符,如果为 True,则保留换行符。
  • swapcase():将字符串的字母大小写替换
  • zfill():将字符串左对齐,指定结果字符串大小,并在字符串前用0填充。
str = 'fasaffdda fdafdass'
#capitalize()
print('str.capitalize()=', end='')
print(str.capitalize())
#center()
print('str.center(25,"*")=', end='')
print(str.center(25, "*"))
#count()
print('str.count("a")=', end='')
print(str.count('a'))
#encode()
#b为二进制意思
str1 = "中国"
print('str1,encode("utf-8)="', end='')
print(str1.encode('utf-8'))
#endswith()
print('str.endswith("das")=', end='')
print(str.endswith('das'))
#expandtabs()
str1 = "adfa\tfdaf"
print("str1=" + str1)
print("str1.expandtabs()=" + str1.expandtabs(8))
#find()
print('str.find("sa")=', end='')
print(str.find('sa'))
print('str.find("safds")=', end='')
print(str.find('safds'))
#index()
print('str.index("sa")=', end='')
print(str.index('sa'))
#islower()
print('str.islower()=', end='')
print(str.islower())
#istitle()
print('str.istitle()=', end='')
print(str.istitle())
#join()
list = ['hello', 'world', '!']
print(' '.join(list))
#ljust()
print('str.ljust(25, "*")=' + str.ljust(25, '*'))
#strip()
print('str.strip("s")=' + str.strip('s'))
#maketrans()
intab='abcde'
outtab='12345'
translate = str.maketrans(intab, outtab);
print('str.maketrans(intab, outtab)=', str.translate(translate))
#partition()
print('str.partition("ff")=', end='')
print(str.partition('ff'))
#replace()
print('str.replace("a", "*", 3)=' + str.replace('a', '*', 3))
#split()
print('str.split("f")=', end='')
print(str.split('f'))
#splitlines()
str1 = 'ab c\n\nde fg\rkl\r\n'
print('str1.splitlines()=', end='')
print(str1.splitlines())
#swapcase()
str1 = 'dfaASDS'
print('str1.swapcase()=' + str1.swapcase())
#title()
str1 = 'fad daf ffdfd'
print('str1.title()=' + str1.title())
#zfill()
print('str.zfill(25,"*")=', end='')
print(str.zfill(25))

在这里插入图片描述

4、深浅拷贝

浅拷贝copy():指把存放变量的地址值传给被赋值,最后两个变量引用了同一份地址。
深拷贝deepcopy():指被赋值的变量开辟了另一块地址用来存放要赋值的变量的值(内容)。
但对可变类型与不可变类型是不一样的。
list的copy会分配两个不同的地址空间,而tuple的copy则是指向同一个地址空间。

id一样则为浅拷贝,否则为深拷贝。

import copy
list1 = [1,2,3]
list2 = list1.copy()
print('id(str1)=', end='')
print(id(list1))
print('id(str2)=', end='')
print(id(list2))
list2[0] = 2
print('str2=', end='')
print(list2)
print('str1=', end='')
print(list1)

list3 = ['1', list1]
print('id(str3)=', end='')
print(id(list3))
print('id(str3[1])=', end='')
print(id(list3[1]))
list3[1][0] = 5;
print('str3=', end='')
print(list3)
print('str1=', end='')
print(list1)

#tuple
tuple1 = (1,2,3)
tuple2 = copy.copy(tuple1)
print('id(tuple1)=', end='')
print(id(tuple1))
print('id(tuple2)=', end='')
print(id(tuple2))


在这里插入图片描述

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值