生 物 信 息 学 Bioinformatics 巩晶 癌症研究中心 山东大学 医学院 2015.12.11.

Slides:



Advertisements
Similar presentations
Linux 环境及 Shell 程序 操作系统实验 1. 二、 Shell 编程与进程通信 常用 shell 命令 文件及文件属性操作 ls 、 cp 、 mv 、 rm ln 、 ln –s 、 chmod 、 groupadd 、 useradd 输入输出操作 echo 、 cat >> 、
Advertisements

Web 开发基础 第二章 表格与页面布局. 回顾 Internet 和 万维网 网页的工作原理 网页的基本结构 标记及其属性 段落标记,图片标记,超级链接标记 相对路径,绝对路径,物理路径.
HyperText Markup Language
《计算机网络技术》 动态网页制作技术 常用HTML控件课程积件 杨 姝.
第六章 网页设计与制作基础.
ASP.NET 網頁製作教本 -- 從基本語法學起
上課教材 Database Slide Windows筆電 (32 bit)
第5章 HTML 標籤介紹.
佛山科学技术学院 第7章 HTML Internet及多媒体应用.
第8讲 HTML与PHP基础 静态网页 vs. 动态网页.
动态网页制作 第1章 HTML语言1.
HTML概念 HTML(Hyper Text Markup Language 超文本标识语言) 是一种用来制作超文本文档的简单标记语言。
Web Programming 網際網路程式設計
教学内容 1、演示并讲解用表格布局制作的网页 2、用表格制作网页.
DREAMWEVAER MX 2004入门 楼斌 BBS ID:lou 生命科学学院
网页 设计与制作.
2 HTML5與CSS3 2-1 HTML5的頁面結構 2-2 HTML5的文字編排標籤 2-3 HTML5的圖片與超連結標籤
第五单元课1-3 层叠样式表.
模块1 网页设计基础 实训1 体验HTML文档 1.1 网页基础知识 1.2 网站配色方案 1.3 网站设计常用软件
使用HTML製作個人網頁 柴惠敏 台灣大學 物理治療學系.
第二部分 HTML语言控制 本次课的主要内容: 1、认识网页文件的结构 2、HEAD、TITLE、BODY等基本标记符的使用
HTML 語法教學 授課:彭穎聰 老師.
HTML簡介、文字的變化、超連結的使用 主講:朱漢琳.
CT212 (02/03)-Network Programming and design
第二章 網際網路網頁的設計.
HTML.
ASP动态网页设计实用教程 主讲教师: 开课单位:.
第3章 超文本标记语言(HTML) 3.1 基本结构标记 3.2 文本格式标记 3.3 超链接标记<A></A>
建國技術學院資訊管理學系 饒瑞佶 2004/7/5 彰化縣政府補助辦理網頁設計資料庫應用班 建國技術學院資訊管理學系 饒瑞佶 2004/7/5.
PHP程式設計 二、HTML & PHP基本語法 建國科技大學 資訊管理學系 饒瑞佶.
标准规范 2.自己偏好习惯 3.讨论/建议 永远遵循同一套编码规范 -- 不管多少人同时参与编码,所有代码都应该看上去像是一个人编写的一样。
第 2 章 必備的 HTML 與 CSS 重點.
第四章 網頁表單與資料傳遞.
Vi 編輯器的練習的說明 因為本課程的實習課是Unix 的工作環境。過去的經驗告訴我,如果你完全未用過Unix 的指令及其 vi 編輯器,你將很難跟上進度,希望學員一定要預先作練習。我們提供了Unix 指令的簡介,以及 vi 編輯器的介紹 ( 請参閱網站中的13&14-unix.pdf 為其講義;13-unix.exe、14-fortran.exe則為其課程錄影.
Introduction to PHP part3
生 物 信 息 学 Bioinformatics 巩晶 癌症研究中心 山东大学 医学院
2018/11/11 CGI程式設計進階 (for UNIX Perl) 國立中央大學電算中心 陳慶彥.
第 2 章 上機使用 Unix/Linux 內容: 操作介面 主機連線 登入主機 認識系統環境 使用者常用命令.
HTML網頁設計 Chapter 建置網站的流程 16-2 從事網頁設計相關的程式語言 16-3 認識HTML語法
Chap 3 堆疊與佇列 Stack and Queue.
HTML 钟晖云 QQ:
JSP自定义标签技术的分析与应用 ----Custom Tag 的分析与应用
Ch.13 HTML網頁實作.
第2章 超文本标记语言HTML.
Linux 基础与常用命令简介 生物信息学培训班 杭州,2018年1月18日 周银聪.
第 7 章 陣列 (Array).
Cookie 存取Cookie Cookie有效時間 Session 存取Session session 函數
8 网页制作基础知识 赵国庆 博士 北京师范大学教育技术学院
JavaScript 靜宜大學 資管系 楊子青.
Linux基本操作 程設實習課 ( 2/25 ).
HTML & CSS.
主讲:陶建平 华中科技大学网络与计算中心
网 站 设 计 与 建 设 Website design and developments
Cookie 存取Cookie Cookie有效時間 Session 存取Session session 函數
PHP 變數、常數與運算子 變數 常數 運算子
网站设计 前端 选择器(复习),表单.
网页设计与制作教程第5版 机械工业出版社同名教材 配套电子教案.
UNIX指令-檔案與目錄操作.
杨振伟 清华大学 第一讲:Linux环境下编程(1)
HTML 103 互動式網頁 助教:黃毓瑩.
第6章 PHP的数据采集.
Lab01 工作站&Linux操作 日期:2011/03/07.
如何連上工作站 WorkStations: 1. Solaris 2. Linux Use X-Win32 (for Solaris)
第6章 层次原理图设计和多通道技术: 重点内容: 掌握自上而下的层次原理图设计方法 掌握自下而上的层次原理图设计方法
第2章 块级标签 经济管理学院.
杨振伟 清华大学 第一讲:Linux环境下编程(1)
劉庠宏、林合治編著 國立高雄大學應用數學系 2005年3月1日
第4章 JSP动态网页设计基础 教学目标 教学重点 教学过程 2019年10月21日.
表单页面 表单是用户利用浏览器对Web站点网络数据库进行查询的一种界面,用户利用表单可以输入信息或选择选项等,然后将这些信息提交给服务器进行处理。通过表单,既可以将浏览器的信息发送到Internet服务器上,同时表单也可以使用户与站点的浏览者交互或从浏览者那里收集信息。它是网页的设计者和使用者相互交流的工具。表单对象包括文本域(单行、多行、密码)、列表、菜单、复选框、单选框、按钮等。
教师:李金双 网页制作 教师:李金双
Presentation transcript:

生 物 信 息 学 Bioinformatics 巩晶 癌症研究中心 山东大学 医学院 2015.12.11

第九章 编程基础 网页制作

9.1 Linux系统 Linux 是什么? ----- Linux是一个操作系统! …… ……

可视化窗口操作 命令行操作

9.1.1 Linux系统 - 远程连接 Linux 远程连接 Linux 从Windows远程登录Linux: PuTTY:命令行操作 1 1. Host Name (or IP address) Eg. tollml.lrz.de Host name 1.51.215.28 IP address 2. User name 3. Password 1 2 3

远程连接 Linux 从Windows远程登录Linux: WinSCP:文件传递

9.1.1 Linux系统 - 远程连接 Linux 远程连接 Linux 从Linux远程登录另一个Linux: 终端(terminal)是向计算机发出命令的一个窗口。类似于Windows下的DOS命令窗口。 远程登录命令:ssh username@hostname 退出远程登录 将当前机器上的文件拷贝到另一机器上

9.1.2 Linux系统 - Linux基本命令 0. ls命令=Dos里的dir 几个基础的“热身”命令 1. 显示日期与时间的命令:date 2. 显示日历的命令:cal 3. 简单好用的计算器:bc +加,-减,*乘,/除,^指数,%余数 1/3为什么等于0?答:bc默认只输出整数部分 通过scale=number设定小数点后位数 输入quit退出 cal的语法:cal [[month] year]

9.1.2 Linux系统 - Linux基本命令 [Tab]键具有“命令补全”与“文件补齐”的功能。 重要的热键 输入ca,在a后紧接着按两次[Tab]键,则所有以ca开头的命令都被显示出来了。 输入ls .bash后按两次[Tab]键,则所有以.bash开头的文件名都会被显示出来。 想不起来完整的文件名或命令名时,输入开头的几个字母再按下[Tab]键,会自动帮你补齐或者给你足够的提示。好好利用[Tab]键,可以让你避免 很多输入错误的机会。 重要的热键

9.1.2 Linux系统 - Linux基本命令 [Ctrl]-c 命令终止按键 (Ctrl和c一起按) 重要的热键 出现一堆东西在刷屏 输入find /后,系统会开始跑一些东西,此时按下[Ctrl]-c组合键,命令立刻被终止了。 如果你在Linux下输入了错误的命令或参数,有的时候这个命令或程序会不停的运行,这个时候按[Ctrl]-c组合键就可以让当前的程序“停下来”。 注意:如果你正在运行比较重要的命令或程序,还是等它自己跑完了停下来再说吧,别随便用这个组合键,不然你的工作就白做了。 [Ctrl]-d 输入结束按键 (Ctrl和d一起按) 可以代替exit的输入。

9.1.2 Linux系统 - Linux基本命令 查命令,找“男人” 某个命令不会用,比如date,输入“man date”就会出现详细的命令说明。这个man是manual的简写。 按PgUp,PgDn上下翻页,按q退出

9.1.2 Linux系统 - Linux基本命令 目录与路径 几个常见的处理目录的命令: 用符号代表的特殊目录: . 代表此层目录 cd:切换目录 pwd:显示当前目录 mkdir:创建一个新的目录 rmdir:删除一个空的目录 用符号代表的特殊目录: . 代表此层目录 .. 代表上一层目录 - 代表前一个工作目录 ~ 代表“当前用户”所在的主文件夹 / 代表根目录 绝对路径:由根目录“/”写起 相对路径:不是由根目录“/”写起 仅输入cd,代表的就是“cd ~”的意思,即,回到自己的主文件夹。

9.1.2 Linux系统 - Linux基本命令 目录与路径 几个常见的处理目录的命令: cd:切换目录 pwd:显示当前目录 mkdir:创建一个新的目录 rmdir:删除一个空的目录 mkdir 加了 –p 这个参数后,可以自行创建多层目录。 rmdir 加了–p 这个参数后,可以连通上层“空的”目录一起删除。

9.1.2 Linux系统 - Linux基本命令 文件与目录管理 几个常见的命令: ls :查看文件与目录 参数: -a :全部的文件,连同隐藏文件(开头为.的文件)一起列出来 -A :全部的文件,连同隐藏文件,但不包括.与..这两个目录 -l :列出文件的详细信息,包括属性、权限、文件大小、日期等 -hl :等同于-l,只是文件大小以人类较易读的方式(GB,KB等)列出 -R :连同子目录内容一起列出来,等于该目录下的所有文件都会显示 -S :以文件容量大小排序,ls默认以文件名排序 -t :以时间排序 ……

9.1.2 Linux系统 - Linux基本命令 文件与目录管理 几个常见的命令: cp :复制 -r :用于复制整个文件夹(包括文件夹里的内容) rm :删除 参数: -i :若目标文件已经存在,在删除时会先询问操作的进行 -r :用于删除整个文件夹(无论是否是空文件夹) (rmdir –p 只能删除空的文件夹)

9.1.2 Linux系统 - Linux基本命令 文件与目录管理 几个常见的命令: 把文件"test.txt"移动到文件夹"test1" mv :移动文件或更名 把文件"test.txt"移动到文件夹"test1" 将文件"test.txt"更名为"test1.txt" 复制文件"test1.txt",新文件为"test2.txt" 把文件"test1.txt"和"test2.txt"同时移动到文件夹"test2"里 1 2 3 4

9.1.2 Linux系统 - Linux基本命令 文件内容查阅 几个常见的命令: cat :将文件的第一行到最后一行连续显示在屏幕上。加参数"-n"可以 打印出行号,连同空白行也会有行号。 tac :与cat相反,将文件的最后一行到第一行反向在屏幕上显示出来。 more :一页一页翻动。空格:向下翻一页;回车:向下滚动一行;q: 退出。 less :一页一页翻动。空格:向下翻一页;PgDn:向下翻一页;PgUp: 向上翻一页;q:退出。 head :取出前面几行。默认情况显示前10行。加上参数"-n number" 可以显示前number行。 tail :取出后面几行。默认情况显示后10行。加上参数"-n number" 可以显示后number行。

9.1.2 Linux系统 - Linux基本命令 创建、修改一个纯文本文件 几个常见的命令: vi :程序编辑器 1. 2. 按"a",进入"Insert"模式,即输入模式。 3. 输入文本内容 4. 输入结束后,按"Esc",退出"Insert"模式。 5. 输入":wq"回车,保存退出。若只输入":q",则退出,不保存对文 件内容的更改。

9.2 Perl语言 什么是Perl语言 Practical Extraction and Report Language 直译语言(Interpreted Language) - 特别适合字符串(序列)处理和文件写入写出 - 全面支持正则表达式

9.2.1 Perl语言 - 基本语法 如何运行Perl程序 从Perl官网下载ActivePerl 从命令窗口运行Perl,比如window系统下的Dos命令窗口 创建一个文本文件,命名为script_name.pl 把下面这句话放到Perl程序的第一行 #!/usr/bin/perl 运行Perl程序 perl script_name.pl

9.2.1 Perl语言 - 基本语法 基本符号 每条语句后面必须有分号";" 注释前面加"#",只对单行有效 变量: 不用提前声明变量,随用随定义 不用定义变量的类型,赋值后,程序会自动判断 变量名区分大小写,以字母开头,不能有特殊字符 变量名前面加"$",用"="赋值,比如 $scalar = expression

9.2.1 Perl语言 - 基本语法 字符串上的引号 ’(单引号) 单引号里的内容完全逐字逐句地直译 ”(双引号) 变量和转义字符有延伸的含义 ` (反引号) 执行反引号中的命令,命令执行后的 输出结果将作为这个字符串的返回值 $output='Hello\nWorld!'; print $output; $output="Hello\nWorld!"; print $output; `java -version`;

9.2.1 Perl语言 - 基本语法 比较操作符 String Operation Arithmetic lt less than < gt greater than > eq equal to == le less than or equal to <= ge greater than or equal to >= ne not equal to != cmp compare, return 1, 0, -1 <=> 0 1 2 3 4 5 6 7 8 9 符号 A B C … X Y Z a b c … x y z 由 小 到 大

9.2.1 Perl语言 - 基本语法 逻辑操作符 Operator Operation ||, or logical or &&, and logical and !, not logical not xor logical xor a xor b = (a' and b) or (a and b')(a'为非a)

9.2.1 Perl语言 - 基本语法 字符串操作符 Operator Operation . string concatenation 字符串连接 x string repetition 字符串重复复制 .= concatenation and assignment 字符串连接并赋值 $string1 = "potato"; $string2 = "head"; $newstring = $string1 . $string2; #"potatohead" $newerstring = $string1 x 2; #"potatopotato" $string1 .= $string2; #"potatohead"

9.2.2 Perl语言 - 函数(Function) Perl函数用专门的名字定义,比如: print,chop,close 等 函数的参数以逗号相隔写在圆括号里 - 逗号是必须写的 - 圆括号不是必须写的 - 但是小心!不写圆括号很容易造成语句混乱

指令:length 语法:length($string) 说明:求出字符串$string的字节(bytes)值。 示例:$string="Perl5"; $size=length($string); #这时$size=5; 指令:substr 语法:substr($string,offset,length) offset代表起始字符的位置,length代表引用的字符串长度,如果省略length则代表从起始值到字符串的最后一个字符长度。而offset如果是负值的话,就会从字符串右边开始指定字符。(字符串中第一个字符的位置为0,不是1) 示例: $s=substr("perl5",2,2); #这时$s="rl"; $s=substr("perl5",2); #这时$s="rl5"; $s=substr("perl5",-2,2); #这时$s="er"; 指令:index 语法:index($string,$substring,position) $substring是要寻找的字符;position代表从哪一个位置开始寻找,假如省略position就从头开始找起。 说明:返回所要找寻的字符在一字符串$string中的位置,如果在字符串中找不到字符的话,则会返回-1这个值。 示例: $s=index("perl5","p"); #这时$s=0 $s=index("perl5","l",2); #这时$s=3 $s=index("perl5","pell"); #这时$s=-1

9.2.3 Perl语言 - 数组(Array) Array就是一个被命名了的list - 可以动态的赋值并被保存 - 起始元素的index为0 数组操作符 - @:一个数组或数组的一部分 - $:数组中的一个元素 例如: @arr = ("A", "T", "C", "G"); print $arr[2]; 打印2号元素的值 print @arr[1,3]; 打印1号到3号元素的值 print $arr[-2]; 打印从右往左数2号元素的值 print @arr; 打印array的reference地址 print “@arr”; 打印array中所有元素的值 $x = @arr; 返回array中元素的个数

指令:scalar 语法:scalar(@array) 说明:返回数组@array中的元素的个数。 示例:@back =("A","B","C"); $num=scalar(@back); #这时$num=3; 指令:reverse 语法:reverse(@array) 说明:将数组@array中的元素由后到前重新排列。 示例:@back=("A","B","C","D","E"); @back=reverse(@back); #这时@back=("E","D","C","B","A"); 指令:sort 语法:sort(@array) 说明:将数组中的元素由小到大排序,如果要由大到小排序的话,要加上reverse这个函数。 示例: @abc=("d","b","c","a"); @abc=sort(@abc); #这时@abc=("a","b","c","d"); @abc=reverse(sort@abc); #这时@abc=("d","c","b","a"); 指令:pop 语法:pop(@array) 说明:将数组(@array)的最后一个元素删除,并将删除的元素返回。 示例:@array=("one","two"); $rm=pop(@array); #这时@array=("one");而$rm="two";

指令:shift 语法:shift(@array) 说明:将数组@array的第一个元素删除,并将删除的元素返回。 示例:@array=("one","two"); $rm=shift(@array); #这时@array=("two");而$rm="one"; 指令:push 语法:push(@array,$newelement/@newarray) 说明:在数组@array的最后加新的元素到数组@array中。 示例:@array=("one","two"); push(@array,"three"); #这时@array=("one","two","three") 指令:unshift 语法:unshift(@array,$newelement/@newarray) 说明:在数组@array的第一个元素前附加新的元素到数组@array中。 示例:@array=("one","two"); unshift(@array,"three"); #这时@array=("three","one","two") 指令:join 语法:join($string,@array) 说明:在一数组@array的元素之间加上一指定的字符$string,并将结果返回。 示例:@array=("one","two","three"); $total=join(":",@array); 这时$total="one:two:three";

Array Example #!/usr/bin/perl # Simple List operations # Address an element in the list @stringInstruments = ("violin","viola","cello","bass"); @brass = ("trumpet","horn","trombone","euphonium","tuba"); $biggestInstrument = $stringInstruments[2]; print("The biggest instrument: ", $biggestInstrument, "\n"); # Join elements at positions 0, 1, 2 and 4 into a white-space delimited string print("orchestral brass: ", join(" ",@brass[0,1,2,4]), "\n"); ################################ @unsorted_num = ('3','5','2','1','4'); @sorted_num = sort( @unsorted_num ); # Sort the list print("Numbers (Sorted, 1-5): ", @sorted_num, Array Example #Add a few more numbers @numbers_10 = @sorted_num; push(@numbers_10, ('6','7','8','9','10')); print("Numbers (1-10): ", @numbers_10, "\n"); # Remove the last pop(@numbers_10); print("Numbers (1-9): ", # Remove the first shift(@numbers_10); print("Numbers (2-9): ", # Combine two ops print("Count elements (2-9): ", scalar( @numbers_10 ),

9.2.4 Perl语言 - if语句 if 和 else 可以不成对出现,即,可以只有if没有else elsif可以有许多个 #!/usr/bin/perl $a=10; $b=15; if ($a > $b) { print "a=$a is bigger!"; } else { print "b=$b is bigger!"; } ########### if ($a == 5) { print '$a is 5'; } elsif ($a == 10) { print '$a is 10'; } elsif ($a == 15) { print '$a is 15'; } { print '$a is not (5 or 10 or 15)'; } if 和 else 可以不成对出现,即,可以只有if没有else elsif可以有许多个

9.2.5 Perl语言 - for语句 foreach语句中,用$_代表抓到的每一个当前变量。 #!/usr/bin/perl $n=scalar(@a); for ($i=0; $i<$n; $i++) { print "No.$i = $a[$i]\n";} ############ foreach (@a) { if ($_ % 2 == 0) { print "$_ is even. \n";} else { print "$_ is odd. \n";} } foreach语句中,用$_代表抓到的每一个当前变量。

9.2.6 Perl语言 - 模式匹配(Pattern Matching) - pattern写在斜线中:/pattern/ 匹配操作符 - 查看pattern是否匹配: =~ - 查看pattern是否不匹配: !~ 匹配和替换 - 匹配:m/pattern/ 或者 /pattern/ - 替换:s/pattern1/pattern2/

9.2.6 Perl语言 - 模式匹配(Pattern Matching) 模式匹配 –复习 升级的 BLAST: PHI-BLAST PHI-BLAST (Pattern-Hit Initiated BLAST, 模式识别BLAST) : 能 找到与查询序列相似的并符合某种模式(pattern)的蛋白质序列。 符合模式: [LIVMF]-G-E-x-[GAS]-[LIVM]-x(3,7) Yes: VGEAAMPRI No: VGEAAYPRI 模式序列可能代表是一个酶的活性位点,一个 蛋白质家族的结构或者功能域的氨基酸序列 。

9.2.6 Perl语言 - 模式匹配(Pattern Matching) 模式匹配 –转义符 [] 字符集中的任意一个 Eg. /[0123456789]/ 表示0-9是个数字中的任意一个 \d 0-9十个数字中的任意一个 Eg. /\d/ = /[0123456789]/ = /[0-9]/ \D 不是0-9是个数字中的任意一个 Eg. /\D/ = /[^0-9]/ \w 任何字母、数字和下划线中的任何一个 Eg. /\w/ = /[_0-9a-zA-Z]/ \W 不是字母、数字和下划线中的任何一个 Eg. /\W/ = /[^_0-9a-zA-Z]/ \s ”空格”, ”\r”,”\n”,”\t”,”\f”中的任何一个 Eg. /\s/ = /[ \r\t\n\f]/ \S 不是”空格”, ”\r”,”\n”,”\t”,”\f”中的任何一个 Eg. /\S/ = /[^ \r\t\n\f]/

^ 在字符集中 ^ 表示补集,在一般的模式中表示以什么开头 Eg. /[^123]/ 表示”不是1或2或3”;/^123/ 表示以”123”开头 $ 表示以什么结尾 Eg. /123$/ 表示以”123”结尾 . 匹配任何一个字符 Eg. /a.c/ 表示匹配1个a,接任何一个字符,再接1个c * 匹配0或更多次 Eg. /ab*c/ 表示匹配1个a,接0或更多个b,再接1个c + 匹配1或更多次 Eg. /ab+c/ 表示匹配1个a,接1或更多个b,再接1个c ? 匹配1或0次 Eg. /ab?c/ 表示匹配1个a,接0或1个b,再接1个c {count}匹配count次 Eg. /ab{3}c/ 表示匹配1个a,接3个b,再接1个c {min,} 匹配至少min次 Eg. /ab{3,}c/ 表示匹配1个a,接至少3个b,再接1个c {min,max} 匹配至少 min次,但不超过max次 Eg. /ab{3,5}c/ 表示匹配1个a,接3到5个b,再接1个c

9.2.6 Perl语言 - 模式匹配 模式匹配 –修饰词 i 忽略大小写 Eg. $s =~ /abc/i 表示匹配”abc”,无论大小写 Eg. $s =~ s/a/A/g 表示把$s中所有”a”都替换成”A” Eg. $s =~ s/a/A/ 表示把$s中匹配的第一个”a”替换成”A” x 忽略模式中的换行 Eg. $s =~ /ab 和 $s =~ /abc/ 是一样的 c/x /[a-z]+.\d{2,4}\s+[^XY]\s2013$/ $seq1 = "asd-345 A 2013" $seq2 = "sd-sss ws2013"

9.2.6 Perl语言 - 模式匹配 模式匹配 – 正则表达式 (regular expression) 可以用()捕获特定的模式 并依次存入 $1 $2 $3 中 $output="Robert 27 m\n 2013"; if ($output =~ m/([a-z]+)\s+(\d{1,3})\s+[mf]\s+2013$/) { print "name: $1\nage: $2"; }

9.2.7 Perl语言 - 文件写入写出(File I/O) #续写文件 ">>" open(FH, ">>test2.pdb"); print FH $get[1]; close FH; #覆盖写文件 ">" open(FH, ">test2.pdb"); #读入文件 open(FH,"test.pdb"); @get=<FH>; close FH; print $get[0]; #写入文件 open(FH, ">test2.pdb"); print FH $get[0];

9.2.7 Perl语言 - 文件写入写出(File I/O) #屏幕输入 print "What's your name?\n"; $name = <STDIN>; chomp($name); print "Hello $name!"; #$name由屏幕输入赋值 #去掉$name末尾的\n

9.2.8 Perl语言 - Web连接 #!/usr/bin/perl use LWP::Simple; $url='http://www.uniprot.org/uniprot/Q6GV17.fasta'; $content = get $url; die "Couldn't get $url" unless defined $content; print $content; ###### open (FH, ">seq.fasta"); @ids=("Q6GV17","Q9BXR5","B3Y669","C0LSK8"); foreach (@ids) { $url="http://www.uniprot.org/uniprot/$_.fasta"; print FH "$content"; } close FH;

9.2.8 Perl语言 - Web连接 #!/usr/bin/perl use LWP::Simple; print "Please enter the Uniprot ID:\n"; $id = <STDIN>; chomp $id; $url="http://www.uniprot.org/uniprot/$id.fasta"; $content = get $url; die "Couldn't get $url" unless defined $content; @get1 = split(/\n/,$content); shift @get1; $sequence = join("",@get1); print "Which amino acid?\n"; $aa = <STDIN>; chomp $aa; $count_aa=0; while ($sequence =~ m/$aa/g) { $count_aa++;} $len = length($sequence); $aa_percent=$count_aa/$len; print "$aa in $id: $aa_percent";

9.3 网页制作 - HTML HTML语言(Hyper Text Markup Language,超文本标记语言):描述信息所有的规范标签,这些标签告诉浏览器怎样显示这个页面。 源文件 网页

9.3.1 网页制作 - HTML基本语法 标签的基本结构: <Tag> </Tag> Eg: <h1>Hello World!</h1> <br></br> 等同于 <br/> 标签之间可以嵌套(一对标签里包含另一对标签): <Tag1> <Tag2> </Tag2> </Tag1>  <Tag1> <Tag2> </Tag1> </Tag2>  这样是不对的 Eg: <h1><i>Hello World!</i></h1> 标签的属性: <Tag attribute1=“” attribute2=“”> </Tag> Eg: <font color=“blue” size=“3”>Hello World!</font> <h1 align=“center”>Hello Word</h1> 注释标签: <!--Comments--> Eg: <!--这里是注释,注释可以分 很多行业-->

9.3.1 网页制作 - HTML基本语法 HTML文档的结构: <HTML> <HEAD> <!--头部信息--> <title>My Site</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"/> </HEAD> <BODY> <!--文档主体,正文部分--> </BODY> </HTML>

9.3.2 网页制作 - HTML布局标签 标题标签:六个等级,H后数越小,标题字号就越大。 段落及换行标签: <H1></H1>, <H2></H2>, … , <H6></H6> 段落及换行标签: 换行标签:<BR/> 段落标签:<p></p>, <p align=“center”></p> align=“center” or ”left” (默认) or ”right” 水平线标签:<HR/> size:水平线宽度 width:水平线的长 align:水平线对齐方式 color: 水平线颜色

9.3.3 网页制作 - HTML文字标签 文字格式标签:<FONT></FONT> 文字效果标签: size: 文字大小,1-7,缺省是3 face: 文字字体,Eg:Arial,Verdana, … color: 文字颜色 文字效果标签: <b></b> 加粗 <i></i> 斜体 <u></u> 下划线 <tt></tt> 打印机字体 <blink></blink> 闪烁

9.3.4 网页制作 - HTML项目符号标签 项目符号标签: <ul> <dl> <li>第一项</li> <dt>第一项</dt> <li>第二项</li> <dd>第一项是关于老鼠</dd> …… <dt>第二项</dt> <li>第n项</li> <dd>第二项是关于大象</dd> </ul> </dl> <ul></ul> 以图形为项目符号,默认“圆点” <ol></ol> 以数字为项目符号 <dl></dl> 可以给每一个列表项再加上一段说明性文字

9.3.5 网页制作 - HTML表格标签 表格标签: 用valign设定上下对齐(top, middle, bottom)。 <table border=“1” width=“300” height=“300”> <th>姓名</th> <th>性别</th> <tr> <td>张三</td><td>女</td> </tr> <td>李四</td><td>男</td> </table> <table>定义了一个表格。 <th>定义了标题格。 <tr>定义一行。<td>定义了一行中的一列。 <td>可以用align设定左右对齐(left, center, right), 用valign设定上下对齐(top, middle, bottom)。

表格标签: <table border="1" width="300" height="300"> <th>姓名</th> <th>性别</th> <tr> <td align=“center”><b>张三</b></td> <td>女</td> </tr> <td align="center" colspan="2">李四</td> </table> <td align=“center” rowspan=“2”><b>张三</b></td> <td>男</td>

9.3.6 网页制作 - HTML超链接标签 超链接标签: 链接到外部地址:<a href="http://www.sdu.edu.cn">山东大学</a> 链接到内部地址:<a href=“index02.html”>本网站的另一个网页</a> 链接到上一级目录的网页:<a href=“../index03.html”>上一个</a> 链接到当前网页的某一个位置: <a name="top"/> <a href="#top">返回页首</a> 可利用target=“_blank”属性另网页在新的窗口中打开: <a href="http://www.sdu.edu.cn" target="_blank">山东大学</a> 若不加此项,则网页在当前窗口打开。

9.3.7 网页制作 - HTML表单标签 表单标签: 源文件 test.html 文件 网页 <html> <body> <FORM action="../cgi-bin/test.cgi" method="post" encType="multipart/form-data"> <input name="name" size="40"/> <input type="submit" name="submit" value="submit"/> </FORM> </body> </html> 源文件 test.html 文件 网页

9.3.7 网页制作 - HTML表单标签 表单标签: 源文件 test.cgi 文件 网页 #!/usr/bin/perl use CGI; $cgi = new CGI; $name = $cgi->param("name"); print $cgi->header( -type=> "text/html"); print "<p>Hallo $name!</p>"; 源文件 test.cgi 文件 网页

9.3.7 网页制作 - HTML表单标签 表单标签: name: <input name="name" size=“40"/> <input type="radio" name="sex" value="male" /> Male <br/> <input type="radio" name="sex" value="female" /> Female <input type="checkbox" name="fruit" value="apple">apple<br/> <input type="checkbox" name="fruit" value="mango">mango<br/> <textarea name="comment" rows="3" cols="20"> xxx </textarea> <input type="submit" name="submit" value="submit"/>