if/elseif/else for while break continue 多重循环
list []
duple()
dict {}
set {[]}

函数

help(abs) 查看abs函数的帮助信息
abs(x)
cmp(x, y) 比较函数,需要两个参数,如果 x<y,返回 -1,如果 x==y,返回 0,如果 x>y,返回 1
int() 函数可以把其他数据类型转换为整数
str() 函数把其他类型转换成 str
sqrt() 平方根
自定义函数
递归
Python之函数返回多值
Python之定义默认参数
Python之定义可变参数 : 可变参数的名字前面有个 * 号,我们可以传入0个、1个或多个参数给可变参数

======================================================

demo1:
set

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
for x in s:
print x[0]+':',x[1] Adam: 95
Lisa: 85
Bart: 59 s.add()
s.remove()

======================================================

demo2:
给List动态赋值
sum()函数接受一个list作为参数,并返回list所有元素之和。请计算 1*1 + 2*2 + 3*3 + ... + 100*100。

L = []
x = 1
while x <= 100:
L.append(x * x)
x = x + 1
print sum(L)

======================================================

demo3:
自定义函数
一元二次方程的定义是:ax² + bx + c = 0.请编写一个函数,返回一元二次方程的两个解。
注意:Python的math包提供了sqrt()函数用于计算平方根。

import math
def quadratic_equation(a, b, c):
  t = math.sqrt(b * b - 4 * a * c)
  return (-b + t) / (2 * a),( -b - t )/ (2 * a)
print quadratic_equation(2, 3, 0)
print quadratic_equation(1, -6, 5)

======================================================

demo4:
递归
我们对柱子编号为a, b, c,将所有圆盘从a移到c可以描述为:
如果a只有一个圆盘,可以直接移动到c;
如果a有N个圆盘,可以看成a有1个圆盘(底盘) + (N-1)个圆盘,首先需要把 (N-1) 个圆盘移动到 b,然后,将 a的最后一个圆盘移动到c,再将b的(N-1)个圆盘移动到c。
请编写一个函数,给定输入 n, a, b, c,打印出移动的步骤:
move(n, a, b, c)
例如,输入 move(2, 'A', 'B', 'C'),打印出:
A --> B
A --> C
B --> C

def move(n, a, b, c):
  if n ==1:
    print a, '-->', c
    return
  move(n-1, a, c, b)
  print a, '-->', c
  move(n-1, b, a, c)
move(4, 'A', 'B', 'C')

======================================================

demo5:
默认参数
函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面。
请定义一个 greet() 函数,它包含一个默认参数,如果没有传入,打印 'Hello, world.',如果传入,打印 'Hello, xxx.'

def greet(name='world'):
  print 'Hello, ' + name + '.'
greet()
greet('Bart')

======================================================

demo6:
可变参数:
args 是一个tuple,当0个参数传入时,args是一个空tuple。
请编写接受可变参数的 average() 函数。

def average(*args):
  sum = 0.0
  if len(args) == 0:
    return sum
  for x in args:
    sum = sum + x
  return sum / len(args)
print average()
print average(1, 2)
print average(1, 2, 2, 3, 4)

