Python day2 总结
2017-12-04 17:21
375 查看
字典/集合 解析
my_dict = { i : i * i for i in xrange(100)}
my_set = { i * 15 for i in xrange(100)}
强制浮点除法
from -future- import division
result = 1/2
print(result)
eval函数在python中做数据类型的转换还是很有用的。它的作用就是把数据还原成它本身或者是能够转化成的数据类型。
eval
功能:将字符串str当成有效的表达式来求值并返回计算结果。
语法: eval(source[, globals[, locals]]) -> value
参数:
source:一个Python表达式或函数compile()返回的代码对象
globals:可选。必须是dictionary
locals:可选。任意map对象
实例展示:
1 可以把list,tuple,dict和string相互转化。
2 #################################################
3 字符串转换成列表
4 >>>a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"
5 >>>type(a)
6 <type 'str'>
7 >>> b = eval(a)
8 >>> print b
9 [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
10 >>> type(b)
11 <type 'list'>
12 #################################################
13 字符串转换成字典
14 >>> a = "{1: 'a', 2: 'b'}"
15 >>> type(a)
16 <type 'str'>
17 >>> b = eval(a)
18 >>> print b
19 {1: 'a', 2: 'b'}
20 >>> type(b)
21 <type 'dict'>
22 #################################################
23 字符串转换成元组
24 >>> a = "([1,2], [3,4], [5,6], [7,8], (9,0))"
25 >>> type(a)
26 <type 'str'>
27 >>> b = eval(a)
28 >>> print b
29 ([1, 2], [3, 4], [5, 6], [7, 8], (9, 0))
30 >>> type(b)
31 <type 'tuple'>
对Python表达式求值
literal_eval()
import ast
my_list = ast.literal_eval(expr)
eval在做计算前并不知道需要转化的内容是不是合法的(安全的)python数据类型。只是在调用函数的时候去计算。如果被计算的内容不是合法的python类型就会抛出异常。
ast.literal则会判断需要计算的内容计算后是不是合法的python类型,如果是则进行运算,否则就不进行运算。
字符串/序列 快速逆序排列
>>> a = [1,2,3,4]
>>> b = a[::-1]
>>>print(b)
返回原来的a可以用a.reverse()
三元运算
[on_True] if [expression] else [on_False]
x,y = 16,20
small = x if x < y else y
python里拷贝对象
python提供两种方法
1.copy(paramter) 返回和参数内容一样的对象
import copy
new_list = copy.copy(exsiting_list)
2.deepcopy(paramter) 对象的属性也被复制
new_list_of_dicts = copy.deepcopy(exsiting_list_of_dicts)
python中如何判断对象是否相等
对象主要包含三个要素 :id,type,value
id:用来标识唯一一个对象,type:标识对象的类型,value:设置对象的值
is 判断是否是一个对象,通过id来判断的
== 判断a对象的值是否是b对象的值,默认调用它们的__eq__方法
python函数命名技巧
def function(_parameter)
在局部变量前加下划线标识,全局变量前加g
my_dict = { i : i * i for i in xrange(100)}
my_set = { i * 15 for i in xrange(100)}
强制浮点除法
from -future- import division
result = 1/2
print(result)
eval函数在python中做数据类型的转换还是很有用的。它的作用就是把数据还原成它本身或者是能够转化成的数据类型。
eval
功能:将字符串str当成有效的表达式来求值并返回计算结果。
语法: eval(source[, globals[, locals]]) -> value
参数:
source:一个Python表达式或函数compile()返回的代码对象
globals:可选。必须是dictionary
locals:可选。任意map对象
实例展示:
1 可以把list,tuple,dict和string相互转化。
2 #################################################
3 字符串转换成列表
4 >>>a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"
5 >>>type(a)
6 <type 'str'>
7 >>> b = eval(a)
8 >>> print b
9 [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
10 >>> type(b)
11 <type 'list'>
12 #################################################
13 字符串转换成字典
14 >>> a = "{1: 'a', 2: 'b'}"
15 >>> type(a)
16 <type 'str'>
17 >>> b = eval(a)
18 >>> print b
19 {1: 'a', 2: 'b'}
20 >>> type(b)
21 <type 'dict'>
22 #################################################
23 字符串转换成元组
24 >>> a = "([1,2], [3,4], [5,6], [7,8], (9,0))"
25 >>> type(a)
26 <type 'str'>
27 >>> b = eval(a)
28 >>> print b
29 ([1, 2], [3, 4], [5, 6], [7, 8], (9, 0))
30 >>> type(b)
31 <type 'tuple'>
对Python表达式求值
literal_eval()
import ast
my_list = ast.literal_eval(expr)
eval在做计算前并不知道需要转化的内容是不是合法的(安全的)python数据类型。只是在调用函数的时候去计算。如果被计算的内容不是合法的python类型就会抛出异常。
ast.literal则会判断需要计算的内容计算后是不是合法的python类型,如果是则进行运算,否则就不进行运算。
字符串/序列 快速逆序排列
>>> a = [1,2,3,4]
>>> b = a[::-1]
>>>print(b)
返回原来的a可以用a.reverse()
三元运算
[on_True] if [expression] else [on_False]
x,y = 16,20
small = x if x < y else y
python里拷贝对象
python提供两种方法
1.copy(paramter) 返回和参数内容一样的对象
import copy
new_list = copy.copy(exsiting_list)
2.deepcopy(paramter) 对象的属性也被复制
new_list_of_dicts = copy.deepcopy(exsiting_list_of_dicts)
python中如何判断对象是否相等
对象主要包含三个要素 :id,type,value
id:用来标识唯一一个对象,type:标识对象的类型,value:设置对象的值
is 判断是否是一个对象,通过id来判断的
== 判断a对象的值是否是b对象的值,默认调用它们的__eq__方法
python函数命名技巧
def function(_parameter)
在局部变量前加下划线标识,全局变量前加g
相关文章推荐
- Python学习day2作业总结
- Python学习day2作业总结
- python 处理中文遇到的编码问题总结 以及 字符str的编码如何判断
- 正则表达式总结 re (python演示)
- python2.0 s12 day2
- python总结20 高级查询、事务、视图
- python学习总结----遇到的常见问题
- python基础day2作业:购物车
- python下的随机函数总结
- python核心高级学习总结4-------python实现进程通信
- Python中的os.path路径模块中的操作方法总结
- Python 编程中常用的12种基础知识总结
- python中数据类型操作对比总结
- python技巧总结--持续更新
- Python的第二周学习总结
- python的编码问题总结
- Python廖雪峰实战web开发(Day2-编写Web APP骨架)
- Atitit. 注册表操作查询 修改 api与工具总结 java c# php js python 病毒木马的原理
- Python学习第十二天——第二周总结
- Python之requests编写爬虫的总结