博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础入门
阅读量:6390 次
发布时间:2019-06-23

本文共 4623 字,大约阅读时间需要 15 分钟。

hot3.png

#数据类型:5种标准数据类型

  • 1:数字 1, 2

  • 2:字符串 string = "helloword" string[0:2] 等价于substring(0,2);

  • 3:list lista = [1,"aa",1.25] lista[0]

  • 4:set seta = {1,"bb",2} seta[0]

  • 5:字典

    dict = {"username":"liufu","age":"24"}  dict["addr"] = "广东"  dict["school"] = "华广"

条件语句 if elif else

if True:    print "i am liufunan"elif False:    print "i am jiangshuizhen"else:    print "ddd"

for循环语句

for key in mymap.keys():    print key + " is : " + mymap.get(key)

while循环语句

a = 0while a < 10:    a += 1    print aa = 0while a in range(0,20):    a += 1    print a

函数的基本定义和使用

def myfunTest(line):    myname = line[0:5]    myage = line[5:]    print "my name is: " + myname + "  my age is: " + myage    return "secuss"myfunTest("liufu24")

================================================ #函数可以接受多个参数值,相同于Java的objects ....。 #注意:*values不能够放在第一个参数,第一个必须是正常参数

def myfunction(key, *values):    for value in values:        print key + "  " + value    return "secuss"myfunction("tcp" , "socket","inputstream","bytebuffer","ack")

================================================ #这句话相当于Java中的main方法,所有逻辑都可以在这里调用 if name == 'main': t1 = threading.Thread(target=listingMusic("真心爱你")) t1.start()

#模块的定义和导入 #有下面两种方式 import module1 import module2 import module3

import module1,module2,module3

from module import name1,name2,name3from module import name1,name2,name3

#使用自定义的名称替换模块的原始名称 import simplejson as json

#1.8.Python文件IO

1.8.1 文件读写(当文件不存在时,就会创建)

file_handler = open('/root/a.txt', 'a+')		file_handler = file('/root/a.txt', 'a+')

open mode

w以写方式打开文件,可向文件写入信息。如文件存在,则清空该文件,再写入新内容            a以追加模式打开文件(即一打开文件,文件指针自动移到文件末尾),如果文件不存在则创建                    r+以读写方式打开文件,可对文件进行读和写操作。            w+消除文件内容,然后以读写方式打开文件。            a+以读写方式打开文件,并把文件指针移到文件尾。            b以二进制模式打开文件,而不是以文本模式。该模式只对Windows或Dos有效,类Unix的文件是用二进制模式进行操作的。	上面这两种文件的打开方式,操作文件的方法名字是一模一样的,用那个都可以。

文件的操作方法

f.close()关闭文件,记住用open()打开文件后一定要记得关闭它,否则会占用系统的可打开文件句柄数。	f.flush()刷新输出缓存	f.isatty()如果文件是一个交互终端,则返回True,否则返回False。	f.read(1024)读取1024个字节,返回一个字节数组byte[]。使用:Bt = f.read(1024)	f.readline()读出一行信息。	f.readlines()读出所有行,也就是读出整个文件的信息。	f.seek(offset[,where])把文件指针移动到相对于where的offset位置。where为0表示文件开始处,这是默认值 ;1表示当前位置;2表示文件结尾。	f.tell()获得文件指针位置。	f.truncate([size])截取文件,使文件的大小为size。	f.write(string)把string字符串写入文件。	f.writelines(list)把list中的字符串一行一行地写入文件,是连续写入文件,没有换行。

1.8.2 文件夹的操作

Python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。

