博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python知识点总结篇(二)
阅读量:6457 次
发布时间:2019-06-23

本文共 3000 字,大约阅读时间需要 10 分钟。

列表

  • 列表:一个值,包含多个字构成的序列,用[ ]括起来,[]是一个空列表,不包含任何值,类似于空字符串,负数下标表示从后边开始,-1表示列表最后一个下标,它是一种可变的数据类型,值可以添加、删除或改变;
  • +用于连接两个列表并得到一个新列表;*用于一个列表和一个整数,实现列表的复制;del将删除列表中下标处的值;innot in用于确定一个值是否在列表中;
  • 多重赋值技巧:变量数目和列表长度必须严格相等,eg;
cat = ['fat', 'black', 'loud']size, color, disposition = cat复制代码
  • sort()方法对列表中排序时需注意的3件事:
    • sort()方法当场对列表排序;
    • 不能对既有数字又有字符串值的列表排序;
    • 对字符串排序时,使用"ASCII 字符顺序";
  • sort()sorted()方法的比较:sort(key = None, reverse = False)就地改变列表,sorted(iterable, key = None, reverse = False)返回新的列表,对所有可迭代对象均有效;
supplies = ['pens', 'staplers', 'flame-throwers', 'binders']supplies.sort()print(supplies)supplies = ['pens', 'staplers', 'flame-throwers', 'binders']sortedSupplies = sorted(supplies)print(supplies)print(sortedSupplies)复制代码

  • \:续行字符;
  • 元组:使用( ),和字符串一样是不可变的,值不能被修改、添加或删除;
  • 序列与元组的转换:list()将元组转换为序列,tuple()将序列转换为元组;
#序列转元组pets = ['K', 'M', 'N']print(tuple(pets))#元组转序列pets = ('K', 'M', 'N')print(list(pets))复制代码

  • 列表的引用:列表赋给一个变量时,不直接保存到变量,而是将列表的“引用”赋给了该变量,所以当改变变量的值时,原列表的值也要随着改变;
>>> spam = [0, 1, 2, 4, 5]>>> chees = spam>>> cheese[1] = 'Hello'>>> spam[0, 'Hello', 2, 4, 5]>>> cheese[0, 'Hello', 2, 4, 5]复制代码
  • copy()deepcopy():处理列表或序列时,若不希望改动影响原来的列表或字典,则使用copy()函数,若是要复制的列表中包含了列表,则使用deepcopy()代替;

字典和结构化数据

  • 字典:{key:value}
  • 字典与列表:列表是有序的,而字典是无序的,因此字典不可像列表一样切片;
  • keys()values()items():分别对应于字典的键、值和键-值对;
  • get(要取得其值的键, 键不存在时返回的备用值)
>>> picnicItems = {
'apples':5, 'cpus':2}>>> 'I am bringing ' + str(picnicItems.get('cups', 0) + ' cups.'I am bringing 2 cups.>>> 'I an bringing ' + str(picnicItems.get('eggs', 0) + ' cups.'I am bringing 0 eggs.复制代码
  • setdefault(要检查的键, 检查的键不存在时设置的值):第一次调用之后即存在,再次调用不会改变第一次赋给的键值;
>>> spam = {
'name':'Pooka', 'age':5}>>> spam.setdefault('color', 'black')'black'>>> spam{
'color':'black', 'age':5, 'name':'Pooka'}>>> spam.setdefault('color', 'white')'black'>>> spam{
'color':'black', 'age':5, 'name':'Pooka'}复制代码
  • 集合:无序、不重复的数据组合,主要作用为:

    • 去重, 把一个列表变成集合,就自动去重了;
    • 关系测试,测试两组数据之前的交集、差集、并集等关系;
  • 格式输出:pprint()pformat()

import pprintinfo = {
'name':'K', 'age': 23}pprint.pprint(info)#下列这句和上句结果相同#print(pprint.pformat(info))复制代码

  • 嵌套的字典和列表
#嵌套的字典和列表allGuests = {
'Alice':{
'apple':4, 'pretzels':19}, 'Bob':{
'apple':3, 'sandwiches':4}, 'Carol':{
'cups':5, 'apple pies':4}}def totalBrought(guests, item): numberBrought = 0; for k, v in guests.items(): numberBrought += v.get(item, 0) return numberBroughtprint('Apple = ' + str(totalBrought(allGuests, 'apple')))复制代码

字符串操作

  • 字符串既可以用单引号,也可以用双引号开始和结束;
  • 转义字符:\
  • 原始字符串:在字符串开始的引号前加上r,原始字符串完全忽略所有的转义字符,打印出字符串中所有的倒斜杠;
>>> print(r'That is Carol\'s cat.')That is Carol\'s cat.复制代码
  • 多行字符串:多行字符串的起止是3个单引号或3个双引号,三重引号之间的所有引号、制表符或换行,都被认为是字符串的一部分,此时缩进规则不适用;
>>> print('''Dear Alice,Eve's cat has been arrested for catnapping, cat burglary, and extortion.Sincerely,Bob''')Dear Alice,Eve's cat has been arrested for catnapping, cat burglary, and extortion.Sincerely,Bob复制代码
  • 文本对齐:左对齐ljust(),右对齐rjust(),居中center()
  • 向计算机剪贴板发送或接受文本,需要用到pyperclip模块中的copy()paste()函数;
  • 字符串的格式化

转载于:https://juejin.im/post/5bb1d084e51d450e78263fba

你可能感兴趣的文章
如何部署最新版本的WordPress
查看>>
创建可以在Interface Builder中渲染的自定义视图
查看>>
戴维营教育最新项目实战开发视频出炉:Swift、XMPP、SpriteKi...
查看>>
zabbix网络发现规则配置实战/详解
查看>>
Apache Griffin 入门指南
查看>>
10年以后,.net终于成功了!
查看>>
测试工程师培训大纲
查看>>
Linux_note 命令grep,sed,awk
查看>>
我的友情链接
查看>>
博士生传给硕士生的经验
查看>>
转载:Kubernetes v1.12 二进制部署集群(HTTPS+RBAC)
查看>>
从json获取坐标,生成地图覆盖物
查看>>
21_css布局3_定位布局.html
查看>>
JScript 正则表达式语法表
查看>>
Delphi 的字符及字符串[3] - String 中的秘密
查看>>
使用phpize为编译好的PHP安装拓展模块
查看>>
【Java每日一题】20170213
查看>>
Java中本地时间的获取方法
查看>>
LVS-DR实现
查看>>
谁是最受雇员欢迎的中国IT企业?(2)
查看>>