首页
关于
test
搞笑视频
友情链接
更多
文章归档
推荐
资料下载
备份站1
备份站2
备份站3
备份站4
备份站5
备份站6
Search
1
centos 32位 64位 下挂vagex一键包代码
714 阅读
2
wordpress转typecho方法
615 阅读
3
一个自制的virto精简版kvm qemu win2003模板 最低64M内存可用
604 阅读
4
PHP 安装
532 阅读
5
暴雨 车被泡了~
475 阅读
默认分类
vps综合利用
登录
/
注册
Search
标签搜索
Uncategorized
安装
mysql
utf-8
网站
google
linux
free
免费
黑色
ssl
一键包
优化
40%
press
vagex
32位
64位
debian
domain
御品VPS
累计撰写
500
篇文章
累计收到
1
条评论
首页
栏目
默认分类
vps综合利用
页面
关于
test
搞笑视频
友情链接
文章归档
推荐
资料下载
备份站1
备份站2
备份站3
备份站4
备份站5
备份站6
搜索到
14
篇与
google
的结果
2018-03-23
Python3 循环语句
Python3 条件控制Python3 函数 Python3 循环语句本章节将为大家介绍Python循环语句的使用。Python中的循环语句有 for 和 while。Python循环语句的控制结构图如下所示:while 循环Python中while语句的一般形式: while 判断条件: 语句 同样需要注意冒号和缩进。另外,在Python中没有do..while循环。以下实例使用了 while 来计算 1 到 100 的总和:实例#!/usr/bin/env python3n=100sum=0counter=1whilecounter<=n:sum=sum+countercounter+=1print("1 到 %d 之和为: %d"%(n,sum))执行结果如下: 1 到 100 之和为: 5050 无限循环我们可以通过设置条件表达式永远不为 false 来实现无限循环,实例如下:实例#!/usr/bin/python3var=1whilevar==1:# 表达式永远为 truenum=int(input("输入一个数字 :"))print("你输入的数字是:",num)print("Good bye!")执行以上脚本,输出结果如下: 输入一个数字 :5 你输入的数字是: 5 输入一个数字 : 你可以使用 CTRL+C 来退出当前的无限循环。无限循环在服务器上客户端的实时请求非常有用。while 循环使用 else 语句在 while … else 在条件语句为 false 时执行 else 的语句块:实例#!/usr/bin/python3count=0whilecount<5:print(count,"小于 5")count=count+1else:print(count,"大于或等于 5")执行以上脚本,输出结果如下: 0 小于 5 1 小于 5 2 小于 5 3 小于 5 4 小于 5 5 大于或等于 5 简单语句组类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:实例#!/usr/bin/pythonflag=1while(flag):print('欢迎访问菜鸟教程!')print("Good bye!")注意:以上的无限循环你可以使用 CTRL+C 来中断循环。执行以上脚本,输出结果如下: 欢迎访问菜鸟教程! 欢迎访问菜鸟教程! 欢迎访问菜鸟教程! 欢迎访问菜鸟教程! 欢迎访问菜鸟教程! …… for 语句Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。for循环的一般格式如下:for<variable>in<sequence>: <statements>else: <statements>Python loop循环实例:实例>>>languages=["C","C++","Perl","Python"]>>>forxinlanguages: ...print(x)...CC++PerlPython>>>以下 for 实例中使用了 break 语句,break 语句用于跳出当前循环体:实例#!/usr/bin/python3sites=["Baidu","Google","Runoob","Taobao"]forsiteinsites:ifsite=="Runoob":print("菜鸟教程!")breakprint("循环数据"+site)else:print("没有循环数据!")print("完成循环!")执行脚本后,在循环到 "Runoob"时会跳出循环体: 循环数据 Baidu 循环数据 Google 菜鸟教程! 完成循环! range()函数如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列,例如:实例>>>foriinrange(5): ...print(i)...01234你也可以使用range指定区间的值:实例>>>foriinrange(5,9):print(i)5678>>>也可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):实例>>>foriinrange(0,10,3):print(i)0369>>>负数:实例>>>foriinrange(-10, -100, -30):print(i)-10-40-70>>>您可以结合range()和len()函数以遍历一个序列的索引,如下所示:实例>>>a=['Google','Baidu','Runoob','Taobao','QQ']>>>foriinrange(len(a)): ...print(i,a[i])...0Google1Baidu2Runoob3Taobao4QQ>>>还可以使用range()函数来创建一个列表:实例>>>list(range(5))[0,1,2,3,4]>>>break和continue语句及循环中的else子句break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。 实例如下:实例#!/usr/bin/python3forletterin'Runoob':# 第一个实例ifletter=='b':breakprint('当前字母为 :',letter)var=10# 第二个实例whilevar>0:print('当期变量值为 :',var)var=var-1ifvar==5:breakprint("Good bye!")执行以上脚本输出结果为: 当前字母为 : R 当前字母为 : u 当前字母为 : n 当前字母为 : o 当前字母为 : o 当期变量值为 : 10 当期变量值为 : 9 当期变量值为 : 8 当期变量值为 : 7 当期变量值为 : 6 Good bye! continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。实例#!/usr/bin/python3forletterin'Runoob':# 第一个实例ifletter=='o':# 字母为 o 时跳过输出continueprint('当前字母 :',letter)var=10# 第二个实例whilevar>0:var=var-1ifvar==5:# 变量为 5 时跳过输出continueprint('当前变量值 :',var)print("Good bye!")执行以上脚本输出结果为: 当前字母 : R 当前字母 : u 当前字母 : n 当前字母 : b 当前变量值 : 9 当前变量值 : 8 当前变量值 : 7 当前变量值 : 6 当前变量值 : 4 当前变量值 : 3 当前变量值 : 2 当前变量值 : 1 当前变量值 : 0 Good bye! 循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被break终止时不执行。如下实例用于查询质数的循环例子:实例#!/usr/bin/python3forninrange(2,10):forxinrange(2,n):ifn%x==0:print(n,'等于',x, '*',n//x)breakelse:# 循环中没有找到元素print(n,'是质数')执行以上脚本输出结果为: 2 是质数 3 是质数 4 等于 2 * 2 5 是质数 6 等于 2 * 3 7 是质数 8 等于 2 * 4 9 等于 3 * 3 pass 语句Python pass是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句,如下实例实例>>>whileTrue: ...pass# 等待键盘中断 (Ctrl+C)最小的类:实例>>>classMyEmptyClass: ...pass以下实例在字母为 o 时 执行 pass 语句块:实例#!/usr/bin/python3forletterin'Runoob':ifletter=='o':passprint('执行 pass 块')print('当前字母 :',letter)print("Good bye!")执行以上脚本输出结果为: 当前字母 : R 当前字母 : u 当前字母 : n 执行 pass 块 当前字母 : o 执行 pass 块 当前字母 : o 当前字母 : b Good bye!
2018年03月23日
113 阅读
0 评论
0 点赞
2018-03-23
Python3 正则表达式
Python3 os.write() 方法Python3 CGI编程 Python3 正则表达式正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。re 模块使 Python 语言拥有全部的正则表达式功能。compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数。本章节主要介绍Python中常用的正则表达式处理函数。re.match函数re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。函数语法: re.match(pattern, string, flags=0) 函数参数说明: 参数描述 pattern匹配的正则表达式 string要匹配的字符串。 flags标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。参见:正则表达式修饰符 - 可选标志 匹配成功re.match方法返回一个匹配的对象,否则返回None。我们可以使用group(num) 或 groups() 匹配对象函数来获取匹配表达式。 匹配对象方法描述 group(num=0)匹配的整个表达式的字符串,group() 可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组。 groups()返回一个包含所有小组字符串的元组,从 1 到 所含的小组号。 实例#!/usr/bin/pythonimportreprint(re.match('www','www.runoob.com').span())# 在起始位置匹配print(re.match('com','www.runoob.com'))# 不在起始位置匹配以上实例运行输出结果为: (0, 3) None 实例#!/usr/bin/python3importreline="Cats are smarter than dogs"matchObj=re.match(r'(.*) are (.*?) .*',line,re.M|re.I)ifmatchObj:print("matchObj.group() :",matchObj.group())print("matchObj.group(1) :",matchObj.group(1))print("matchObj.group(2) :",matchObj.group(2))else:print("No match!!")以上实例执行结果如下: matchObj.group() : Cats are smarter than dogs matchObj.group(1) : Cats matchObj.group(2) : smarter re.search方法re.search 扫描整个字符串并返回第一个成功的匹配。函数语法: re.search(pattern, string, flags=0) 函数参数说明: 参数描述 pattern匹配的正则表达式 string要匹配的字符串。 flags标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。参见:正则表达式修饰符 - 可选标志 匹配成功re.search方法返回一个匹配的对象,否则返回None。我们可以使用group(num) 或 groups() 匹配对象函数来获取匹配表达式。 匹配对象方法描述 group(num=0)匹配的整个表达式的字符串,group() 可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组。 groups()返回一个包含所有小组字符串的元组,从 1 到 所含的小组号。 实例#!/usr/bin/python3importreprint(re.search('www','www.runoob.com').span())# 在起始位置匹配print(re.search('com','www.runoob.com').span())# 不在起始位置匹配以上实例运行输出结果为: (0, 3) (11, 14) 实例#!/usr/bin/python3importreline="Cats are smarter than dogs";searchObj=re.search(r'(.*) are (.*?) .*',line,re.M|re.I)ifsearchObj:print("searchObj.group() :",searchObj.group())print("searchObj.group(1) :",searchObj.group(1))print("searchObj.group(2) :",searchObj.group(2))else:print("Nothing found!!")以上实例执行结果如下: searchObj.group() : Cats are smarter than dogs searchObj.group(1) : Cats searchObj.group(2) : smarter re.match与re.search的区别re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。实例#!/usr/bin/python3importreline="Cats are smarter than dogs";matchObj=re.match(r'dogs',line,re.M|re.I)ifmatchObj:print("match --> matchObj.group() :",matchObj.group())else:print("No match!!")matchObj=re.search(r'dogs',line,re.M|re.I)ifmatchObj:print("search --> matchObj.group() :",matchObj.group())else:print("No match!!")以上实例运行结果如下: No match!! search --> matchObj.group() : dogs 检索和替换Python 的re模块提供了re.sub用于替换字符串中的匹配项。语法: re.sub(pattern, repl, string, count=0) 参数: pattern : 正则中的模式字符串。repl : 替换的字符串,也可为一个函数。string : 要被查找替换的原始字符串。count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。实例#!/usr/bin/python3importrephone="2004-959-559 # 这是一个电话号码"# 删除注释num=re.sub(r'#.*$',"",phone)print("电话号码 :",num)# 移除非数字的内容num=re.sub(r'/D',"",phone)print("电话号码 :",num)以上实例执行结果如下: 电话号码 : 2004-959-559 电话号码 : 2004959559 repl 参数是一个函数以下实例中将字符串中的匹配的数字乘于 2:实例#!/usr/bin/pythonimportre# 将匹配的数字乘于 2defdouble(matched):value=int(matched.group('value'))returnstr(value*2)s='A23G4HFD567'print(re.sub('(?P<value>/d+)',double,s))执行输出结果为:A46G8HFD1134compile 函数compile 函数用于编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用。语法格式为: (0, 3) None 0参数:pattern : 一个字符串形式的正则表达式flags 可选,表示匹配模式,比如忽略大小写,多行模式等,具体参数为: re.I 忽略大小写re.L 表示特殊字符集 /w, /W, /b, /B, /s, /S 依赖于当前环境re.M 多行模式re.S 即为' . '并且包括换行符在内的任意字符(' . '不包括换行符)re.U 表示特殊字符集 /w, /W, /b, /B, /d, /D, /s, /S 依赖于 Unicode 字符属性数据库re.X 为了增加可读性,忽略空格和' # '后面的注释实例实例>>>importre>>>pattern=re.compile(r'/d+')# 用于匹配至少一个数字>>>m=pattern.match('one12twothree34four')# 查找头部,没有匹配>>>printmNone>>>m=pattern.match('one12twothree34four',2,10)# 从'e'的位置开始匹配,没有匹配>>>printm None>>>m=pattern.match('one12twothree34four',3,10)# 从'1'的位置开始匹配,正好匹配>>>printm# 返回一个 Match 对象<_sre.SRE_Matchobjectat0x10a42aac0> >>>m.group(0)# 可省略 0'12'>>>m.start(0)# 可省略 03>>>m.end(0)# 可省略 05>>>m.span(0)# 可省略 0(3,5)在上面,当匹配成功时返回一个 Match 对象,其中: group([group1, …]) 方法用于获得一个或多个分组匹配的字符串,当要获得整个匹配的子串时,可直接使用 group() 或 group(0); start([group]) 方法用于获取分组匹配的子串在整个字符串中的起始位置(子串第一个字符的索引),参数默认值为 0; end([group]) 方法用于获取分组匹配的子串在整个字符串中的结束位置(子串最后一个字符的索引+1),参数默认值为 0; span([group]) 方法返回 (start(group), end(group))。 再看看一个例子:实例>>>importre>>>pattern=re.compile(r'([a-z]+) ([a-z]+)',re.I)# re.I 表示忽略大小写>>>m=pattern.match('Hello World Wide Web')>>>printm# 匹配成功,返回一个 Match 对象<_sre.SRE_Matchobjectat0x10bea83e8> >>>m.group(0)# 返回匹配成功的整个子串'Hello World'>>>m.span(0)# 返回匹配成功的整个子串的索引(0,11)>>>m.group(1)# 返回第一个分组匹配成功的子串'Hello'>>>m.span(1)# 返回第一个分组匹配成功的子串的索引(0,5)>>>m.group(2)# 返回第二个分组匹配成功的子串'World'>>>m.span(2)# 返回第二个分组匹配成功的子串(6,11)>>>m.groups()# 等价于 (m.group(1), m.group(2), ...)('Hello','World')>>>m.group(3)# 不存在第三个分组Traceback(mostrecentcalllast):File"<stdin>",line1,in<module>IndexError:nosuchgroupfindall在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。注意: match 和 search 是匹配一次 findall 匹配所有。语法格式为: (0, 3) None 1参数:string 待匹配的字符串。pos 可选参数,指定字符串的起始位置,默认为 0。endpos 可选参数,指定字符串的结束位置,默认为字符串的长度。查找字符串中的所有数字:实例importrepattern=re.compile(r'/d+')# 查找数字result1=pattern.findall('runoob 123 google 456')result2=pattern.findall('run88oob123google456',0,10)print(result1)print(result2)输出结果: (0, 3) None 2re.finditer和 findall 类似,在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回。 (0, 3) None 3参数: 参数描述 pattern匹配的正则表达式 string要匹配的字符串。 flags标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。参见:正则表达式修饰符 - 可选标志 实例importreit=re.finditer(r"/d+","12a32bc43jf3")formatchinit:print(match.group())输出结果: (0, 3) None 4re.splitsplit 方法按照能够匹配的子串将字符串分割后返回列表,它的使用形式如下: (0, 3) None 5参数: 参数描述 pattern匹配的正则表达式 string要匹配的字符串。 maxsplit分隔次数,maxsplit=1 分隔一次,默认为 0,不限制次数。 flags标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。参见:正则表达式修饰符 - 可选标志实例>>>importre>>>re.split('/W+','runoob, runoob, runoob.')['runoob','runoob','runoob','']>>>re.split('(/W+)','runoob, runoob, runoob.')['','','runoob',',','runoob',',','runoob','.','']>>>re.split('/W+','runoob, runoob, runoob.',1)['','runoob, runoob, runoob.']>>>re.split('a*','hello world')# 对于一个找不到匹配的字符串而言,split 不会对其作出分割['hello world']正则表达式对象re.RegexObjectre.compile() 返回 RegexObject 对象。re.MatchObjectgroup() 返回被 RE 匹配的字符串。start() 返回匹配开始的位置end() 返回匹配结束的位置span() 返回一个元组包含匹配 (开始,结束) 的位置正则表达式修饰符 - 可选标志正则表达式可以包含一些可选标志修饰符来控制匹配的模式。修饰符被指定为一个可选的标志。多个标志可以通过按位 OR(|) 它们来指定。如 re.I | re.M 被设置成 I 和 M 标志: 修饰符描述 re.I使匹配对大小写不敏感 re.L做本地化识别(locale-aware)匹配 re.M多行匹配,影响 ^ 和 $ re.S使 . 匹配包括换行在内的所有字符 re.U根据Unicode字符集解析字符。这个标志影响 /w, /W, /b, /B. re.X该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。 正则表达式模式模式字符串使用特殊的语法来表示一个正则表达式:字母和数字表示他们自身。一个正则表达式模式中的字母和数字匹配同样的字符串。多数字母和数字前加一个反斜杠时会拥有不同的含义。标点符号只有被转义时才匹配自身,否则它们表示特殊的含义。反斜杠本身需要使用反斜杠转义。由于正则表达式通常都包含反斜杠,所以你最好使用原始字符串来表示它们。模式元素(如 r'/t',等价于 //t )匹配相应的特殊字符。下表列出了正则表达式模式语法中的特殊元素。如果你使用模式的同时提供了可选的标志参数,某些模式元素的含义会改变。 模式描述 ^匹配字符串的开头 $匹配字符串的末尾。 .匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字符。 [...]用来表示一组字符,单独列出:[amk] 匹配 'a','m'或'k' [^...]不在[]中的字符:[^abc] 匹配除了a,b,c之外的字符。 re*匹配0个或多个的表达式。 re+匹配1个或多个的表达式。 re?匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式 re{ n}匹配n个前面表达式。例如,"o{2}"不能匹配"Bob"中的"o",但是能匹配"food"中的两个o。 re{ n,}精确匹配n个前面表达式。例如,"o{2,}"不能匹配"Bob"中的"o",但能匹配"foooood"中的所有o。"o{1,}"等价于"o+"。"o{0,}"则等价于"o*"。 re{ n, m}匹配 n 到 m 次由前面的正则表达式定义的片段,贪婪方式 a| b匹配a或b (re)G匹配括号内的表达式,也表示一个组 (?imx)正则表达式包含三种可选标志:i, m, 或 x 。只影响括号中的区域。 (?-imx)正则表达式关闭 i, m, 或 x 可选标志。只影响括号中的区域。 (?: re)类似 (...), 但是不表示一个组 (?imx: re)在括号中使用i, m, 或 x 可选标志 (?-imx: re)在括号中不使用i, m, 或 x 可选标志 (?#...)注释. (?= re)前向肯定界定符。如果所含正则表达式,以 ... 表示,在当前位置成功匹配时成功,否则失败。但一旦所含表达式已经尝试,匹配引擎根本没有提高;模式的剩余部分还要尝试界定符的右边。 (?! re)前向否定界定符。与肯定界定符相反;当所含表达式不能在字符串当前位置匹配时成功。 (?> re)匹配的独立模式,省去回溯。 /w匹配数字字母下划线 /W匹配非数 字字母下划线 /s匹配任意空白字符,等价于 [/t/n/r/f]。 /S匹配任意非空字符 /d匹配任意数字,等价于 [0-9]。 /D匹配任意非数字 /A匹配字符串开始 /Z匹配字符串结束,如果是存在换行,只匹配到换行前的结束字符串。 /z匹配字符串结束 /G匹配最后匹配完成的位置。 /b匹配一个单词边界,也就是指单词和空格间的位置。例如, 'er/b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'。 /B匹配非单词边界。'er/B' 能匹配 "verb" 中的 'er',但不能匹配 "never" 中的 'er'。 /n, /t, 等。匹配一个换行符。匹配一个制表符, 等 /1.../9匹配第n个分组的内容。 /10匹配第n个分组的内容,如果它经匹配。否则指的是八进制字符码的表达式。 正则表达式实例字符匹配 实例描述 python匹配 "python". 字符类 实例描述 [Pp]ython匹配 "Python" 或 "python" rub[ye]匹配 "ruby" 或 "rube" [aeiou]匹配中括号内的任意一个字母 [0-9]匹配任何数字。类似于 [0123456789] [a-z]匹配任何小写字母 [A-Z]匹配任何大写字母 [a-zA-Z0-9]匹配任何字母及数字 [^aeiou]除了aeiou字母以外的所有字符 [^0-9]匹配除了数字外的字符 特殊字符类 实例描述 .匹配除 "/n" 之外的任何单个字符。要匹配包括 '/n' 在内的任何字符,请使用象 '[./n]' 的模式。 /d匹配一个数字字符。等价于 [0-9]。 /D匹配一个非数字字符。等价于 [^0-9]。 /s匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ /f/n/r/t/v]。 /S匹配任何非空白字符。等价于 [^ /f/n/r/t/v]。 /w匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。 /W匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。
2018年03月23日
115 阅读
0 评论
0 点赞
2018-03-23
HTML 媒体(Media)
HTML5 服务器发送事件(Server-Sent Events)HTML 插件 HTML多媒体Web 上的多媒体指的是音效、音乐、视频和动画。现代网络浏览器已支持很多多媒体格式。什么是多媒体?多媒体来自多种不同的格式。它可以是您听到或看到的任何内容,文字、图片、音乐、音效、录音、电影、动画等等。在因特网上,您会经常发现嵌入网页中的多媒体元素,现代浏览器已支持多种多媒体格式。在本教程中,您将了解到不同的多媒体格式,以及如何在您的网页中使用它们。浏览器支持第一款因特网浏览器只支持文本,而且即使是对文本的支持也仅限于单一字体和单一颜色。随后诞生了支持颜色、字体和文本样式的浏览器,图片支持也被加入。不同的浏览器以不同的方式处理对音效、动画和视频的支持。某些元素能够以内联的方式处理,而某些则需要额外的插件。您将在下面的章节学习更多有关插件的知识。多媒体格式格式 多媒体元素(比如视频和音频)存储于媒体文件中。确定媒体类型的最常用的方法是查看文件扩展名。当浏览器得到文件扩展名 .htm 或 .html 时,它会假定该文件是 HTML 页面。.xml 扩展名指示 XML 文件,而 .css 扩展名指示样式表。图片格式则通过 .gif 或 .jpg 来识别。多媒体元素元素也拥有带有不同扩展名的文件格式,比如 .swf、.wmv、.mp3 以及 .mp4。视频格式 MP4是互联网推出新的视频格式。YouTube 推荐使用 MP4 。Flash Players 支持 MP4HTML5 支持 MP4。 格式 文件 描述 AVI .avi AVI (Audio Video Interleave) 格式是由微软开发的。所有运行 Windows 的计算机都支持 AVI 格式。它是因特网上很常见的格式,但非 Windows 计算机并不总是能够播放。 WMV .wmv Windows Media 格式是由微软开发的。Windows Media 在因特网上很常见,但是如果未安装额外的(免费)组件,就无法播放 Windows Media 电影。一些后期的 Windows Media 电影在所有非 Windows 计算机上都无法播放,因为没有合适的播放器。 MPEG .mpg .mpeg MPEG (Moving Pictures Expert Group) 格式是因特网上最流行的格式。它是跨平台的,得到了所有最流行的浏览器的支持。 QuickTime .mov QuickTime 格式是由苹果公司开发的。QuickTime 是因特网上常见的格式,但是 QuickTime 电影不能在没有安装额外的(免费)组件的 Windows 计算机上播放。 RealVideo .rm .ram RealVideo 格式是由 Real Media 针对因特网开发的。该格式允许低带宽条件下(在线视频、网络电视)的视频流。由于是低带宽优先的,质量常会降低。 Flash .swf .flv Flash (Shockwave) 格式是由 Macromedia 开发的。Shockwave 格式需要额外的组件来播放。但是该组件会预装到 Firefox 或 IE 之类的浏览器上。 Mpeg-4 .mp4 Mpeg-4 (with H.264 video compression) 是一种针对因特网的新格式。事实上,YouTube 推荐使用 MP4。YouTube 接收多种格式,然后全部转换为 .flv 或 .mp4 以供分发。越来越多的视频发布者转到 MP4,将其作为 Flash 播放器和 HTML5 的因特网共享格式。 最新的 HTML5 标准只支持 MP4, WebM, 和 Ogg 视频格式。 声音格式MP3是一种音频压缩技术,其全称是动态影像专家压缩标准音频层面3(Moving Picture Experts Group Audio Layer III),简称为MP3。它被设计用来大幅度地降低音频数据量。如果你的站点是音乐类型的,你可以选择mp3格式。 格式 文件 描述 MIDI .mid .midi MIDI (Musical Instrument Digital Interface) 是一种针对电子音乐设备(比如合成器和声卡)的格式。MIDI 文件不含有声音,但包含可被电子产品(比如声卡)播放的数字音乐指令。点击这里播放 The Beatles。因为 MIDI 格式仅包含指令,所以 MIDI 文件极其小巧。上面的例子只有 23k 的大小,但却能播放将近 5 分钟。MIDI 得到了广泛的平台上的大量软件的支持。大多数流行的网络浏览器都支持 MIDI。 RealAudio .rm .ram RealAudio 格式是由 Real Media 针对因特网开发的。该格式也支持视频。该格式允许低带宽条件下的音频流(在线音乐、网络音乐)。由于是低带宽优先的,质量常会降低。 Wave .wav Wave (waveform) 格式是由 IBM 和微软开发的。所有运行 Windows 的计算机和所有网络浏览器(除了 Google Chrome)都支持它。 WMA .wma WMA 格式 (Windows Media Audio),质量优于 MP3,兼容大多数播放器,除了 iPod。WMA 文件可作为连续的数据流来传输,这使它对于网络电台或在线音乐很实用。 MP3 .mp3 .mpga MP3 文件实际上是 MPEG 文件的声音部分。MPEG 格式最初是由运动图像专家组开发的。MP3 是其中最受欢迎的针对音乐的声音格式。期待未来的软件系统都支持它。 HTML5 的最新标准支持 MP3, WAV, 和 Ogg 音频格式。
2018年03月23日
170 阅读
0 评论
0 点赞
2017-03-28
转 免费版Google Apps添加新域名教程
我之前一直很纳闷,为什么开通了免费版 google apps 的域名在拍卖时都会贵一点。原来这其中是有玄机的,因为 google 已经关闭了免费版 google apps 的注册,所以之前注册的免费版 google apps 就显得弥足珍贵了。根据注册时间的不同,免费版 google apps 的用户数从 50 到 1000 不等。收购那些已注册免费版 google apps 的域名可以干什么呢?没错,就是添加自己的域名。这样就又可以愉快地间接免费使用 google apps 啦。这么愉快的事情,当然要分享出来,下面请看大屏幕的成功截图。 1、事先准备一个已经注册过免费 google apps 的域名;一个待添加的新域名(域名后缀不能是 cn, com.cn, net.cn, org.cn 以及一些免费的二级域名)。2、登录 google admin登录已经注册免费 google apps 的域名的管理员帐号,网址如下:https://admin.google.com/xxxx.com/将后面的 xxxx.com 换成你自己的已注册域名。登录后的界面,请看大屏幕(点击图片看大图): 3、添加新域名演示界面是英文的,不妨碍理解的。点击“More controls”,出来的界面里选择“Domains”,进入 Domains 界面后,点击按钮“Add a domian or a domain alias”,跳出如下界面(点击图片看大图): 选择“Add another domain”,并输入待添加的域名。再点击“Continue and verify domain ownership”。4、验证域名所有权进入如下界面(点击图片看大图): 选择 Other ,会让你选择一种域名验证方式,这里选 TXT record 。根据提示,去你的域名管理处去设置好 TXT 记录,以证明此域名确实属于你的。(设置步骤大同小异,此过程省略)5、添加MX记录验证完域名所属权后,就会跳转到 Domains 界面,在此界面下再次点击待添加域名,设置 MX 记录。(设置步骤大同小异,此过程省略)MX记录一般如下:ASPMX.L.GOOGLE.COM. 1 ALT1.ASPMX.L.GOOGLE.COM. 5 ALT2.ASPMX.L.GOOGLE.COM. 5 ASPMX2.GOOGLEMAIL.COM. 10 ASPMX3.GOOGLEMAIL.COM. 10 6、添加新用户google 验证 MX 记录一般需要 5-10 分钟左右,当你在 Domains 界面看到你的新域名的 status 处于 Active 的时候,就表示已经大功告成了。回到主界面,在“Users”界面里,添加你的新用户吧。参考链接:https://support.google.com/a/answer/53295?hl=en转载请注明:秋水逸冰 » 免费版Google Apps添加新域名教程
2017年03月28日
229 阅读
0 评论
0 点赞
1
2
3