1.集合

2.元组 只读列表,只有count,index2个方法

3.字典
key-value对
1.特性
2.查询速度快,比列表快
python中的hash在同一程序下值相同
python字典中的hash只有key是hash的 hash之后二分查找,劈半劈半 注:只有unicode有encode方法 函数:
 #
def qq():
print("nihao!!!")
qq()
print(qq()) #传参数
def aa(name):
print("woshi,%s"%name)
aa('hsc') #传两个参数
def aa(name,age,sex='F'):
#非默认参数必须放到非默认参数前面
#位置参数,非默认参数,name,age
#默认参数 sex ...
print("woshi,%s,%s"%(name,age))
aa('hsc',22)
#指定参数赋值,叫做关键字参数 #非固定参数
#*args 为了潜在的扩展需求
#**kwargs
#指名字为字典,不指为元组
返回值
1.一旦你的函数经过调用并开始执行,那么你的函数外部的程序,就没有办法再控制函数执行的过程了
此时外部程序只能安静的等待函数的执行结果,为啥要等待函数结果,因为外部程序要根据函数的执行
结果来决定下一步怎么走,这个执行结果就是以return的形式返回给外部程序
2.return 代表着一个函数的结束
3.return 可以返回任意数据类型
4.对于用户角度,函数可以返回任意数量的值,但对于py本身来讲,函数只能返回一个值
 def auth():
username = input('user:').strip()
password = input('passwd:').strip()
#get data from db
_username = 'hsc'
_password = 'qwer'
if username == _username and password == _password:
print('psssed ')
return True
else:
return False def home():
if login_status == True:
print('welcome')
else:
auth()
def pay():
if login_status == True:
print('welcome')
else:
auth() login_status = auth() home()
pay()

局部变量
 login_status = False#全局变量

 def auth():
username = input('user:').strip()
password = input('passwd:').strip()
#get data from db
_username = 'hsc'
_password = 'qwer'
if username == _username and password == _password:
print('psssed ')
#修改全局变量
global login_status #利用global修改全局变量
login_status = True
#局部变量,只在当前函数内生效
# 这个login_status与上面的全局变量是完全不同的两个变量
#占用不同的内存空间
def home():
if login_status == True:
print('welcome')
else:
auth()
print('welcome')
def pay():
if login_status == True:
print('welcome')
else:
auth() auth()
print(login_status)
######嵌套
 name = 'alex'

 def changeName():
name = 'jack'
print(name) def changeName2():
name = 'rain'
print('name2',name)
changeName2()
changeName()

递归
 # def calc(n):
# print(n)
# if n//2 > 0:
# calc(n//2)
# calc(10) #不对
# def calc(n):
# # print(n)
# if int(n/2) > 0:
# return calc(int(n/2))
# return n
# # print(n)
#
# calc(10) # def func(n):
# print('------',n+1)
# func(n+1)
#
# func(0)

高阶函数

 # calc2 = lambda x:x*x
# def calc(n):
# return -n
#
# a=6
# calc(a) def add(x,y,f):
return f(x) + f(y) def calc(n):
return n+1 res = add(3,-6,calc)
#abs 求绝对值
print(res)
#########编程范式

1.面向过程
函数 2.面向对象 3.函数式编程 内置函数
 abs()#求绝对值
all()#判断列表内参数是否全为真
any()#列表任意一个值为真,返回真
ascii()#以ascii表的形式显示内容
print(ascii('地方'.encode()))
bin()#把数字转换为二进制
print(bin(10))
bool()#判断是否为真true false
bytes#显示参数在ascii表中的位置数字,0-255之间的数字,ascii表
bytearray()#修改字符串中的一个值
callable()#判断一个对象是否可以调用
chr()#把数字转换为在ascii表中对应的字符
ord()#把字符转换为在ascii表中对应的数字
compile()###
f=open('返回值.py',encoding='utf-8')
code = compile(f.read(),'','exec')
print(code)
exec(code)###
eval()#数字运算
exec()#运行代码
complex#返回复数
dir()#返回文件(列表。。。。)可用的方法
divmod()#返回商和余数
divmod(10,2)
enumerate#格式化输出
filter()#后面值满足才会留下来
for i in filter(lambda x:x>5,range(10)):
print(i)
float#浮点型
format()
frozenset#
a = frozenset({1,4,4,5,5,6})
b = {1,4,5,5,6}
print(a)
globals()#把当前程序所在内存里的所有数据都以字典型形式打印出来
locals()#打印局部
hex()#求十六进制
#0x---》十六进制的表示,例:0x8
list()#转换为列表
max()#求最大
min()#求最小
oct()#八进制
#0o---》十六进制的表示,例:0o8
pow(4,9)#幂 #分隔符
msg = "又回到最初的起点"
f = open("tofile","w")
print(msg,"记忆中你青涩的脸",sep="|",end="",file=f) reversed#反转
data = [3,4,5,6,7,8]
data = reversed(data)
for i in data:print(i) round()#四舍五入,五舍六入 set#列表变集合 slice#切片
a = range(20)
pattern = slice(3,8,2)
for i in a[pattern]:#等于a[3:8:2]
print(i) sorted()#将字符串按ascii表排序
a = 'hsc'
a = sorted(a)
print(a) sum#列表求和 tuple#转换为元组 vars()#把当前程序所在内存里的所有数据都以字典型形式打印出来 zip#拉链,合并
a = [1,3,5,7]
b = [2,4,6,8]
for i in zip[a,b]:
print(i)

