python学习笔记(一)

写在前边

仅作为学习之用,以作记录

错误

  • 语法错误
  • 运行时错误
  • 语义错误

数据类型

python3中有6种标准的数据类型:Number String List Tuple Sets Dictionary

Number

python3支持3种不同的数值类型:int float complex(复数)

  • 整型
    正负数不带小数点,没有限制大小,可以当做 long来使用;
    /计算结果为 float//计算结果为整数
  • 浮点型
    由整数部分和小数部分组成,也可使用科学计数法表示
    整数与浮点数在计算机中的存储方式不同,整数的计算结果永远是精确的,浮点会有误差
  • 复数
    复数由实数部分和虚数部分组成.如a=1+2j,实数:a.real虚数a.imag结果都为浮点型

数据类型转换

数据类型转换有以下函数:
int(x) float(x) complex(x), real = x, imag = 0 complex(x, y)

常量

常量用全部大写的变量名表示常量,PI E

内建序列

python有6种内建序列,列表 元组 字符串 Unicode字符串 buffer对象 xrange对象

通用序列操作

python所有序列可进行一些特定操作索引 分片 序列相加 乘法 成员资格 长度 最小值 最大值

索引

序列中的元素从0开始

分片

通过分片可对一定范围内的元素进行访问,分片通过冒号分割的两个索引实现
v[1:3] v[3:] v[-3:] v[:] v[0:10:2] v[10::-1]

序列相加

同类型的序列才能用+相加

乘法

用一个数字乘以一个序列会生成新的序列

成员资格

数字类型不能在字符串类型中通过检测,而字符串类型可以在数字序列中通过in进行检测

长度、最小值、最大值

内建函数 len(a) max(a) min(a)

列表

列表不同于字符串和元组的地方:列表的内容是可变的

更新列表

  • 元素赋值
    列表中的元素可以有不同的类型 但不能为一个不存在的位置进行赋值
  • 增加元素
    list.append(obj)
  • 删除元素
    del list[1]
  • 分片赋值
    list[1:]=list('1234'),通过此方式可实现列表插入、删除、重新赋值等操作

嵌套列表

嵌套的列表取出来还是列表 str=[list('2222'), list('ssss')]

列表方法

  • append

    列表末尾添加新对象

  • count

    统计某个元素在列表中出现的次数

  • extend

    在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)str.extend(list('222'))等价于str[len(str):]=list('222')

  • index

    从列表中找出第一个匹配项的索引位置

  • insert

    list.insert(index, obj) 指定位置插入指定元素

  • pop

    移除列表中的一个元素,默认最后一个元素,并返回改元素的值,pop方法是为唯一一个既能修改列表又能返回元素值的列表方法

  • remove

    移除第一次出现的指定元素

  • reverse

    反转列表,改变列表的值但不返回列表,反向迭代使用函数 reversed(list)

  • sort

    对原列表进行排序,如果指定参数就使用参数指定的比较方法进行排序list.sort(func)

  • clear

    清空整个列表

  • copy

    list.copy() 类似于a=b[:]

  • 高级排序

    sort接受两个参数一个为key 一为reverse,list.sort(key=len, reverse=True)

元组

元组的内容不能修改(字符串也不能修改),创建元组的方式:使用逗号分开一些值,会自动创建元组

tuple函数

tuple函数以一个序列作为参数,并把它转换为元组,如果参数是元组则原样返回

元组的基本操作

  • 访问元组
    使用下标访问元组中的值
  • 修改元组
    元组的元素值不允许修改,但可以将多个元组进行连接组合
  • 删除元组
    使用del删除整个元组
  • 元组索引、截取
    元组也可以截取类似list

元组内置函数

len max min tuple

字符串

字符串使用' "创建,两者无区别,所有标准序列操作对字符串同样适用;字符串是不可变的,所以不可分片赋值单引号输出需要使用转义字符\'

字符串格式化

字符串格式化使用操作符%实现 print('its a %s !!!’ % ‘pen’)`

符号描述符号描述
%c格式化字符以及ASCII码%s格式化字符串
%d格式化整数%f格式化浮点数组,可指定精确值 %.2f
%e或%E科学计数法格式浮点数%u格式化无符号整型
%o格式化无符号八进制数%x格式化无符号16进制
%X格式化无符号16进制数,大写%p用16进制数格式化变量的地址

字符串格式化元组

`print(‘%10s %.2f %10s’ % (‘历史’,92.234,’张三’)`

字符串常用方法

  • myStr.find(d[, beg, end]) beg end 默认 beg=1,end=字符串长度
  • se.join(str)str的字符串序列按照指定的连接符se拼接,如'-'.join('abc') 结果a-b-c
  • myStr.upper() 转换为大写
  • myStr.lower() 转换为小写
  • myStr.swapcase() 大写转小写,小写转大写
  • myStr.replace(old, new[, max]) 将old替换为new,如果有max则最多替换max次
  • myStr.split([se, num]) join的逆方法;不带入参的时候根据空格切分,可以指定分割符和分割次数
  • myStr.strip([char]) 去掉头尾的指定字符,默认为空格
  • myStr.translate(table) 替换,可以同时进行多个替换
joinStr = '  abcD|efaaa'
mapX = 'abcdef'
mapY = '123456'
transTab = str.maketrans(mapX, mapY)
print('%-10s : %s' % ('translate ', joinStr.translate(transTab)))
# translate  :   123D|56111

字典

字典是一种可变容器,可通过名字引用值,是python的内建映射类型。语法:d = {k1:v1, k2:v2},键是唯一的不可变的(字符串、元组、数字),值可以为任何类型。特性:
- 字典一个键出现两次后者会覆盖前者。
- 键必须不可变,可用字符串、数字、元组
- 消耗内存较多

通过函数dict可以将其他类型建立字典dict([("A","1"), ("B","2")]) dict(name='A', number='1')

字典的基本操作

  • 增加 myDic['新增']=1
  • 修改 myDic['新增']=2
  • 删除 del myDic['新增']
  • 字典的格式化:
myDic = {"A":1, "B":2}
print('A 的值是 %(A)s'% myDic)

字典方法

  • clear() 清除字典元素
  • copy() 浅复制
  • dict.fromkeys(seq[, value]) 创建一个字典,seq字典键值列表,value为每个键的初始值,默认None
  • myDic.get(key, default=None) 获取指定键的值,若无则返回默认值
  • key in dict 'A' in myDic, 返回True False
  • keys() 返回键的列表
  • sedefault(key,value) 如果key不存在则赋值为value
  • myDic.update(myDic2) 将myDic2中的键值添加到myDic中,相同覆盖,不同的新增
  • myDic.values() 将字典中的值以列表的形式返回,列表中的值可以有重复
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值