Python模块和函数--基础

2021-06-18 18:08:55 浏览数 (1)

  1. #导入模块
  2. import xxx #调用 xxx.dd()
  3. from xxx import xx  as dd #导入某个函数,as给函数加别名,调用xx()
  4. #包
  5. mkdir sources
  6. touch sources/xx.py
  7. touch sources/init.py #可以是空的
  8. from sources import xx
  9. xx.get_name('cc')
  10. from collections import defaultdict
  11. periodic_table = defaultdict(int)
  12. periodic_table['Lead'] #默认给所有键赋值0
  13. def no_idea():
  14. return 'Huh?'
  15. bestiary = defaultdict(no_idea) #传递的是函数
  16. bestiary = defaultdict(lambda: 'Huh?') #lambda也可以默认值
  17. #标准函数
  18. def hello():
  19. print("dasd")
  20. user_name(a='xx',b='dd') #位置参数和关键字参数、
  21. def user_name(a,b='xx') #默认值
  22. global a #将a转换为全局变量
  23.     a = 'xx' #赋值
  24. return xx #返回值,可以是变量等
  25. name = user_name('xx','dd') #字符串拼接
  26. def user_name(*a) #a将为一个空元组,可以存储任意多个实参
  27. def user_name(b,c,*a) #填充前2个,再全部填充到后面
  28. def user_name(b,c,**a) #a为字典,可以age='13',name='23'方式传进字典
  29. help(user_name) #打印文档字符串解释
  30. print(echo.__doc__) #得到文档字符串
  31. #返回函数的名称和文档
  32. fuction.__name__
  33. fuction.__doc__
  34. #lambda,冒号以后为函数部分,stairs是第一个参数
  35. edit_story(stairs, lambda word: word.capitalize() '!')
  36. #命名空间
  37. #global
  38. print(locals()) #返回一个局部命名空间内容的字典
  39. print(globals()) #返回全局的
  40. print(id(name)) #打印唯一id值
  41. #表达式
  42. print(getAnswer(random.randint(1, 9)))
  43. #函数内修改全局变量
  44. def xx():
  45. global cc
  46.     cc = 'sdas'
  47. #闭包是一个可以由另一个函数动态生成的函数,并且可以改变和存储函数外创建的变量的值。
  48. def knights2(saying):
  49. def inner2():
  50. return "We are the knights who say: '%s'" % saying
  51. return inner2
  52. def rlt(v):
  53. def product(num):
  54. return num ** v
  55. return product
  56. square = rlt(2)
  57. cube = rlt(3)
  58. print(square(2), cube(2)) # 4, 8

0 人点赞