<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[DaySunKit的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/DaySunKit</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; DaySunKit]]></copyright><item><title><![CDATA[git记录]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/119121261</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/119121261</guid><author>DaySunKit</author><pubDate>Tue, 27 Jul 2021 01:24:05 +0800</pubDate><description><![CDATA[git指令


常用命令：
git clone 代码仓库网址
git config user.name 'name'
git config user.email  邮箱（一定要按照邮箱格式）
git init 
git pull
git pull origin master
git push
git push origin master
git add .
git add file1 file2
git commit -m "描述信息"
git commit -am "描述信息"
git status
gi]]></description><category></category></item><item><title><![CDATA[python:生成器：斐波那契数列]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118938178</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118938178</guid><author>DaySunKit</author><pubDate>Tue, 20 Jul 2021 16:20:14 +0800</pubDate><description><![CDATA[斐波那契数列指的是这样一个数列：
0、1、1、2、3、5、8、13、21、34、……
这个数列从第3项开始，每一项都等于前两项之和。
生成器：一个返回迭代器的函数。 它看起来像一个普通函数，除了它包含用于生成一系列可在 for 循环中使用的值的 yield 语句，或者可以使用 next() 函数一次检索一个值。***

（个人理解生成器就是迭代器的一种，适用于大数据集的情况，不会一次性生成一个大数据集，可以有效降低内存消耗，但速度应该会慢一点）


使用生成器生成一个有五个数的斐波那契数列：
#!/user]]></description><category></category></item><item><title><![CDATA[python:with上下文管理器]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118923527</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118923527</guid><author>DaySunKit</author><pubDate>Tue, 20 Jul 2021 04:37:09 +0800</pubDate><description><![CDATA[对比两种打开文件的方式，得出的一个点：
先对比一下
'''传统的打开文件操作，
为了预防打开文件流出现错误，
所以需要用try语句异常处理，
同时也是为了无论能否正常打开文件，
最后都要关闭文件流'''

try:
    file = open("1.txt","r")
    file_data = file.read()
    print(file_data)
except Exception as e:
    print(e)
finally:
    file.close()



'''wi]]></description><category></category></item><item><title><![CDATA[python:property:简化代码]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118922629</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118922629</guid><author>DaySunKit</author><pubDate>Tue, 20 Jul 2021 03:12:31 +0800</pubDate><description><![CDATA[**
property属性：就是负责把一个方法当作属性进行使用，简化代码
**
装饰器方式：
#!/user/bin/env python3
#-*-coding:utf-8 -*-
class Sudent(object):
    def __init__(self):
        # 私有属性只能在类内调用
        self.__age = 0

    @property
    def age(self):#获取私有变量值
        return self.__age

    ]]></description><category></category></item><item><title><![CDATA[python闭包]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118882609</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118882609</guid><author>DaySunKit</author><pubDate>Sun, 18 Jul 2021 20:33:50 +0800</pubDate><description><![CDATA[闭包的作用：可以保存外部函数的变量
闭包形成的条件：
1函数嵌套
2内部函数使用了外部函数的变量或者参数
3外部函数返回内部函数，这个使用了外部函数变量的内部函数称为闭包
例子：
def func_out():
       num1 = 10
       
       def func_inner():
                result = num1 + 10
                print("结果：",result)
     
        return func_inn]]></description><category></category></item><item><title><![CDATA[装饰器（通用装饰器，类装饰器，多装饰器，带参数装饰器）]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118882142</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118882142</guid><author>DaySunKit</author><pubDate>Sun, 18 Jul 2021 20:33:00 +0800</pubDate><description><![CDATA[装饰器（本质上是闭包）
多个装饰器一起使用时，由内到外执行顺序： 外层装饰器(内存装饰器(目标函数))
通用装饰器：
#定义python 通用装饰器
def decorator(func):
    def inner(*args,**kwargs):
        """装饰内容"""
        content = func(*args,**kwargs)  #执行目标函数
        """装饰内容"""
        return content #无返回值时为None
    retu]]></description><category></category></item><item><title><![CDATA[python+mysql pymysql]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118869229</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118869229</guid><author>DaySunKit</author><pubDate>Sun, 18 Jul 2021 03:07:42 +0800</pubDate><description><![CDATA[pymysql
安装pymysql：
sudo pip3 install pymysql
#导包
import pymysql
#创建连接对象 参数：host ,port,user,password,database,chatset
conn = pymysql.connect(参数)
#获取游标，目的是执行sql操作
cursor = conn.cursor()
#准备sql语句
sql = ""
#执行
try:
     cursor.execute(sql)
     #conn.commit()此]]></description><category></category></item><item><title><![CDATA[mysql常用命令]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118869206</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118869206</guid><author>DaySunKit</author><pubDate>Sun, 18 Jul 2021 03:06:35 +0800</pubDate><description><![CDATA[登录数据库：
mysql -uroot -p
显示当前时间：
select now();
登出数据库：
exit/quit/ctr+d
查看所有数据库
show databases;
创建数据库：
create database 数据库名 charset=utf-8;
使用数据库：
use 数据库名;
查看当前使用的数据库：
select database();
删除数据库
drop database 数据库名；
查看数据库内的表：
show tables;
创建表：
create table 表名(
字段]]></description><category></category></item><item><title><![CDATA[python socket多任务处理]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118660142</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118660142</guid><author>DaySunKit</author><pubDate>Sun, 11 Jul 2021 21:21:36 +0800</pubDate><description><![CDATA[python socket 多任务处理
client端：
import socket# 客户端 发送一个数据，再接收一个数据
from time import sleep

if __name__ == '__main__':

    client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)  # 声明socket类型，同时生成链接对象
    client.connect(('localhost', 6999))  # 建立一个链接，连接到本地]]></description><category></category></item><item><title><![CDATA[python socket简单应用]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118658470</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118658470</guid><author>DaySunKit</author><pubDate>Sun, 11 Jul 2021 19:27:45 +0800</pubDate><description><![CDATA[python  socket例子：借鉴菜鸟例子
client端：
import socket# 客户端 发送一个数据，再接收一个数据
from time import sleep

if __name__ == '__main__':

    client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)  # 声明socket类型，同时生成链接对象
    client.connect(('localhost', 6999))  # 建立一个链接，连]]></description><category></category></item><item><title><![CDATA[搬运工小抄留底]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118647894</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118647894</guid><author>DaySunKit</author><pubDate>Sun, 11 Jul 2021 03:36:12 +0800</pubDate><description><![CDATA[多线程：
搬运自：https://www.runoob.com/python/python-multithreading.html

多线程类似于同时执行多个不同程序，多线程运行有如下优点： 使用线程可以把占据长时间的程序中的任务放到后台去处理。
用户界面可以更加吸引人，这样比如用户点击了一个按钮去触发某些事件的处理，可以弹出一个进度条来显示处理的进度 程序的运行速度可能加快
在一些等待的任务实现上如用户输入、文件读写和网络收发数据等，线程就比较有用了。在这种情况下我们可以释放一些珍贵的资源如内存占用等等。]]></description><category></category></item><item><title><![CDATA[vim操作]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118639610</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118639610</guid><author>DaySunKit</author><pubDate>Sat, 10 Jul 2021 19:42:09 +0800</pubDate><description><![CDATA[vim
i:进入编辑模式
esc:进入命令模式
：末行模式
不同模式之间不能直接切换  都要先进入命令模式再切换
:w保存
:wq 保存退出
:wq! 强制保存退出
:x保存退出
:q!强制退出

]]></description><category></category></item><item><title><![CDATA[linux/ubuntu常用命令]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118610910</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118610910</guid><author>DaySunKit</author><pubDate>Fri, 09 Jul 2021 17:20:31 +0800</pubDate><description><![CDATA[linux/ubuntu常用命令
借鉴：https://www.runoob.com/linux/linux-command-manual.html
ctrl+alt+t :快速启动终端
终端命令格式说明：
command [-options]  [parameter] 一般情况不强制要求顺序，除了scp命令外
command:命令名
-options:选项，没有，一个或多过
parameter:参数 ，没有，一个或多个
ls 查看当前目录下一层信息
tree 查看多层目录
pwd 查看路径
clear 清]]></description><category></category></item><item><title><![CDATA[python异常处理语法篇]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118555501</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118555501</guid><author>DaySunKit</author><pubDate>Wed, 07 Jul 2021 19:37:46 +0800</pubDate><description><![CDATA[异常
异常写法：
语法：
try:
      #可能发生错误的代码
except:
       #如果出现异常执行的代码

捕获指定异常：
语法：
try:
     #可能发生错误的代码
except 异常类型：
      #如果捕获到该异常类型执行的代码

捕获多个指定异常：
语法：
try:
     #可能发生错误的代码
except （异常类型1，异常类型2）：#使用元组括起来
      #如果捕获到该异常类型执行的代码
      [#print(result)]

捕获异常描述信息：
]]></description><category></category></item><item><title><![CDATA[类属性，类方法，静态方法，私有权限]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118538318</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118538318</guid><author>DaySunKit</author><pubDate>Wed, 07 Jul 2021 04:11:38 +0800</pubDate><description><![CDATA[#########################
类属性：
。。类属性就是类对象拥有的属性，它被该类的所有实例对象共有
。。类属性可以使用类对象或实例对象访问
类属性优点：
。。记录的某项数据始终保持一致时，则定义类属性。
。。实例属性要求每个对象为其单独开辟一份内存空间记录数据，而类属性为全类所共有，仅占用一份内存
修改类属性：
。。只能通过类对象修改，如果通过实例对象修改，只是创建了一个和类属性相同名字的实例属性
类方法：
。。需要使用装饰器@classmethod来标识其为类方法，第一个参数必须是类]]></description><category></category></item><item><title><![CDATA[python继承 ，多态，封装]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118528710</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118528710</guid><author>DaySunKit</author><pubDate>Wed, 07 Jul 2021 04:05:11 +0800</pubDate><description><![CDATA[面向对象
封装:
…将属性和方法书写到类的里面的操作叫做封装
…封装可以为属性和方法添加私有权限
继承:
…子类默认继承父类的所有属性和方法
…子类可以重写父类属性和方法
多态:
…传入不同的对象，产生不同的结果
#############################################################
多态：指的是一类事物有多种形态（一个抽象类有多个子类	，因而多态概念最好依赖于继承）
实现步骤：
定义父类，并提供公共方法
定义子类，并重写父类方法
传递子类对象给调用者，可]]></description><category></category></item><item><title><![CDATA[python os模块 文件，文件夹操作]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118528461</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118528461</guid><author>DaySunKit</author><pubDate>Tue, 06 Jul 2021 20:03:24 +0800</pubDate><description><![CDATA[os模块常用方法：
import  os
#1.rename():重命名
os.rename('old_name','new_name')

#2.remove():删除文件
os.remove('file_name')

#3.mkdir()创建文件夹 注意文件夹和同目录其他文件名字不能一样
os.mkdir('file_name')

#4.rmdir()删除文件夹
os.rmdir('file_name')

#5.getcwd()获取当前目录路径  是当前文件目录
os.getcwd()

#6.c]]></description><category></category></item><item><title><![CDATA[python文件备份操作例子]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118527996</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118527996</guid><author>DaySunKit</author><pubDate>Tue, 06 Jul 2021 19:42:38 +0800</pubDate><description><![CDATA[文件备份
1.接受用户输入的文件名
2.规划备份文件名
3.备份文件写入数据
4.文件入口不一定是要用户输入的，具体需求具体使用
# ###############已经存在一个old_name.txt文件
old_name = input("请输入要备份的文件的名字（需要添加后缀）：")
#提取后缀
#-- 找到名字中的点 ---名字和后缀分离 --最右侧的点菜是后缀的点 --字符串查找某个子串（rfind）
index = old_name.rfind('.')
#判读文件名是否合法
if index &]]></description><category></category></item><item><title><![CDATA[python高阶函数，内置高阶函数常用例子]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118523453</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118523453</guid><author>DaySunKit</author><pubDate>Tue, 06 Jul 2021 16:21:43 +0800</pubDate><description><![CDATA[高阶函数：把函数作为参数传入
abs(x)#求绝对值
round(x)#四舍五入计算

例子1：
def add_num(a,b,f)
    return f(a)+f(b)

result = add_num(-1,2,abs)
print(result)#3

#内置高阶函数（常用的）

map(func,list),将传入的函数变量func作用到list变量的每个元素，并将结果组成新的列表迭代器返回

例子：
计算list1序列中各个数字的2次方
list1 = [1,2,3,4,5]
def fu]]></description><category></category></item><item><title><![CDATA[匿名函数 lambda使用例子方法]]></title><link>https://blog.youkuaiyun.com/DaySunKit/article/details/118523318</link><guid>https://blog.youkuaiyun.com/DaySunKit/article/details/118523318</guid><author>DaySunKit</author><pubDate>Tue, 06 Jul 2021 16:17:49 +0800</pubDate><description><![CDATA[递归函数：函数内部自己调用自己，必须有出口

匿名函数
lambda表达式：如果一个函数有一个返回值，并且只有一句代码，可以使用其简化
（简化代码量，节省内存）

语法：
lambda 参数列表 ：表达式
注意：lambda表达式的参数可有可无，函数的参数在lambda表达式中完全适用
           lambda表达式能接受任何数量的参数但只能返回一个表达式的值
#例子1：###########################
#1.函数
def fn1():
    return 100

re.]]></description><category></category></item></channel></rss>