day2-心得
模块sys和os
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- import sys
- sys.path #打印环境变量
- print(sys.argv)
- #输出
- $ python test.py helo world
- ['test.py', 'helo', 'world'] #把执行脚本时传递的参数获取到了
- ===============================
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- import os
- os.system("df -h") #调用系统命令
- ===============================
- import os,sys
- os.system(''.join(sys.argv[1:])) #把用户的输入的参数当作一条命令交给os.system来执行
我们在硬盘上看到的pyc自然不必多说,而其实PyCodeObject则是Python编译器真正编译成的结果。我们先简单知道就可以了,继续向下看。
当python程序运行时,编译的结果则是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。
当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。
所以我们应该这样来定位PyCodeObject和pyc文件,我们说pyc文件其实是PyCodeObject的一种持久化保存方式。
- a = [1,2,3,4]
- ys_i = type(a) is list #身份运算
- print(ys_i)
一个二进制(bit)
8bit= 1byte(字节)
位运算:
- #!/usr/bin/python
- a = 60 # 60 = 0011 1100
- b = 13 # 13 = 0000 1101
- c = 0
- c = a & b; # 12 = 0000 1100
- print "Line 1 - Value of c is ", c
- c = a | b; # 61 = 0011 1101
- print "Line 2 - Value of c is ", c
- c = a ^ b; # 49 = 0011 0001 #相同为0,不同为1
- print "Line 3 - Value of c is ", c
- c = ~a; # -61 = 1100 0011
- print "Line 4 - Value of c is ", c
- c = a << 2; # 240 = 1111 0000
- print "Line 5 - Value of c is ", c
- c = a >> 2; # 15 = 0000 1111
- print "Line 6 - Value of c is ", c
列表操作:
- #切片
- name = ['zk','syf','cx',['kc','lo'],'tb']
- print(name[0]) #第一个zk
- print(name[-1]) #倒数第一个tb
- print(name[-2:]) #['cx', 'tb']
- print(name[:2]) #['zk', 'syf']
- name.append('kp') #最后插入
- print(name)
- name.insert(3,'kp') #要插入哪里就写几
- name[1] = 'xd' #修改
- name.remove('cx') #删除
- del name[4] #删除
- name.pop() #默认删除最后一个,写参数就删除对应位置的
- print(name.index('zk')) #找到对应的位置
- print(name[name.index('zk')])
- name.clear() #清空
- print(name.count('kp')) #统计数量
- name.reverse() #翻转
- name.sort() #排序
- print(name[0:-1:2]) #步长为2的切片
- print(name[:-1:2])
- name2 = ['','','']
- name.extend(name2) #合并
取多个元素
- >>> names = ["Alex","Tenglan","Eric","Rain","Tom","Amy"]
- >>> names[1:4] #取下标1至下标4之间的数字,包括1,不包括4
- ['Tenglan', 'Eric', 'Rain']
- >>> names[1:-1] #取下标1至-1的值,不包括-1
- ['Tenglan', 'Eric', 'Rain', 'Tom']
- >>> names[0:3]
- ['Alex', 'Tenglan', 'Eric']
- >>> names[:3] #如果是从头开始取,0可以忽略,跟上句效果一样
- ['Alex', 'Tenglan', 'Eric']
- >>> names[3:] #如果想取最后一个,必须不能写-1,只能这么写
- ['Rain', 'Tom', 'Amy']
- >>> names[3:-1] #这样-1就不会被包含了
- ['Rain', 'Tom']
- >>> names[0::2] #后面的2是代表,每隔一个元素,就取一个
- ['Alex', 'Eric', 'Tom']
- >>> names[::2] #和上句效果一样
- ['Alex', 'Eric', 'Tom']
追加
- >>> names
- ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy']
- >>> names.append("我是新来的")
- >>> names
- ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy', '我是新来的']
插入
- >>> names
- ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy', '我是新来的']
- >>> names.insert(2,"强行从Eric前面插入")
- >>> names
- ['Alex', 'Tenglan', '强行从Eric前面插入', 'Eric', 'Rain', 'Tom', 'Amy', '我是新来的']
- >>> names.insert(5,"从eric后面插入试试新姿势")
- >>> names
- ['Alex', 'Tenglan', '强行从Eric前面插入', 'Eric', 'Rain', '从eric后面插入试试新姿势', 'Tom', 'Amy', '我是新来的']
修改
- >>> names
- ['Alex', 'Tenglan', '强行从Eric前面插入', 'Eric', 'Rain', '从eric后面插入试试新姿势', 'Tom', 'Amy', '我是新来的']
- >>> names[2] = "该换人了"
- >>> names
- ['Alex', 'Tenglan', '该换人了', 'Eric', 'Rain', '从eric后面插入试试新姿势', 'Tom', 'Amy', '我是新来的']
删除
- >>> del names[2]
- >>> names
- ['Alex', 'Tenglan', 'Eric', 'Rain', '从eric后面插入试试新姿势', 'Tom', 'Amy', '我是新来的']
- >>> del names[4]
- >>> names
- ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy', '我是新来的']
- >>>
- >>> names.remove("Eric") #删除指定元素
- >>> names
- ['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy', '我是新来的']
- >>> names.pop() #删除列表最后一个值
- '我是新来的'
- >>> names
- ['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy']
扩展
- >>> names
- ['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy']
- >>> b = [1,2,3]
- >>> names.extend(b)
- >>> names
- ['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy', 1, 2, 3]
拷贝
- >>> names
- ['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy', 1, 2, 3]
- >>> name_copy = names.copy()
- >>> name_copy
- ['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy', 1, 2, 3]
统计
- >>> names
- ['Alex', 'Tenglan', 'Amy', 'Tom', 'Amy', 1, 2, 3]
- >>> names.count("Amy")
- 2
顺序翻转
- >>> names
- ['Alex', 'Tenglan', 'Amy', 'Tom', 'Amy', 1, 2, 3]
- >>> names.sort() #排序
- Traceback (most recent call last):
- File "<stdin>", line 1, in <module>
- TypeError: unorderable types: int() < str() #3.0里不同数据类型不能放在一起排序了,擦
- >>> names[-3] = ''
- >>> names[-2] = ''
- >>> names[-1] = ''
- >>> names
- ['Alex', 'Amy', 'Amy', 'Tenglan', 'Tom', '', '', '']
- >>> names.sort()
- >>> names
- ['', '', '', 'Alex', 'Amy', 'Amy', 'Tenglan', 'Tom']
- >>> names.reverse() #反转
- >>> names
- ['Tom', 'Tenglan', 'Amy', 'Amy', 'Alex', '', '', '']
获取下标
- >>> names
- ['Tom', 'Tenglan', 'Amy', 'Amy', 'Alex', '', '', '']
- >>> names.index("Amy")
- 2 #只返回找到的第一个下标
浅copy和深copy
- name = ['zk','syf','cx',['kc','lo'],'tb']
- print('name=',name)
- name3 = name.copy() #复制 浅
- name[1] = 'zz'
- name[3][1] ='syf'
- print('-----------')
- print('name=',name)
- print('name3=',name3)
- import copy
- name4 = copy.deepcopy(name) #深copy
- print('-----------')
- print('name=',name)
- name[3][0] = 'zk'
- name[4] = 'zz'
- print('name4=',name4)
- print('name=',name)
- name= ['zk', 'syf', 'cx', ['kc', 'lo'], 'tb', '', '', '']
- -----------
- name= ['zk', 'zz', 'cx', ['kc', 'syf'], 'tb', '', '', '']
- name3= ['zk', 'syf', 'cx', ['kc', 'syf'], 'tb', '', '', '']
- -----------
- name= ['zk', 'zz', 'cx', ['kc', 'syf'], 'tb', '', '', '']
- name4= ['zk', 'zz', 'cx', ['kc', 'syf'], 'tb', '', '', '']
- name= ['zk', 'zz', 'cx', ['zk', 'syf'], 'zz', '', '', '']
字符串操作
- name = 'my \tname is {name} and i am {year} old'
- print(name.capitalize()) #首字母大写
- print(name.count("k")) #统计计数
- print(name.center(50,'=')) #补齐,并居中
- print(name.endswith("o0")) #判断以什么结尾
- print(name.expandtabs(tabsize=30)) #\t 转换为多少个空格
- print(name.find("name")) #找位置
- print(name[name.find("name"):]) #找位置切片
- print(name.format(name='kiko0o0',year = '')) #参数录入
- name1 = name.format(name='kiko0o0',year = '')
- print(name1.center(50,"-"))
- print(name.format_map({'name':'kiko0o0','year':''})) #参数录入
- print(name.index("and")) #查找字符串所在位置,如果不包含就报错,包含就打印位置
- print('123qw'.isalnum()) #包含数字和字母返回true 如果包含特殊字符返回 false
- print('adsf'.isalpha()) #纯英文字符返回true
- print(''.isdecimal()) #判断是否为十进制
- print(''.isdigit()) #判断是否为整数
- print('a'.isidentifier()) #判断是不是一个合法的变量名
- print(name.isnumeric()) #判断是不是一个只有数字
- print(' '.isspace()) #判断是不是空格
- print('My Name Is'.istitle()) #判断是不是首字母大写
- print('zk'.isprintable()) #判断是不是可以打印的,tty设备终端等就返回false
- print('ZHAOKAI'.isupper()) #是否全部为大写
- print('+'.join(['','',''])) #字符串链接
- print(name.ljust(50,'*')) #长度多少 剩余的补充
- print(name.rjust(50,'*')) #同上 只是反向
- print('KkKiIu'.lower()) #大写变小写
- print('KkKiIu'.upper()) #小写变大写
- print('\nKiKko0'.lstrip()) #去除左边的空格和回车
- print('-----')
- print('\nKiKko0\n'.rstrip()) #去除右边的空格和回车
- print('\nKiKko0\n'.strip()) #去除左右的空格和回车
- p = str.maketrans("kjhgzx","") #类似加密一定要保证左右数据一样多
- print("kiko0o0 zk".translate(p)) #返回翻译后的字符串
- print('kiko0o0'.replace('k','a',1)) #替换后面是替换的数量,不写默认替换全部
- print('kiko0o0'.rfind('o')) #找到的最后边的数值的下标返回
- print('1+2+3+4+5'.split('+')) #以什么为分隔符分成列表
- print('1\n2\n3\n4\n'.splitlines()) #以换行\n为分隔符生成列表
- print('kikIRUo0o0o'.swapcase()) #大写转换小写,小写转换大写
- print('my name is kik'.title()) #第一个字母变大写
- print('kik o0o0'.zfill(50)) #不够用0补充
- My name is {name} and i am {year} old
- 0
- ======my name is {name} and i am {year} old======
- False
- my name is {name} and i am {year} old
- 4
- name is {name} and i am {year} old
- my name is kiko0o0 and i am 20 old
- -------my name is kiko0o0 and i am 20 old--------
- my name is kiko0o0 and i am 20 old
- 19
- True
- True
- True
- True
- True
- False
- True
- True
- True
- True
- 1+2+3
- my name is {name} and i am {year} old************
- ************my name is {name} and i am {year} old
- kkkiiu
- KKKIIU
- KiKko0
- -----
- KiKko0
- KiKko0
- 1i1o0o0 51
- aiko0o0
- 5
- ['', '', '', '', '']
- ['', '', '', '']
- KIKiruO0O0O
- My Name Is Kik
- 000000000000000000000000000000000000000000kik o0o0
字典使用
- av_catalog = {
- "欧美":{
- "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
- "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
- "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
- "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
- },
- "日韩":{
- "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
- },
- "大陆":{
- "":["全部免费,真好,好人一生平安","服务器在国外,慢"]
- }
- }
- info = {
- 'stu1101':'TengLan Wu',
- 'stu1102':'LongZe LuoLa',
- 'stu1103':'XiaoZe MaLiYa',
- }
- print(info['stu1101']) #查询,但是如果不存在就返回异常了
- info['stu1101'] = 'WuTeng Lan' #修改
- print(info)
- info['stu1104'] = 'Cang Jingkong' #添加
- print(info)
- # del info['stu1101'] #删除
- # print(info)
- # info.pop("stu1102") #删除
- # print(info)
- # info.popitem() #随机删除
- # print(info)
- print(info.get('stu1105')) #用这个查询最友好,有就返回,没有就返回None
- print('stu1101' in info) #判断是否存在,不存在返回false,存在返回true(python3.x),在python2.x里 用info.has_key('1101')
- print(av_catalog["欧美"]['www.youporn.com'][1])
- av_catalog["大陆"][""][1] = "可以在国内做镜像"
- print(av_catalog["大陆"][""])
- print(info.values()) #打印字典里所有的值
- print(info.keys()) #打印字典里所有的key
- print(av_catalog.setdefault("大陆",{"www.baidu.com":[1,2]}))
- print(av_catalog.setdefault("台湾",{"www.baidu.com":[1,2]})) #有就返回对应的值,如果没有就建立新的
- b = {
- 'stu1101':'Alex',
- 1:3,
- 2:5
- }
- info.update(b) #更新2个字典,有重复的更新,没有重复的添加
- print(info)
- print(info.items()) # 把字典转换列表形式
- c = dict.fromkeys([6,7,8,9],[1,{'name':'zk'},'kiko0o0']) #初始化一个字典,key如果是多层,呢么如果修改一个key就会修改全部
- print(c)
- c[6][1]['name'] = "syf"
- print(c)
- for i in av_catalog: #建议用这个,效率高
- print(i,av_catalog[i])
- for k,v in av_catalog.items(): #不建议用这个,效率低
- print(k,v)
购物车
- #!/usr/bin/env python
- # -*- coding:utf-8 -*-
- # Author:kiko0o0
- product_list = [
- ('iphone',5800),
- ('Mac Pro', 9800),
- ('Bike', 800),
- ('Watch', 10800),
- ('Coffe', 31),
- ('XX python', 120),
- ]
- shopping_list = []
- salary = input("input you salary:").strip()
- if salary.isdigit():
- salary = int(salary)
- while True:
- for index,item in enumerate(product_list):
- print(index,item[0],item[1])
- user_choice = input("选择要买的商品>>>:").strip()
- if user_choice.isdigit():
- user_choice = int(user_choice)
- if user_choice < len(product_list) and user_choice >=0:
- p_item = product_list[user_choice]
- if p_item[1] <= salary:
- shopping_list.append(p_item)
- salary -= p_item[1]
- print("added \033[32;1m %s \033[0m info shopping cart,your current %s" % (p_item[0],salary))
- else:
- print('余额不够了')
- elif user_choice =='q':
- print('shopping_list'.center(50,'-'))
- for p in shopping_list:
- print(p)
- print('your current balance:',salary)
- break
- else:
- print("请重新输入")
集合操作
- #!/usr/bin/env python
- # -*- coding:utf-8 -*-
- # Author:kiko0o0
- list_1 = [1,2,3,4,5,6,4,3,2]
- list_1 = set(list_1) #集合自动去除重复,且无序的
- print(list_1,type(list_1))
- list_2 = [1,3,6,43,5,2,8,44,5,2]
- list_2 = set(list_2)
- list_3 = set([1,2,3])
- list_4 = set([11,33,66])
- #交集
- print('交集'.center(50,'-'))
- print(list_1.intersection(list_2))
- print(list_1 & list_2)
- #并集
- print('并集'.center(50,'-'))
- print(list_1.union(list_2))
- print(list_1 | list_2)
- #差集
- print('差集'.center(50,'-'))
- print(list_1.difference(list_2)) #in list_1 but not in list_2
- print(list_1 - list_2) #in list_1 but not in list_2
- print(list_2.difference(list_1)) #in list_2 but not in list_1
- print(list_2 - list_1)
- #对称差集
- print('对称差集'.center(50,'-'))
- print(list_1.symmetric_difference(list_2)) #把2个里面相互都没有的取出来
- print(list_1 ^ list_2) #把2个里面相互都没有的取出来
- #子集
- print(list_1.issubset(list_3)) #是否为子集,返回False,True
- #父集
- print(list_1.issuperset(list_3)) #是否为父集,返回False,True
- print(list_1.isdisjoint(list_4)) #没有交集返回为True
- #添加
- list_1.add(222) #添加一个
- list_1.update([777,66666,5555]) #添加多个
- print(list_1)
- #删除
- list_1.remove(777) #如果不存在会报错
- print(list_1)
- list_1.pop() #随机删除
- list_1.discard(777) #不存在不会报错
- #判断是否存在
- print(4 in list_1)
- #长度
- print(len(list_1))
文件操作
- #!/usr/bin/env python
- # -*- coding:utf-8 -*-
- # Author:kiko0o0
- # r 读 w 写 a 追加 r+,可读写文件。【可读;可写;可追加】 w+,写读
- #"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)
- #"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)
- f = open('yesterday','r',encoding='utf-8') #文件句柄
- print('我是分隔符'.center(50,'='))
- print(f.read()) #打印所有
- print(f.readline()) #打印一行
- print(f.readlines()) #在一行中打印所有的
- f.close()
- d = open('yesterday2','a',encoding='utf-8')
- d.write('我爱北京天安门,\n')
- d.write('天安门上太阳升')
- # 最简洁的读取,不占用过多内存
- count = 0
- for line in f:
- if count == 9:
- print('我是第9行'.center(50,'-'))
- count +=1
- continue
- print(line.strip())
- count +=1
- # 循环读取前几行
- for i in range(5):
- print(f.readline().strip())
- # 循环读取,但是某一行不读取(过多占用内存)
- for index,line in enumerate(f.readlines()):
- if index ==9:
- continue
- print(index,line.strip())
- print(f.tell()) #打印当前光标位置
- f.seek(0) #指定光标位置
- z = open('readme.txt','r',encoding='utf-8')
- print(z.encoding) #打印文件编码
- print(z.buffer)
- print(z.fileno()) #打印文件内存编号
- print(z.flush()) #内存立即刷新到文件里
- print(z.readable()) #判断文件是否可读,不可返回False
- print(z.writable()) #判断文件是否可写,不可返回False
- print(z.closed) #判断文件是否关闭
- f.truncate() #不写就是从0开始清空
- f.truncate(10) #截断10个后清空
- s = open('yesterday2','wb') #文件句柄 二进制文件
- s.write('hello world\n'.encode()) #指定的编码格式编码字符串,不写就是默认的例如UTF-8
进度条
- #!/usr/bin/env python
- # -*- coding:utf-8 -*-
- # Author:kiko0o0
- import sys,time
- for i in range(50):
- sys.stdout.write('#')
- sys.stdout.flush()
- time.sleep(0.1)
需知:
1.在python2默认编码是ASCII, python3里默认是unicode
2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so utf-16就是现在最常用的unicode版本, 不过在文件里存的还是utf-8,因为utf8省空间
3.在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string
上图仅适用于py2
- #-*-coding:utf-8-*-
- __author__ = 'Alex Li'
- import sys
- print(sys.getdefaultencoding())
- msg = "我爱北京天安门"
- msg_gb2312 = msg.decode("utf-8").encode("gb2312")
- gb2312_to_gbk = msg_gb2312.decode("gbk").encode("gbk")
- print(msg)
- print(msg_gb2312)
- print(gb2312_to_gbk)
- #-*-coding:gb2312 -*- #这个也可以去掉
- __author__ = 'Alex Li'
- import sys
- print(sys.getdefaultencoding())
- msg = "我爱北京天安门"
- #msg_gb2312 = msg.decode("utf-8").encode("gb2312")
- msg_gb2312 = msg.encode("gb2312") #默认就是unicode,不用再decode,喜大普奔
- gb2312_to_unicode = msg_gb2312.decode("gb2312")
- gb2312_to_utf8 = msg_gb2312.decode("gb2312").encode("utf-8")
- print(msg)
- print(msg_gb2312)
- print(gb2312_to_unicode)
- print(gb2312_to_utf8)

