2017年6月12日-简单练习

  1 __author__ = 'liulin'
  2 #1 内容说明:老男孩实践第一天,实现输入的命令让系统执行
  3 import os,sys
  4 os.system(''.join(sys.argv[1:]))# python 文件 指令 对所有的参数从哪来,去哪儿清楚的很
  5 
  6 #2 列表操作
  7 names =['aa','bb','cc','dd']
  8 #分片操作,-1 取不到 只是bb
  9 print(names[1:-1])
 10 #3  后面那个表示步长,必须使用断点调试,通过调试看变量的值,
 11 print(names[1::2])
 12 names.append('ee')
 13 names.insert(2,'ff')
 14 age = ['10','20','30']
 15 names.extend(age)
 16 names_count = names.count(10)
 17 names.sort()#排序
 18 names.reverse()#翻转
 19 index = names.index('10')
 20 names
 21 #写程序就是要边写边调试,熟悉这种调试的感觉,每天都要来调试一下,看看程序是怎样跑的,
 22 name = 'liu lin'
 23 #字符串不可修改,修改只是临时的,
 24 print(name.capitalize())
 25 print(name.center(50,'-'))#这种输出方式最简洁,每天要有500行的代码输出
 26 name.encode()
 27 print(name.startswith('l'))
 28 print(name.find('n'))
 29 msg = 'my name is {} and age is {}'
 30 print(msg.format('liulin',20))#没用过这种格式化
 31 
 32 names_str = '|'.join(names)
 33 
 34 info  = {'stu1101':'liulin',
 35          'stu1102':'60',
 36          'stu1103':'80'
 37          }
 38 info['1104'] = '90' # 调试状态可以搜索, 直接找info 就可以了,这样就添加了个字典,添加和修改是一样的
 39 # 字典的删除, pop 键值就可以, 可以在调试状态下修改相关的参数
 40 info.pop('stu1101')
 41 info_1104 = info['1104']
 42 
 43 av_catalog = {
 44     "欧美":{
 45         "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
 46         "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
 47         "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
 48         "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
 49     },
 50     "日韩":{
 51         "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
 52     },
 53     "大陆":{
 54         "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
 55     }
 56 }
 57 # 分析就是 字典的键-值 又是一个字典 字典名的键 对应的值又是一个字典名
 58 print(av_catalog['日韩']['tokyo-hot'][0])
 59 # 拿到他所有的key
 60 av_keys = av_catalog.keys() #返回的不是一个列表,字典格式
 61 av_values = av_catalog.values()#
 62 info_item = info.items()#列表里面包含元组,元组的构成是key ,value
 63 info_update = {'1104':'100'}
 64 info.update(info_update)#通过一个字典去更新另一个字典,就用这个方法
 65 
 66 for k,v in info.items():
 67     print(k,v)
 68 
 69 # 集合
 70 data_list = [1,1,2,2,3,3]
 71 
 72 t = set(data_list)# 参数是列表,返回的是集合,集合有点像字典哦
 73 
 74 d = {3,4,5,6}
 75 
 76 f = t | d
 77 f = t & d
 78 f = t - d # 从t 里面扣除d相关的 集合
 79 
 80 t.add('100')#添加100
 81 t.update([1000,2000])
 82 
 83 #文件的操作
 84 #打开文件得到一个文件句柄,
 85 with open('log','r') as f:
 86     print(f.readlines())
 87 # 匿名函数
 88 res = map(lambda x :x**2,[1,2,3])# 这个要循环一下才可以触发
 89 for r in res:
 90     print(r)
 91 #软件目录结构
 92 #代码行数不够,自己写个单列模式练练
 93 def singleton(cls,*args,**kwargs):
 94     instance = {}
 95     def _singleton(cls):
 96         if cls not in instance:
 97             instance[cls] = cls(*args,**kwargs)
 98         return instance[cls]
 99     return singleton
100 @singleton # 这里注意函数的缩进,空一个tab 写返回
101 class Myclass(object):
102     def __init__(self,name):
103         self.name = name
104 a = Myclass("liulin")
105 b = Myclass('ss')
106 # TypeError: 'NoneType' object is not callable
107 print(id(a))
108 print(id(b))
109 # 今天完成100 行 ,以后每天最少100行 正常状态500行
110  
原文地址:https://www.cnblogs.com/xiaohuamao/p/6995603.html