import osimport shutil得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()返回指定目录下的所有文件和目录名:os.listdir()删除一个文件:os.remove()删除多个目录(只能删除空目录):os.removedirs(r”c:\python”)检验给出的路径是否是一个文件:os.path.isfile()检验给出的路径是否是一个目录:os.path.isdir()判断是否是绝对路径:os.path.isabs()检验给出的路径是否存在:os.path.exists()返回一个路径的目录名和文件名:os.path.split()    Eg: os.path.split('/home/swaroop/byte/code/poem.txt')结果:('/home/swaroop/byte/code', 'poem.txt') 分离扩展名:os.path.splitext()获取路径名:os.path.dirname()获取文件名:os.path.basename()运行shell命令: os.system()读取和设置环境变量:os.getenv() 与os.putenv()给出当前平台使用的行终止符:os.linesep    Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'指示你正在使用的平台:os.name       对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'重命名:os.rename(old, new)创建多级目录:os.makedirs(r“c:\python\test”)创建单个目录:os.mkdir(“test”)获取文件属性:os.stat(file)修改文件权限与时间戳:os.chmod(file)终止当前进程:os.exit()获取文件大小:os.path.getsize(filename)
  • 1.9 Python多线程

Python中的多线程是伪线程;不能充分利用cpu中的多核,但是在io等待型的场景下多线程还是可以提高效率 Python中的多线程有多种实现方式,利用threading包实现是比较普遍的做法

示例代码如下:

import threadingfrom time import ctime,sleepdef music(func):    for i in range(2):        print("i was listening to %s. %s" %(func,ctime()))        sleep(1) def movie(func):    for i in range(2):        print("i was at the %s! %s" %(func,ctime()))        sleep(5) threads=[]#创建线程,指定线程执行的方法和参数即可。t1=threading.Thread(target=music,args=(‘爱情买卖’))threads.append(t1)t2=threading.Thread(target=movie,args=(‘阿凡达’))threads.append(t2)# if __name__  ==  '__main__' :for t in threads:    # t.setDaemon(True)#线程启动    t.start()# t.join()print("all over %s" %ctime())

python的类结构

#coding=utf-8class person:    username = ''    age = ''    addr = ''    #就算init构造方法重构了,但是那个默认的无参的还是可以被调用,    # 所以不需要像Java那样需要重新写一下那个无参构造方法    def __init__(self, *msg):        self.username = msg[0]        self.age = msg[1]        self.addr = msg[2]    def display(self):        print self.username + " " + self.age + " " + self.addr#继承一个类的写法class son1(person):    def __init__(self,*msg):        #调用父类的构造方法来实例化父类,注意:一定要把参数才开后再传过去否则无法传。       # person.__init__(self,msg[0],msg[1],msg[2])        self.gender = msg[3]    #方法覆盖    def display(self):        print self.username + " " + self.age + " " + self.addr + " " + self.genderif __name__ == "__main__":    myobject = son1("liufu","23","广东","男")    print myobject.addr    myobject.display()

转载于:https://my.oschina.net/liufukin/blog/796039

你可能感兴趣的文章
利用线性回归模型进行卫星轨道预报
查看>>
懒加载和预加载
查看>>
前端面试题
查看>>
Python的赋值、浅拷贝、深拷贝
查看>>
用python操作mysql数据库(之代码归类)
查看>>
shell中的特殊符号
查看>>
centos安装iftop监控服务器流量
查看>>
ArcGIS Server 10.1 SP1连续查询出现Unable to complete operation错误
查看>>
执行./configure报checking for g++... no错误
查看>>
Dojo学习笔记(十一):Dojo布局——嵌套样例
查看>>
Appium for Android元素定位方法
查看>>
pfSense LAGG(链路聚合)设置
查看>>
教学思路SQL之入门习题《学生成绩》 七.存储过程基础知识
查看>>
createrepo 无法使用解决
查看>>
.net安全类库
查看>>
在Windows 2008 R2上部署SCCM 2007 R2
查看>>
tablespace backup模式一个没用的技术
查看>>
PostgreSQL安装
查看>>
七牛实时音视频云视频连线demo(web部分)
查看>>
Mysql 权限
查看>>