python-n4

****1221*******
package 
    things
        /*xisu.py
        /*eat.py
    /*go_home.py
cat go_home.py:
import things.fun()
things.fun.eat()
or:
from things.fun import eat
eat()
该中写法p3.3 之前不支持 需要单独在things 里添加 __init__.py 文件;里面什么都不写;表面这是一个包 可以引用
p3.3 后也可以这样写:
    在 __init__.py 里面: 写 form things.fun import *
    在 go_hme.py  可以这样写:from things import eat
                                eat()
                               好处是我们可能吧 fun 改名了 或者eat 方法放到别的地方去了,只要在things里面,外部我照样调用  
                               1.更友好的封装了对外的接口
                               2. 我们可以在init 处二次封装下 加些提示、打印 (如装饰器的作用);
                               或直接在ini里面实现一些共用的方法,然后再再go_home 里调用
***********

查看自己linux电脑系统的指令
https://jingyan.baidu.com/article/7908e85c725159af481ad2f7.html
1129-------------------
import re
print '{greet} from {language}.'.format(greet = "Hello world", language = 'Python')
Go 语言设计与实现 #
1124----------
异步是计算机多线程的异步处理。与同步处理相对,异步处理不用阻塞当前线程来等待处理完成,而是允许后续操作,直至其它线程将处理完成,并回调通知此线程
1121----
logging 
try:
except:
except:
else:
finally:

logging :
import logging
def test():
    logging.basicConfig(level=logging.ERROR)
    logging.debug('Python debug')
    logging.info('Python info')
    logging.warning('Python warning')
    logging.error('Python Error')
    logging.critical('Python critical')
    # logging.log(3,'test')
test()
 
1120  ---
_init  __init __init__ 的区别
os.gedwd()
oc.chdir(path)
--------------
import re
str1 = 'kkaabbc'
print str1.replace('a','m',1)
print str1.replace('a','m',2)

print re.sub(r'a','p',str1,2)
url='https://sycm.taobao.com/bda/tradinganaly/overview/get_summary.json?dateRange=2018-03-20%7C2018-03-20&dateType=recent1&device=1&token=ff25b109b&_=1521595613462'
print re.findall(r'dateRange=(.*?)%7C(.*?)&',url)
dic = {'name':'zhg','sex':'man','id':'kk'}
b =  sorted(dic.items(),key = lambda x:x[1])
print b
new_dic = {i[0]:i[1] for i in b}
print new_dic

s = 'info:xiaozhang 33 shan&gdong'
res = re.split(r':| |&',s)
print res
emails = ['xiaowang@163.com','zhanghoangg@163.com.cn','294588358@qq.com']
for email in emails:
    # res1 = re.match("(\w){4,20}@163\.com$",email)
    # res1 = re.compile(r'\w+@163\.com$',email)
    res1 = re.search(r'\w+@163\.com$',email)
    if res1:
        print res1.group()
    else:
        print 'not match'
str1 = "hello world he ha "
print re.sub(r' ','',str1)

findall 不需要直接提取 search match  需要加group() 提取

106、python垃圾回收机制

python垃圾回收主要以引用计数为主,标记-清除和分代清除为辅的机制,
其中标记-清除和分代回收主要是为了处理循环引用的难题。


1018——01:

__init__: 与 __new__ 的区别:d
1.当创建一个实例的时候 实际先调用的new new 方法创建一个实例 利用实例调用的init  init 去实现一些实例的属性
2.new 的作用:当你要集成一些不可变的class(int str tuple),提供你一个自定义这些累的实例化途径
10117-01:
with open(filename,"r") as fr:
uda_file_read = fr.read()  包含了close ,单纯的open eg:  f = open(path/1.txt,'r') try: f.write("hello world") except: pass  finally: f.close()

02:
sub出现于re库,用法是re.sub(pattern, repl, string, count=0, flags=0)
实例,re.sub(r'e','a','def',count = 1)
>>> daf
相对于replace来说,该方法功能更强,但是运行效率更低。
replace是自带函数,用法是str.replace(old, new[, max])
实例,'abbc'.replace('b','a',1)
>>>aabc
对比re.sub来说,replace没有正则的效果,但是运行效率更佳。请在实际应用中根据需求来定制使用方法,不要浪费资源。

03:delate_remark1 = re.compile(r'/\*.*?\*/',re.S)
struct_text3 = re.sub(delate_remark1,'',struct_text2)
delate_remark2 = re.compile(r'//.*')
struct_text = re.sub(delate_remark2,'',struct_text3)

import re
str1 = 'kkaabbc'
print str1.replace('a','m',1)
print str1.replace('a','m',2)
print re.sub(r'a','p',str1,1)
print re.sub(r'a','p',str1,2)
预期打印正常
----------------------------------
1017-02:
# 列表中的每个元素进行*2
lis = [10, 30, 70]
f = map(lambda li: li*2, lis)  # 操作lis中的每个元素。
print(list(f))  # 返回来一个新的列表
# [20, 60, 150]

1017——03:
from collections import Counter
a = 'zhgsdf;dgdfg '
print Counter(a)

import re 
a = '我的nme is 100 个中国人 name id twoo beishu'
list1 = a.split(" ")
res = re.findall(r'\d+|[a-zA-Z]+',a)
list2 = []
for i in list1:
    if i not  in res:
        list2.append(i)
    # print list2
print ''.join(list2)

dict1 = {"name":23,"city":4,"pill":12}
list22 = sorted(dict1.items(),key = lambda i:i[1],reverse = False)
print list22
new_dict = {}
for i in list22:
    new_dict[i[0]] = i[1] 
print new_dict
---------------
1011——01:
Unix 操作系统提供一个uptime命令。执行该命令将会显示出系统的当前时间、上线时间、当前的用户数量以及过去1、5、15分钟内的系统负载。下面是一个在Unix系统上运行uptime命令的实例:
$ uptime
10:52 PM up 1337 days, 7:45, 3 users, load averages: 0.21, 0.24, 0.23

field = re.search(modifyline,line).group(2)
with open(filename,"r") as fr:
file_read = fr.read()
regex = r"\b{}\b".format(field)
result = re.findall(regex,file_read)
print result


 


 


 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值