Python学习心得——基础知识(五)

三元运算

1、书写格式

s=值1 if 条件 else 值2

说明:如果条件1成立,‘值1’赋值给变量s,若条件1不成立,‘值2’赋值给变量s

如下图所示:

 

基本数据类型——set

1、定义

set集合,是无序、不重复的元素集合

2、书写格式

s={1,2,3,4,5}

3、一些常用方法

add——添加元素

 

difference——找s中存在,e中不存在的集合,并将其赋值给新变量

 

difference_update——找s中存在,e中不存在的集合,并更新自己

 

discard——移除指定元素,若指定元素不存在,不会报错。但用remove移除不存在的元素会报错

 

intersection——找s与e的交集,并将其赋值给新变量

 

intersection_update——找s与e的交集,并将其更新到s中

 

isdisjoint——如何没有交集,返回True,否则返回False

 

symmetric_difference——找s中存在且e中不存在,e中存在且s中不存在的对称差集,并将其赋值给新变量

 

symmetric_difference_update——找s中存在且e中不存在,e中存在且s中不存在的对称差集,并更新到s中

 

update——更新

 

深浅拷贝

一、数字与字符串

定义:对于数字和字符串,赋值、浅拷贝、深拷贝,都是指向同一个内存地址

用图表示如下

 

二、其它基本数据类型

1、赋值

定义:创建一个变量,该变量指向原来的地址

用图表示如下

 

2、浅拷贝

定义:只在内存中额外创建第一层数据

用图表示如下

 

3、深拷贝

定义:在内存中将所有的数据重新创建一份(不包括最后一层,即:python内部对字符串和数字的优化)

用图表示如下

 

 

函数

个人理解:就是把一些可重复使用的功能代码封装起来,方便以后直接调用此函数来使用封装的功能。

1、定义函数

def  函数名(参数):

      功能代码

      返回值

样例:

1 def f1(name):
2      if name=='haoyun':
3         print(True)
4      else:
5         print(False)
6 
7 f1('haoyun')

 

2、参数

普通参数

 

def f1(name):
     a=name
     return(a)
print(f1('haoyun'))
    

 

默认参数

1 def f1(name,age=19):
2     print('name:%s age:%d'%(name,age))
3 
4 f1('haoyun2016')

 

动态参数

 

1 def f1(*args):
2     print(args)
3 
4 a=[1,2,3,4,5,6]
5 
6 f1(*a)

 

1 def f1(**kwargs):
2     print(kwargs)
3 
4 a={'name':'haoyun2016','age':19,'job':'BOSS'}
5 
6 f1(**a)

 

1 def f1(*args,**kwargs):
2     print(args)
3     print(kwargs)
4 a={'name':'haoyun2016','age':19,'job':'BOSS'}
5 b=[1,2,3,4,5,6,7,8]
6 f1(*b,**a)

 

扩展:发送邮件实例(引用老师博客:http://www.cnblogs.com/wupeiqi/articles/5453708.html)

 1 import smtplib
 2 from email.mime.text import MIMEText
 3 from email.utils import formataddr
 4   
 5   
 6 msg = MIMEText('邮件内容', 'plain', 'utf-8')
 7 msg['From'] = formataddr(["XXXX",'邮件发送者@126.com'])
 8 msg['To'] = formataddr(["邮件内容",'发送邮件对象@qq.com'])
 9 msg['Subject'] = "主题"
10   
11 server = smtplib.SMTP("smtp.126.com", 25)
12 server.login("邮件发送者@126.com", "邮箱密码")
13 server.sendmail('邮件发送者@126.com', ['发送邮件对象@qq.com',], msg.as_string())
14 server.quit()

 

全局变量

1 #全局变量
2 NAME='haoyun2016'
3 def f1():
4     name='BOSS'  #局部变量
5     print(name)
6     print(NAME)
7 f1()

 

 1 #全局变量
 2 NAME='haoyun2016'
 3 def f1():
 4     name='BOSS'  #局部变量
 5     global NAME  #修改全局变量
 6     NAME='BOSS is haoyun2016'
 7     print(name)
 8     print(NAME)
 9 f1()
10 print(NAME)

 

posted @ 2016-05-27 11:14  好运到来  阅读(219)  评论(0编辑  收藏  举报