暑期学习笔记

实习学习文稿

[TOC]


一、SSM框架

1、Spring

  • 轻量级的控制反转(ioc)和面向切面(aop)的容器框架

2、SpringMVC

  • SpringMVC分离了控制器、模型对象、分派器

3、Maybatis

  • 一个机基于java的持久层框架
  • iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO)
  • 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。
  • 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

二、Python学习笔记

综合知识

  • x is y, 如果 id(x) 等于 id(y) , is 返回结果 1
  • [ 条件语句 ] if else elif:
  • while(条件):
  • pass 语句什么都不做,用作占位符,比如现在还没想好怎么写函数的代码,就可以先放一个pass,可以先让代码运行起来。
  • 函数可以返回多值,实际上是个tuple

2、Python随机数函数

  • choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。
  • random() 随机生成下一个实数,它在[0,1)范围内。

3、两种for循环

#一般模式
for letter in 'Python':     # 第一个实例
   print '当前字母 :', letter
  
    #序列索引迭代
  fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):
   print '当前水果 :', fruits[index]

4、行与缩进

  • Python不用({})而是用缩进来写模块
  • 代码块语句必须包含相同的缩进空白数量
  • :分号后面必须加有空行,否则报错
    IndentationError: expected an indented block
  • 引号: 单双引号没有区别
  1. 三引号与他们不同之处:“所见即所得”
    print '''
    hello'
    world"
    '''
    结果是
    hello'
    world"
    即三个引号可以保留原文的一些换行格式

5、等待用户输入

raw_input("\n\nPress the enter key to exit.")
//"\n\n"在结果输出前会输出两个新的空行。一旦用户按下键时,程序将退出

1、基础

1.1编码

  • 在代码的首位置加上如下注释,即可使用中文
#!/usr/bin/python
# -*- coding: UTF-8 -*-
print "你好,世界";

1.2、列表 list

  • list = [] 不同于数组,其元素可是任意类型的对象
  • len(list) 获取list的长度
  • list[-1] 访问最后一个元素
  • list.append() 在末尾添加元素
  • list.pop(i)删除指定位置的元素,如为指定i,则删除最后一个
  • list.insert(i,"插入的内容") 指定位置插入

1.3、元组 tuple

  • tuple = () 相当于只读列表,初始化后就不可修改
  • 如果要定义一个长度为1的元组,tuple(1,)
  • 如果tuple内含有list,则list仍可以改动

1.4、元字典 dictionary

相当于java里的map,键值对匹配,下面是一些操作

dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print dict['one'] # 输出键为'one' 的值
print dict[2] # 输出键为 2 的值
print tinydict # 输出完整的字典
print tinydict.keys() # 输出所有键
print tinydict.values() # 输出所有值

# 输出结果为:
#This is one 
#This is two
#{'dept': 'sales', 'code': 6734, 'name': 'john'} 
#['dept', 'code', 'name']    ['sales', 6734, 'john']

1.5、运算

  • [ 幂次方运算 ] a**b 为10的20次方
  • [ 整除运算 ] 9//2 输出结果 4
  • [ 逻辑运算符 ] “与 and”,“或 or”,"非 not"
  • [ 成员运算符 ] in,not in
  • [ 身份运算符 ] is , is not
    x is y, 如果 id(x) 等于 id(y) , is 返回结果 1

1.6、字符串操作

str = 'Hello World!'
print str # 输出完整字符串
print str[0] # 输出字符串中的第一个字符
print str[2:5] # 输出字符串中第三个至第五个之间的字符串
print str[2:] # 输出从第三个字符开始的字符串
print str * 2 # 输出字符串两次
print str + "TEST" # 输出连接的字符串

#Hello World!
#H
#llo
#llo World!
#Hello World!Hello World!
#Hello World!TEST
#

1.7

标签: 基础的最后

2、函数

2.1、python内置函数

  • 1、max() 接受多个参数,返回最大值
  • int ( x [,base] ) 将字符串x按照base进制转化为十进制
    比如说int('ff',16) = 256
    str(x) 将对象 x 转换为字符串
    tuple(s) 将序列 s 转换为一个元组
    list(s) 将序列 s 转换为一个列表
    dict(d) 创建一个字典。d 必须是一个序列 (key,value)元组。

