python核心基础纵览(上)
来源:互联网 发布:unity3d 素材制作 编辑:程序博客网 时间:2024/05/29 06:50
Number类型
整数与浮点数
## python2.7 a = 123848488483993932002093939L ## 要加L,py2.7有长整型b = 23.03c = 10 / 4 ## 2d = 10 / 4.0 ## 2.5e = 10 // 4 ## 2f = 10 // 4.0 ## 2.0## python3.5a = 1238484884839939320020939393839303 ## 不需要加L,python3.x是属于单个整数类型,不区分长整型b = 29.90c = 10 / 4 ## 2.5d = 10 / 4.0 ## 2.5e = 10 // 4 ## 2f = 10 // 4.0 ## 2.0
Boolean,只有两个值:True && False
a = Falseb = True
十进制转16进制、8进制、2进制
num = 29 ## 10进制## 转16进制hex(num) ## 0x1d## 转8进制oct(num) ## 0o35## 转2进制bin(num) ## 0b11101
16进制、8进制、2进制转十进制
## 16进制转10进制str_hex = r'0x1d'int(str_hex,base = 16)## 8进制转10进制str_oct = r'0o35'int(str_oct,base = 8)## 2进制转10进制str_bin = r'0b11101'int(str_bin,base = 2)
Sequence类型簇
序列类型簇
- 字符串String
- 元组Tuple
- 列表List
基本操作符
- A[index]:获取序列第index个元素,index取值从0开始
- A[index1:index2]:切片操作,获取序列中index1到index2-1的子序列
- A in B:判断序列B是否有A,如果有返回True,否则返回False
- A not in B:判断序列B是否没有A,如果没有返回True,否则返回False
- A + B :将序列A和序列B合并并组成一个新的序列返回
- A * number :将序列A重复拼接number次并将拼接后新组成的序列返回
- A == B:序列A与序列B的值和长度都相等
序列比较cmp原理(A > B or A < B)
- 如果比较的元素是同类型的,则比较其值,返回结果。
- 如果两个元素不是同一种类型,则检查它们是否是数字。
- 如果是数字,执行必要的数字强制类型转换,然后比较。
- 如果有一方的元素是数字,则另一方的元素”大”(数字是”最小的”)
- 否则,通过类型名字的字母顺序进行比较。
- 如果有一个列表首先到达末尾,则另一个长一点的列表”大”。
- 如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0
String类型
String是由零个或者多个字符组成的有限序列,通常以串的整体作为操作对象,字符串以引号包含标识
## 字符串定义a = 'single' ## 单引号表示b = "double" ## 双引号表示c = """...spam...""" ## 三引号表示d = '''...spam...''' ## 三引号表示e = "s\tp\na\0m" ## 转义序列f = r"C:\new\test.spm" ## raw 字符串,即用r禁用转义字符bs = b'sp\x01am' ## 字节字符串us = u"中文" ## Unicode字符串
==如果字符串包含中文,应当声明为unicode字符串==
字符串格式化表达式
## 格式化表达式:"...%s..." % (values) Or "...%(keyname)s..." % {keyname:keyvalue}>>> "this is my %s" % ('name')'this is my name'>>> "this is my %(name)s" % {'name':'xiao'}'this is my xiao'## 格式化方法调用:"...{}...".format(values) Or "...{keyname1}...".format(keyname1=value1)>>> "my name is {}".format('xiaokunliu')'my name is xiaokunliu'>>> "this is my {firstname},and {lastname}".format(firstname="xiaokun",lastname="liu")'this is my xiaokun,and liu'
字符串格式化结构:%[(keyname)][flags][width][.precision]typecode
## keyname:字典对应索引的keyname>>> '%(name)s' % {'name':'xiaokun'}'xiaokun'## flags:格式化符号(-、+、space空格键<sp>、#、0、m.n)## -:左对齐;## +:对正数输出正值符号;## m.n:m是显示最小总宽度,n是小数点后的位数;## #:在8进制数前面显示0,16进制前面显示"0x"或者"0X"## 0:数字大小不足m.n的要求时用0补位;## <sp>:数字大小不足m.n的要求时用空格补位;x = 1.23456789>>> "%-6.2f,%+3.4f,%#2.3f,%06.9f,% 3.9f" % (x,x,x,x,x)'1.23 ,+1.2346,1.235,1.234567890, 1.234567890'## width:指定显示字符串的宽度>>> '%−6.2f' % x'1.23 ''## .precision:整数格式化为字符串的时候需要保留的小数位数>>> '%.3f' % x'1.235'## typecode:格式化符号%s String (or any object’sstr(X)string) %r Same ass, but usesrepr, not str %c Character (int or str)%d Decimal (base-10 integer)%i Integer%u Same asd(obsolete: no longer unsigned) %o Octal integer (base 8)%x Hex integer (base 16)%X Same asx, but with uppercase letters%e Floating point with exponent, lowercase %E Same ase, but uses uppercase letters%f Floating-point decimal%F Same asf, but uses uppercase letters%g Floating-point e or f%G Floating-point E or F%% Literal%(coded as%%)
Tuple类型
定义
- 用圆括号表示,在不同元素之间以逗号隔开
- Tuple大小以及其中的元素在初始化后不能修改
- Tuple比可修改的List操作速度快
- 用途;可以用于定义一组常量集并用于不断读取
简单示例
## 定义>>> tuple1 = ('you',283,93,'English',4,5.6)## 读取>>> tuple1[3]## 截取子元组>>> subTuple = tuple1[3:]## 可以对元组变量重新赋值,注意是元组变量不是元组对象>>> tuple1 = tuple1 + (2,3,'playing')## 获取长度>>> len(tuple1)## 不能修改>>> tuple1[2] = "update" ### 这里将发生错误Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: 'tuple' object does not support item assignment## 元素可重复>>> tuple1 = tuple1 * 2
List类型
定义
- 使用中括号表示,即[],不同元素之间以逗号隔开
- List大小和其中的元素在初始化后可以被再次修改
- 用途:对于定义的一组数据集,要求能够进行增删改查操作
简单示例
## 定义>>> color_list = ['green','red','pink','blue','black','white']## 读取元素>>> color_list[2]## 截取子列表>>> color_list[3:]## 修改指定序列的内容>>> color_list[2] = "update_pink"## 获取长度>>> len(color_list)## 元素遍历>>> for color in color_list:... print color...## 排序,排序后本身的color_list不变>>> sorted_color_list = sorted(color_list)## 求和>>> num_list = [3.4,5,6,3,5.7,12,27,32]>>> sum(num_list),'%i' % sum(num_list) '%.2f' % sum(num_list)## 以指定的方式排序 list.sort(fn = None,key = None,reverse = False)>>> num_list = [29,39,4,23,42,13,19,21]>>> num_list.sort() ## 改变list对象本身>>> sorted(num_list) ## 返回一个排序后的list对象,不改变num_list## 按照key值排序>>> key_list = [('name':3),('age':10),('num':23),('key':24)]>>> key_list.sort(key = lambda x:x[1])## 倒序排序>>> key_list.sort(reverse = True)## 正向排序>>> key_list.sort(reverse = False)
Set类型
类型定义
- 通过set定义普通集合
- 通过frozenset定义不可变集合
简单示例
## 初始化set_list = [2,39,9,3,4,5,28,34]>>> s1 = set(set_list){2, 3, 4, 5, 34, 39, 9, 28}>>> s2 = frozenset(set_list)frozenset({2, 3, 4, 5, 34, 39, 9, 28})## 判断包含关系>>> print 9 in s1## 判断子集关系>>> print s1 >= s2## 差运算>>> print s1 - s2## 交运算>>> print s1 & s2## 执行并运算并赋值给s1>>> print s1 |= s2## 对称差运算>>> print s1 ^ s2 ## 获取s1不在s2的元素以及s2不在s1的元素## 集合遍历>>> for ele in s1:... print(ele)
Dictionary类型
类型定义
- 即字典类型,代表一个键值存储库,类似于映射表
简单示例
## 字典定义>>> dc = {"name":"xiaokun","age":4,"title":"english name"}## 读取元素>>> print dc['name']## 直接通过下标增加字典字段>>> dc['new_name'] = 'new_value'## 合并字典>>> dc1 = {"name2":"xiaokun","age2":4,"title2":"english name"}>>> dc.update(dc1)
个人公众号:
阅读全文
0 0
- python核心基础纵览(上)
- python基础知识纵览(中)
- python基础知识纵览(下)
- <python核心编程> python基础
- Python核心编程----Python基础
- Python WEB应用框架纵览
- 《Python核心编程》笔记 基础
- Python核心基础:之一:基础环境搭建
- Python核心基础:之二:基础语法
- 《Python核心编程》第三章:Python基础
- 《Python核心编程》第三章:Python基础
- Python基础(上)
- 一些基础Python基础用法--采自《Python核心编程》
- Python核心基础:之三:封装
- Python 核心编程笔记 第三章 Python基础
- 《Python核心编程》第3章 Python基础 练习
- 2015-03-18-python核心编程(二)Python基础
- 《Python核心编程》第二版--第三章 Python基础
- 【行业】IBM协助采埃孚与瑞银,进一步扩大其区块链钱包计划
- 【国际】俄罗斯财政部长:禁止加密货币没有意义
- Ecology8配置文件:Resin日志按日期拆分
- Java虚拟机 对象的创建与OOP-Klass模型
- 获取年月日时分秒
- python核心基础纵览(上)
- 【观察】央行青睐区块链,这对投资者及比特币投机者有何启示
- 【观点】区块链:不可盲目乐观
- Linux下操作mysql数据库常用命令
- springmvc下载实现
- 2017年第21届中国郑州(中博)定制家居博览会会刊(参展商名录)
- Linux环境下合理配置大内存页(HugePage)
- opencart 后台产品上传之后,页面没有显示
- Java小程序之100-1000之间的合数