Python入门_汇总_未完待续的更多相关文章

  1. Python模块:Random(未完待续)

    本文基于Python 3.6.5的官文random编写. random模块简介 random为各种数学分布算法(distributions)实现了伪随机数生成器. 对于整数,是从一个范围中均匀选择(u ...

  2. MongoDB3.2.22快速入门与使用【未完待续】

    1.CentOS的安装和mongodb,UVE的使用 1.1.CentOS7安装 虚拟机CentOS7安装步骤:https://www.cnblogs.com/wyt007/p/10295834.ht ...

  3. ASP.NET MVC 系列随笔汇总[未完待续……]

    ASP.NET MVC 系列随笔汇总[未完待续……] 为了方便大家浏览所以整理一下,有的系列篇幅中不是很全面以后会慢慢的补全的. 学前篇之: ASP.NET MVC学前篇之扩展方法.链式编程 ASP. ...

  4. [python]爬代理ip v2.0(未完待续)

    爬代理ip 所有的代码都放到了我的github上面, HTTP代理常识 HTTP代理按匿名度可分为透明代理.匿名代理和高度匿名代理. 特别感谢:勤奋的小孩 在评论中指出我文章中的错误. REMOTE_ ...

  5. 从Socket入门到BIO,PIO,NIO,multiplexing,AIO(未完待续)

    Socket入门 最简单的Server端读取Client端内容的demo public class Server { public static void main(String [] args) t ...

  6. GitHub 入门不完全指南(未完待续)

    我一直认为 GitHub 是一座宝藏,想让更多人的知道它.加入到这个社区中.本人能力有限,如果文中出现不对的地方,欢迎指正交流. 一.前言 大家好,我是削微寒(xuē wēi hán),一个走在进阶路 ...

  7. Go web编程学习笔记——未完待续

    1. 1).GOPATH设置 先设置自己的GOPATH,可以在本机中运行$PATH进行查看: userdeMacBook-Pro:~ user$ $GOPATH -bash: /Users/user/ ...

  8. IOS之KVC和KVO(未完待续)

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  9. odoo11 model+Recordset 基础未完待续

    Model 一个模型代表了一个业务对象 本质上是一个类,包含了同django flask一样的数据字段 所有定义在模型中的方法都可以被模型本身的直接调用 现在编程范式有所改变,不应该直接访问模型,而是 ...

  10. Day4-内置函数--未完待续,慢慢写

    内置函数:https://docs.python.org/3/library/functions.html?highlight=built#ascii 未完待续....

随机推荐

  1. 分享知识-快乐自己:JAVA中的 Iterator 和 Iterable 区别

    java.lang.Iterable  java.util.Iterator  Iterator是迭代器类,而Iterable是接口. 好多类都实现了Iterable接口,这样对象就可以调用itera ...

  2. 使用谷歌浏览器进行Web开发技巧

    1.为了避免缓存影响开发,使用使用那个“Ctrl+Shift+N”进入浏览器的隐身模式

  3. DenseNet算法详解——思路就是highway,DneseNet在训练时十分消耗内存

    论文笔记:Densely Connected Convolutional Networks(DenseNet模型详解) 2017年09月28日 11:58:49 阅读数:1814 [ 转载自http: ...

  4. String类中的equals是如何重写的

    我们知道String中的equals方法是被重写过的,因为object的equals方法是比较的对象的内存地址,而String的equals方法比较的是对象的值. 首先几个知识点: 基本数据类型==比 ...

  5. java中相对路径加载xml

    一.xml文件一般的存放位置有三个: 1.放在WEB-INF下: 2.xml文件放在/WEB-INF/classes目录下或classpath的jar包中: 3.放在与解析它的java类同一个包中,不 ...

  6. plsql developer点滴

    PLSql中查看编译错误的具体内容: 1. 打开Command Windows show errors procedure procedure_name 

  7. bzoj 4592(洛谷 4344) [Shoi2015]脑洞治疗仪——线段树上二分

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4592 1操作就是用线段树来二分找到第一个有 k 个0的位置. 在洛谷上A了,与暴力和网上题解 ...

  8. bzoj 2259 [Oibh] 新型计算机 —— 最短路

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2259 相邻点之间连边权为1的边,就是水最短路了: 要注意点上的数不能改成负数,但是想一想改成 ...

  9. JavaScript高级程序设计学习笔记第十一章--DOM扩展

    1.对 DOM 的两个主要的扩展是 Selectors API(选择符 API)和 HTML5 2.Selectors API Level 1 的核心是两个方法: querySelector()和 q ...

  10. CF-816B

    B. Karen and Coffee time limit per test 2.5 seconds memory limit per test 512 megabytes input standa ...