2.2、字符串函数

  • string.center(width)
    返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
  • string.count(str, beg=0, end=len(string))
    返回 str 在 string 里面出现的次数
  • string.endswith(obj, beg=0, end=len(string))
    检查字符串是否以 obj 结束,返回boolean
  • string.find(str, beg=0, end=len(string))检测 str 是否包含在 string 中,如果是返回开始的索引值,否则返回-1
  • string.join(seq)
    以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串
  • string.replace(str1, str2, num=string.count(str1))

把 string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次.

2.3函数的参数

  • [ 返回值 ] 函数可以返回多个元素,其实是一个元组tuple,当然也可以传入多个参数
  • [ 默认参数 ] 默认参数必须放在非默认之后,这样才能避免出现冲突的出现。还需要注意,最好用不可变的量作为默认参数。比如说fun(L=[])的默认参数是个空list,但其可以变化会导致出错。此处应该用fun(L=null),null不会变化
  • [ 可变参数 ] 顾名思义,即可传入数量可变的参数个数,一般这种情况需要把参数构造成一个list或者tuple来传参,比如fun([a,b,c])。可以给参数前面加一个“*”使得参数可变,这样就能简化为fun(a,b,c)
  • [ 关键字参数 ]拓展函数功能,通关键值对形式传入参数值,一般系统先打包为 dict。fun(a,b,**kw)
  • [ 命名关键字参数 ]只接受指定的关键字参数fun(a,b,,c,d)
    如果其中含有一个可变参数,则无需分隔符 fun (a,b,
    args,c,d)
  • []

标签: 基础的最后

三、机器学习

1、神经网络

  • 神经网络是机器学习的一种方法,通过每个神经元的非线性计算,将输入向量进行分类,通过多层神经元的之间的反馈输入输出(即反向传播算法)使得整个神经网络能够进行精准分类
  • 三种分类:前馈神经网络、循环网络、对称联通网络
  • 前馈神经网络:输入层、隐含层、输出层(隐含层多于一个叫做“深度神经网络”)
  • 循环网络:可能存在有向环,能够很好的逼近生物学
  • 对称联通网络:和循环网络类似,但结点是对称的,比较受限

2、词嵌入技术

  • 1、词向量是什么
  • 词向量
  • 2、语言模型
  • 语言模型就是判断一段话是否是出自人之口,即是否自然。

3、tensorflow

  • 可以用feed_dict来替代任何张量,并不仅限于替换占位符

四、正则表达式

1、元字符

  • 一些常见的元字符
    |代码|说明|
    |:--|--|
    |.|匹配除换行符以外的任意字符|
    |\w|匹配字母或数字或下划线或汉字|
    |\s|匹配任意的空字符|
    |\d|匹配数字|
    |\b|匹配单词的开始或结束|
    |^|匹配字符串的开始|
    |$|匹配字符串的结束|
  • 常见的限定符
代码/语法 说明
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
  • 自定义字符集合 【】
    [0-9] 表示从0~9的数字集
    [?>,] 表示从中选取一个符号的集合

  • 分枝条件 |
    相当于逻辑"与",表示同时满足条件

  • 分组 ()
    ()中的内容自动进行分为组号1、2、3,可以通过 /1 来进行回调

  • 常见的分组语法
    |分类|代码/语法|说明|
    |---|--|---|
    ||||
    ||||
    ||||
    ||||
    ||||
    ||||
    ||||
    ||||

  • 常见的反义代码
    |代码/语法|说明|
    |:--|:----:|
    |\W|匹配的不是字母、数字、下划线、汉字|
    |\S|匹配任意不是空白符的字符|
    |\D|匹配任意非数字的字符|
    |\B|匹配不是单词开头或结束的位置|
    |[^aeiou]|匹配除了aeiou之外的任意字符|

五、问题及解决方案

1、显示栏的字体不会调整

  • 问题:在pycharm中抓取的网页信息由于字体太小看不清楚,但在设置界面只能找到设置系统和编辑器字体的功能。
  • 解决:在Editer-->General 中“change font size with Ctrl + Mouse”即可在任意位置进行缩放字体

你可能感兴趣的:(暑期学习笔记)