Python之路,day4-Python基础的更多相关文章

  1. Python之路,Day4 - Python基础4 (new版)

    Python之路,Day4 - Python基础4 (new版)   本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...

  2. Python之路,Day4 - Python基础(转载Alex)

    本节大纲 迭代器&生成器 装饰器  基本装饰器 多参数装饰器 递归 算法基础:二分查找.二维数组转换 正则表达式 常用模块学习 作业:计算器开发 实现加减乘除及拓号优先级解析 用户输入 1 - ...

  3. Python之路,Day4 - Python基础4

    一.函数 (一)背景提要 现在老板让你写一个监控程序,监控服务器的系统状况,当cpu\memory\disk等指标的使用量超过阀值时即发邮件报警,你掏空了所有的知识量,写出了以下代码 1 2 3 4 ...

  4. Python之路 - Day4 - Python基础4 (新版)

    本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器&生成器 列表生成式 孩子,我现在有个需 ...

  5. Python之路,Day1 - Python基础1

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  6. Python之路,Day1 - Python基础1(转载Alex)

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  7. Python之路,Day1 - Python基础1 --转自金角大王

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  8. Python之路,Day1 - Python基础1 介绍、基本语法、流程控制

    本节内容 1.python介绍 2.发展史 3.python 2.x or python 3.x ? 4.python 安装 5.第一个程序 Hello World 程序 6.变量 7.用户输入 8. ...

  9. Python之路:Python简介

    Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间他为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承 ...

  10. Python之路:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy

    Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...

随机推荐

  1. java异常架构图 和几个面试题

    1.java异常架构图 粉红色的是受检查的异常(checked exceptions),其必须被 try{}catch语句块所捕获,或者在方法签名里通过throws子句声明.受检查的异常必须在编译时被 ...

  2. DOM扩展之 专有扩展

    11.4.3 contains() 方法 用来确定某个节点是不是另一个节点的后代. 注:a.contains(a) 也是返回true.说明contains方法搜索是从自身开始的. DOM Level ...

  3. iOS学习之单例模式

    单例模式(Singleton) 概念:整个应用或系统只能有该类的一个实例 在iOS开发我们经常碰到只需要某类一个实例的情况,最常见的莫过于对硬件参数的访问类,比如UIAccelerometer.这个类 ...

  4. 4 多表代替密码之Hill 密码 2实现

    该解密方法的KEY 不是一个数或者一段字符串,而是一个矩阵, 比如有个3*3的KEY: 那么如果我们要加密一个长度为N的字符串, 那么把N除以3,分成M个3个字母组成的小段, 对每个小段尽心加密: 1 ...

  5. fatal error: Call to undefined function mysqli_connect()

    在搭建PHP5.6+APACHE2.4+MYSQL5的平台时,测试是否成功连接mysql, 测试程序index.php <?php phpinfo() ?> 没有出现mysql的信息 所以 ...

  6. centos7下安装nodejs

    http://www.runoob.com/nodejs/nodejs-install-setup.html这个教程中注明 注意:Linux上安装Node.js需要安装Python 2.6 或 2.7 ...

  7. linux命令:chmod

    1.命令介绍: chmod用来改变系统文件或目录的相关权限,可读,可写,可执行等. 2.命令格式: chmod [选项] 模式 文件 3.命令参数: 必要参数:-c 当发生改变时,报告处理信息-f 错 ...

  8. 使用递归方法遍历TreeView的节点如配置则勾选

    自己在网上找了一段时间都没有找到取自数据库的值与TreeView中的节点值进行对比如匹配则勾选中CheckBox的资料,后面自己写了一个递归方法实现,现在记录起来以备需要时使用.在没写这递归方法前如果 ...

  9. 在同台电脑上再次安装MySql需要注意的事项

    今天安装了一下mysql,出现的问题主要是在最后一步: msyql 安装到最后一步 start service 错误解决方法 1, 到控制面板里面先把 mysql 删除 . 2. 到 c 盘 C:\P ...

  10. 如何用github快速搭建个人博客

    当当当当-来看下新鲜出炉的Github博客 http://wli12.github.io/ 喜欢写markdown,但cnblogs对md文件的渲染简直丑爆了... 好奇怎么用github+Jekyl ...