Experience

 

案例一、水果问题

有三筐水果,一筐装的全是苹果,第二筐装的全是橘子,第三筐是苹果和橘子,这三筐水果的标签都是错的,在这三筐水果中拿出一个水果就能分辨出这三筐水果各装得是什么?

# 拿那个标有【混合】的,拿一个:
# 拿出橘子,则标有【混合】的是橘子,标有【苹果】的是混合(因为这筐只可能是橘子或混合,又因前面已经断定了橘子,所以标有苹果的不可能是橘子了。最后只能是混合!),标有【橘子】的是苹果;
# 拿出苹果,则标有【混合】的是苹果,标有【苹果】的是混合,标有【橘子】的是苹果。
View Code

案例二、sql多个字段去重返回all字段

# 多个字段去重-返回all字段
SELECT 
    * 
FROM demo d1
WHERE
    id = (
        SELECT max(d2.id) FROM demo d2 
        WHERE 
            d2.NAME = d1.NAME 
            and d2.age=d1.age 
            and d2.address=d1.address
            -- 。。。更多字段
    )

案例三、列表里的字典排序问题

# 按照薪水salary排序降序
l=[
    {"name": "Elton", "salary": 15000},
    {"name": "boss", "salary": 30000},
    {"name": "Alex", "salary": 20000},
]
l.sort(key=lambda x:x["salary"], reverse=True)
print("l", l)
# sorted方法
# new_l = sorted(l, key=lambda x:x["salary"], reverse=True)

 

案例四、rabbitmq消息队列-消费者宕机reload

import os
import signal

# 用心跳监控tcp连接是否丢失
# 重启过程:关闭一个进程,比如QQ,或者message-server o1 = os.popen("ps ax | grep QQ | grep -v grep") try: for i in o1: print i.split()[0] os.kill(int(i.split()[0]), signal.SIGUSR1) print "end" except Exception , e: print u"error:>>>",e # reload rabbitmq mq_conn = connection.MQConnection.get_connection(self.db) mq_conn.ack(ch, method)

案例五、linux文件求某一列的平均值

格式:操作时间 状态码 耗时            求平均耗时-linux命令实现
wangcheng@Elton-MacBook-Pro demo % wangcheng@Elton-MacBook-Pro demo % wangcheng@Elton-MacBook-Pro demo % cat a.txt 2020-07-21 22:05:00 200OK 25.2ms 2020-07-21 22:05:00 200OK 25.2ms 2020-07-21 22:05:00 200OK 5.2ms 2020-07-21 22:05:00 200OK 5.2ms 2020-07-21 22:05:00 200OK 15.2ms 2020-07-21 22:05:00 200OK 35.2ms wangcheng@Elton-MacBook-Pro demo % cat a.txt|awk '{print $4}'| awk '{sum +=$1};{count +=NF}END {print sum/count}' 18.5333 wangcheng@Elton-MacBook-Pro demo % wangcheng@Elton-MacBook-Pro demo %

 

posted @ 2020-05-03 00:07  Elton丶  阅读(259)  评论(0编辑  收藏  举报