Python基础
环境
Anaconda安装、Jupiter Notebook
关键字、函数、
ipython语法如:print?, help(print)
单行注释#,
多行注释””””””(实质是多行字符串),功能:1) 函数doc,2)输出代码自身
%time执行单次计时
%timeit重复执行代码段来计时 - 不适用于代码中有随机数,适用于需要精确计时的情况,以防系统延迟等差错
变量
字符串不可变,1)所以a = “abc”; b=a; 后若a = “bca”,则b还是”abc”(因为”abc”不可变,b指向了”abc”这个字符串的内存地址,所以b仍然为”abc”) 2)另一个意义在于,若作为形参,他所指向的“abc”不会被改变
而list等是可变的,所以a = []; b=a; 后若a.append(“test”), 则b变为[“test”](因为列表可变,b指向了列表的内存地址,所以b变为[“test”]
Int无限大,浮点数科学计数法会丢失精度
字符串的运算,如索引和切片:字符串当成序列,索引有负数,步长和方向 word[s:e:n] s-start, e-end, n为方向和步长
字符串的操作:replace, join …
列表的切片返回列表, ==表示相等,is表示内存地址相同
a.extend(b) 不返回a,只是对a做修改(性能开销小)
Append和pop不改变索引,性能开销小
元组不可变(需保证元组的子元素也要不可变),单个元组带逗号, 作用:视图或某个列表的拷贝
集合运算,无序,集合中元素不可变
字典(hashmap)
控制流
For each:
Else: —— 绑定着循环,在循环满足条件为false时执行
For 循环他的word[:] 浅复制则可实现迭代过程中删除基本元素,但还是不推荐在迭代时修改序列
Pass - pass空循环
函数
通过””””””来添加docString,然后通过fun?来查看此doc(限制输入输出等信息)
局部命名空间 - 函数内部局部变量指向新的对象,不影响外部变量的命名空间(命名空间只在函数和类中生效)
位置参数(必须参数),关键字参数
默认参数 - 1)默认值只可被赋值一次,所以若默认值是可变对象,那多次调用函数,就会引发问题;2)默认参数要放在最后
变量作用域 - 函数内部可以修改全局变量的值(用global),但不建议修改全局变量
lambda函数(匿名函数)
高级函数
*取某个对象里每个元素出来
[*filter ], [*map ]
列表推倒式,三元表达式
惰性 - 在强制显示时,或使用时才会进行计算(节省性能)
Generator - 可以指向一个函数的运算,不进行真正计算,在用到时才会运算。
模块
import只会导入一次,要再次导入则用reload
包的概念
异常
Try except else finally
预定义清理行为
文件
字符编码,chardet(只对纯文本文件有效),’rb’模式
json模块
日期
日期解析和格式化
读取数据库
正则表达式
字符类[a,b,d]
贪婪与懒惰 - 补上问号,表示懒惰,只要能满足,则尽可能少
练习题
1)蒙特卡洛方法计算π的值
训练内容: 循环, 分支结构
问题描述: 通过蒙特卡洛方法模拟计算π的值是多少
Tips:
蒙特卡洛方法(英语:Monte Carlo method),也称统计模拟方法,是1940年代中期由于科学技术的发展和电子计算机的发明,而提出的一种以概率统计理论为指导的数值计算方法。 是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。
2) 查找Armstrong数
Armstrong数 指的是 一个 N 位数,所有位上的数的 N 次方 的总和 等于这个数。 ?≥2N≥2
In [11]:
3) 奖金计算
企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
- 点赞
- 收藏
- 分享
- 文章举报
- python random模块 分类: python python Module python基础学习 2013-06-26 12:06 383人阅读 评论(0) 收藏
- PHP老手谈PHP和Python的基础特性
- Python基础—03-运算符与分支结构
- Python基础—面向对象(进阶篇)
- python基础笔记
- [第一节]python基础知识
- Python网络编程00----网络基础
- python基础(_day01)
- (Python基础)and 和 &的区别
- Python 基础知识
- python基础之类的特性(property)
- python基础
- Python 基础语法
- Python基础教程代码与注释P55 4.1 字典的使用 4.2.1 dict函数 4.2.3 字典的格式化字符串 4.2.3 字典的格式化字符串
- [Python笔记][第一章Python基础]
- Python基础学习(四)
- python基础学习1
- Python数据分析实战基础 | 清洗常用4板斧
- Python菜鸟之路:Python基础——函数
- Python 基础-数值