- #-*-coding:gb2312 -*- #这个也可以去掉
- __author__ = 'Alex Li'
- import sys
- print(sys.getdefaultencoding())
- msg = "我爱北京天安门"
- #msg_gb2312 = msg.decode("utf-8").encode("gb2312")
- msg_gb2312 = msg.encode("gb2312") #默认就是unicode,不用再decode,喜大普奔
- gb2312_to_unicode = msg_gb2312.decode("gb2312")
- gb2312_to_utf8 = msg_gb2312.decode("gb2312").encode("utf-8")
- print(msg)
- print(msg_gb2312)
- print(gb2312_to_unicode)
- print(gb2312_to_utf8)

day2-心得的更多相关文章
- 冲刺阶段 day2
day2 项目进展 今天本组五位同学聚在一起将项目启动,首先我们对项目进行了规划,分工,明确指出每个人负责哪些项目.由负责第一部分的组员开始编程,在已经搭建好的窗体内,对系部设置进行了编写,本校共六个 ...
- Alpha冲刺Day2
Alpha冲刺Day2 一:站立式会议 今日安排: 首先完善前一天的剩余安排工作量,其次我们把项目大体分为四个模块:数据管理员.企业人员.第三方机构.政府人员.数据管理员这一模块,数据管理员又可细分为 ...
- Beta冲刺——day2
Beta冲刺--day2 作业链接 Beta冲刺随笔集 github地址 团队成员 031602636 许舒玲(队长) 031602237 吴杰婷 031602220 雷博浩 031602134 王龙 ...
- Java初学者最近三次作业的心得体会
作为一个初学者,简单的谈一下自己的作业心得体会.如果你是完全没有接触过Java的学习,本篇博文可能会有些收获,如果你已经学习Java有一段时间了,那么可以放弃这篇文章了,因为这篇文章讲解的是基本的东西 ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- NoSql数据库使用半年后在设计上面的一些心得
NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么问题? 这个疑惑非常大,为此我看了很多分析文章, ...
- 【从零开始学BPM,Day2】默认表单开发
[课程主题]主题:5天,一起从零开始学习BPM[课程形式]1.为期5天的短任务学习2.每天观看一个视频,视频学习时间自由安排. [第二天课程] Step 1 软件下载:H3 BPM10.0全开放免费下 ...
- 我的MYSQL学习心得(二) 数据类型宽度
我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(三) 查看字段长度
我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(四) 数据类型
我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(五) 运 ...
随机推荐
- linux上安装mysql以后root不能登录的解决办法
今天心血来潮在linux上装了mysql,装完以后用命令mysql -uroot -p登录时提示 解决办法: 使用ps aux|grep mysql 查出pid 使用kill pid结束mysql进程 ...
- poj2446
题解: 二分图匹配 看看是否能达到目标 代码: #include<cstdio> #include<cstring> #include<algorithm> #in ...
- Win7 x64安装Paramiko
先说一下我的环境: win7 x64 旗舰版.Python3.5.0.pip8.1.0 pip install paramiko时报错如下: 大概意思: blablabla... 反正大概意思就是少G ...
- 用百度地图API打造方便自己使用的手机地图
有钱人咱就不说了,因为偶是个穷银--因为穷,所以去年买的Huawei C8650+到现在还在上岗,对于没有钱买好的配置的手机的童鞋来说,类似于百度,谷歌,高德等商家的地图在自己的机器上跑起来确实是有点 ...
- Js事件处理模型/周期
有3个阶段 1. 捕获阶段:由外向内,记录各级父元素上绑定的事件处理函数---只记录,不触发. 2. 目标触发:优先触发目标元素上的事件处理函数. 3. 冒泡:由内向外,按捕获的顺序的相反的方向 ...
- How to use NSRequest in Delphi XE4
//Demo How to use NSRequest..procedure TiOSWebBrowserService.DoNavigate(const URL: string);var NewUR ...
- 创建假的wifi热点
本帖介绍怎么创建假的wifi热点,然后抓取连接到这个wifi用户的敏感数据.我们还会给周围的无线路由器发送未认证的包,使这些路由器瘫痪,强迫用户连接(或自动连接)我们创建的假wifi热点. 这种攻击也 ...
- 不同apk的activity互相调用
目标:CHFSAsk.apk调用CHFSAdviser.apk中的AppStart和MainActivity两种activity. CHFSAsk.apk:去调用的apk, 包名为com.chfs.a ...
- Ant入门之引用外部jar文件
笔者在java项目开发中经常遇到引用外部Jar包的情况,使用ant打包过程中需要对其引用.现在此简单记忆以飨来者. 此处引用Log4j,具体程序HelloLog4j.java: package oat ...
- [转载] FFmpeg源代码简单分析:常见结构体的初始化和销毁(AVFormatContext,AVFrame等)
===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...