python自动化--语言基础三字典、函数、全局/局部变量
字典
dict1 = {'name':'han','age':,'class':'first'}
print(dict1.keys()) #打印所有的key值
print(dict1.values()) #打印所有的values值
print("dict1['name']:",dict1['name']) #打印name相对应的value值
print(dict1.get('name')) #通过字典的get方法得到name相对应的value值 dict1['age']= #字典的修改相当于重新赋值!!! dict1['address']='beijing' #字典的增加是:dict[key] = value 这样的形式 del dict1['name'] #删除字典中的一个元素
dict1.clear() #字典的清空,返回一个空字典
# del dict1 #删除字典,字典就完全删除了
字典的要点注意:
1、键是不允许相同的,如果相同,后面的会覆盖前面的
2、键是不可变的,所以只能用数字、字符串、元组来担当
dict2 = {(,):,"元组":(,)} #字典里的元素只能用不可变的数据类型!!!
print(dict2)
print(dict2['元组'])
print(dict2[(,)]) for i in dict2.keys(): #取出的数值更干净!!!谨记老师教导
print("字典中的key值为:",i)
for j in dict2.values():
print("字典中的values值为:",j)
函数
1、函数的定义
函数是实现特定功能而封装起来的一组语句块,可以被用户调用
2、函数的分类
自定义函数;预定义函数(系统自带,lib自带)
3、使用函数的好处
降低编程难度、将大问题分解为若干小问题、可以多次调用
4、函数语法
定义
def 函数名字(参数):
函数体
return 语句 #不带表达式的return相当于返回none
调用
函数名字
以下是函数的几种:
#定义函数,函数名最好以_分割
def print_str(str):
print(str)
return
# 调用函数
print_str("调用一下")
# 函数传递
#所有参数在python里都是按引用传递
#一句话:要变都变!!!
def charge_me(mylist):
mylist.append([,,,])
print("函数内取值:",mylist)
return
mylist = [,,]
charge_me(mylist)
print("函数外取值:",mylist) #函数外和函数内打印是相同的!!!
#函数的赋值引用
def print_info(name,age=):
print("name",name)
print("age",age)
return
# print_info(name="xiao",age=)
print_info(age=,name="xiao") #python中颠倒是可以的!!!
print_info(name='haha')
#函数的不定长参数
def p_info(arg1,*vartuple):
print("输出:",arg1)
for var in vartuple:
print(var)
return
p_info()
p_info(,,,,)
#匿名函数lambda,了解即可
# 、lambda只是一个表达式,而不是一个代码块,函数体比def简单很多。仅仅能在lambda表达式中封装有限的逻辑
# 、lambda[arg1[,arg2,...argn]]:expression
sum1 = lambda arg1,arg2:arg1+arg2
print("相加后的值为:",sum1(,))
# return语句
def sum2(arg1,arg2):
total = arg1+arg2
print("函数内:",total)
return total #把total去掉之后返回none
abc = sum2(,)
print("函数外:",abc)
#全局变量和局部变量
#全局变量比较容易出问题,能不用就不用。
total =
def sum3(a,b):
total = a+b
print("函数内(局部变量)的值为:",total)
return total
# total = sum3(,)
sum3(,)
print("函数外(全局变量)的值为:",total)
count =
def do_st():
global count #全局变量:global
for i in (,,): #循环三次
count +=
# print(count)
do_st()
print(count)
# 思路:当count=1时进入循环+1并赋值给count
# 在for循环三次后为3+=
# count是全局变量,最后打印出的结果为4
小练习
# 不能创建字典的语句是C (字典中的元素不能以列表作为key)
# A、dict1 = {}
# B、dict2 = { 3 : 5 }
# C、dict3 = {[1,2,3]: “uestc”}
# D、dict4 = {(1,2,3): “uestc”}
#以下代码输出什么?输出的是6
# 思路:原始key的值为1,
# copy给另一个字典值为1,
# 重新赋值原来的字典值为5,
# 所以相加等于6
dict1={'1':1,'2':2}
theCopy=dict1.copy()
dict1['1']=5
sum=dict1['1']+theCopy['1']
print(sum)
# 合并生成新的字典
dict1 = {3:"c", 4:"d"}
dict2 = {1:"a", 2:"b"}
dict2.update(dict1) #更新添加dict1进dict2
print(dict2)
# 标准日期输出
a = "20170303"
b = a[:4]
c = a[4:6] #构思:通过列表分割的方式实现
d = a[6:]
print("格式化后输出的日期是:%s年%s月%s日"%(b,c,d))
无return函数,返回什么?
答:在函数中无return函数,返回none
如何在一个function里面设置一个全局的变量?
答:在函数体内定义一个全局的函数global
最新文章
- knockout学习笔记目录
- 使用Visual Studio 2015 Community 开发windows服务
- 用Jedis连接Redis
- C语言基本点初探
- Mac环境下 配置Python数据分析环境
- Winform——计算器
- Codeforces Gym 100425A Luggage Distribution 二分 数学
- Dao 处理
- Hadoop集群启动之后,datanode节点未正常启动的问题
- sqlserver 2000新建sysadmin角色
- java项目使用memcache实现session共享+session基础
- 在azure中建立DDC集群
- AES加密然后ajax传输数据
- JAVA日常之一
- 20155306 2016-2017-2 《Java程序设计》第九周学习总结
- luogu1387 最大正方形
- Spring @ControllerAdvice @ExceptionHandler 全局处理异常
- Codeforces Round #505 (Div 1 + Div 2) (A~D)
- 机房servlet过滤器
- android studio - 解决Android Studio不停的Indexing的问题
热门文章
- Android GIS开发系列-- 入门季(11) Callout气泡的显示
- hdu 1565 方格取数(1)(状态压缩dp)
- 告诉大家我是如何在14:00秒杀到 《深入理解Bootstrap》
- [办公应用]如何打印较小边距的PPT讲义(或者每页打印16页)
- 【C++&;爬虫】C++实现网络爬虫&;socket初级教程
- http使用代理
- 7-81 js课程小结
- Bing必应地图中国API-显示兴趣点 (转)
- 动态更改Menu
- python-----利用filecmp删除重复文件