python函数

python基础--2 字符串

随声附和 提交于 2020-04-07 11:32:50
整型 int python3里,不管数字多大都是int类型 python2里面有长整型long 将整型字符串转换为数字 # a='123' # print(type(a),a) # b=int(a) # print(type(b),b) 需要注意如果是浮点型的数字字符串,不能用int类型强制转换,而需要用float浮点类型 # a='12.3' # print(type(a),a) # b=float(a) # print(type(b),b) #当前数字的二进制位,至少用n位表示 age=3 r=age.bit_length() print(r) #字符串类型的常见内置函数用法 test = "aLax"# v = test.capitalize() # 首字母大写,除首字母以外其余都为小写,数据类型的魔法函数必须带括号 print(v)   v1=test.casefold()#将字符串转换为小写 # print(v1) # v2=test.lower() # print(v2)    # 设置宽度,并将内容居中 # 20 代指总长度 # * 空白位置填充 test = "alex" v3 = test.center(20, '*') print(v3)    # v=test.rjust(20,'*') rjust 向右填充指定字符数 # print(v) # # v

【经验分享】零基础Python学习路线及阶段学习目标

徘徊边缘 提交于 2020-04-07 10:13:49
零基础Python学习路线及阶段学习目标,首先应该夯实Python核心基础、Web前端编程、Django开发框架、Flask开发框架、爬虫与数据分析等知识,理解机器学习相关的基本概念及系统处理流程。 零基础Python学习路线及阶段学习目标:   阶段一、Python核心基础   1、Python编程基础,语法规则,函数与参数,数据类型,模块与包,文件IO,培养扎实的Python编程基本功,同时对Python核心对象和库的编程有熟练的运用。   2、Python面向对象,核心对象,异常处理,多线程,网络编程,深入理解面向对象编程,异常处理机制,多线程原理,网络协议知识,并熟练运用于项目中。   3、类的原理,MetaClass,下划线的特殊方法,递归,魔术方法,反射,迭代器,装饰器,UnitTest,Mock。深入理解面向对象底层原理,掌握Python开发高级进阶技术,理解单元测试技术。   4、数据库知识,范式,MySQL配置,命令,建库建表,数据的增删改查,约束,视图,存储过程,函数,触发器,事务,游标,PDBC,深入理解数据库管理系统通用知识及MySQL数据库的使用与管理。为Python后台开发打下坚实基础。   5、Linux安装配置,文件目录操作,VI命令,管理,用户与权限,环境配置,Docker,Shell编程Linux作为一个主流的服务器操作系统

python学习之生成器(generator)

我只是一个虾纸丫 提交于 2020-04-07 10:10:30
生成器可以理解为一种数据类型,这种数据类型自动实现了迭代器协议 (其他的数据类型需要调用自己内置的__iter__方法),所以生成器就是 可迭代对象 生成器分类及在python中的表现形式:(python有两种不同的方式提供生成器) 1.生成器函数:常规函数定义,但是,使用yield语句而不是return语句返回 结果。yield语句一次返回一个结果,在每个结果中间,挂起函数的状态,以便 下次从它离开的地方继续执行 def triangles(): a=[1] while True: yield a a=[sum(i) for i in zip([0]+a,a+[0])] n=0 for t in triangles(): print(t) n=n+1 if n==10: break def product_baozi(): for i in range(1,10): yield i maibaozi=product_baozi() print("吃包子:",next(maibaozi)) print("吃包子:",next(maibaozi)) 2.生成器表达式:类似于列表推导,但是,生成器返回按需产生结果的一个对象 而不是一次构建一个结果列表 优点: Python使用生成器对延迟操作提供了支持。所谓延迟操作,是指在需要的时候才 产生结果,而不是立即产生结果

python 全栈开发,Day6补充(is,小数据池,编码转换)

五迷三道 提交于 2020-04-07 10:00:14
一、is a = 100 b = 100 print(a == b) print(a is b) 执行输出: True True 查看内存地址,使用id函数 print(id(a)) print(id(b)) 执行输出: 2456839554480 2456839554480 内存地址,相当于门牌号 == 比较的是数值 is 比较的是内存地址 二、小数据池 只有数字和字符串类型 小数据池的作用,就是节省内存 数字: -5~256 这个范围指向的是同一内存地址 字符串,是没有范围的。 字符串: 1.如果含有特殊字符,不存在小数据池 2. str(单个) * int int > 20 不存在小数据池 其它的数据类型,不存在小数据池。 三、编码 asiic : 字母,数字,特殊字符;8位 1个字节表示1个字符。 unicode:万国码: Q :0000 0001 0000 0001 0000 0001 0000 0001 中:0000 0101 0000 0001 0000 0001 0000 0001 utf-8: a: 0000 0001 欧: 0000 0001 0000 0001 中: 0000 0001 0000 0001 0000 0001 gbk:国标 a: 0000 0001 中:0000 0001 0000 0001 1.编码之间的二进制户部识别 2

<Python学习笔记3> 流程控制

冷暖自知 提交于 2020-04-07 07:43:00
3.1、if语句 if语句用来检验一个条件,如果条件为真,运行一块语句(称为 if-块 ), 否则 处理另外一块语句(称为 else-块 ), else 从句是可选的。 实例1:if.py #!/usr/bin/python# Filename: if.pynumber=20get_number=int(raw_input("Enter an integer:"))if get_number==number: print '''Congratulations,you guessed it. (but you don't win any prizes!)'''elif get_number<number: print "No, it's a little higher than that"else: print "No, it's a little lower than that"print "Done" 输出: Enter an integer:20 Congratulations,you guessed it. (but you don't win any prizes!) Done [root@test Public]# python if.py Enter an integer:19 No, it's a little higher than that Done [root

python之路-----前端之js(一)

一笑奈何 提交于 2020-04-07 07:25:36
  一.JS发展历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEase.(客户端执行的语言) Netscape(网景)接收Nombas的理念,(Brendan Eich)在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言.Sun和Netscape共同完成.后改名叫Javascript 微软随后模仿在其IE3.0的产品中搭载了一个JavaScript的克隆版叫Jscript. 为了统一三家,ECMA(欧洲计算机制造协会)定义了ECMA-262规范.国际标准化组织及国际电工委员会(ISO/IEC)也采纳 ECMAScript 作为标准(ISO/IEC-16262)。从此,Web 浏览器就开始努力(虽然有着不同的程度的成功和失败)将 ECMAScript 作为 JavaScript 实现的基础。EcmaScript是规范. 二.JS的简介   JS主要由ECMAScript ,DOM,BOM三部分组成。其中ECMAScript是基础,规定了js中的基本语法,例如变量,函数的定义。DOM是最重要的部分,它整合js,css,html,将三者关联起来。BOM将浏览器和JS整合起来。   JS的基于对象的语言,它内含众多类,我们可以进行实例化,使用它们。   

Python 中的语句

爱⌒轻易说出口 提交于 2020-04-07 07:24:25
上一节已经了解到了Python中的基本数据类型和一些基本的操作,本节就大致讲一下关于Python中的语句的相关问题。 我们熟悉的print()语句可能是这样的。 print('YJK923') or print(name) 但我们也要知道print函数中可以包含多个参数,其中参数之间用逗号隔开,像这样, print(name1,name2,sep = '_') 这句话表示将name1 和 name2 打印出来,并使用 ’_‘ 连接。 在导入其它模块的时候我们可以使用如下方式: import moduleName from moduleName import someFunction from moduleName import someFunction1,someFunction2,someFunction3 导入的时候可以使用 as 关键字进行缩写。 下面看一些不一样的赋值语句 x,y,z = 1,2,3 print(x,y,z) 1 2 3 用法在这呢! x,y = y,x # 轻轻松松就交换两个值有木有! 上面的这种用法有一个专业名词,叫 序列解包 若是出现这种情况改怎么办呢? x,y,z = 1,2 # 报错 因为来个3个变量只给2个值肯定是不行啊。 x,y,z = 1,2,3,4 # 报错 因为来个3个变量给4个值放不下啊! # 可以使用*号来收集多余的值,像这样 x,y

Python 条件表达式

左心房为你撑大大i 提交于 2020-04-07 06:41:05
问题:获得目录中的 .fna 后缀的文件路径 通过 makeblastdb 能获得用于 BLAST 的数据库文件,这些文件包括原始数据 .fna ,和几个在原名基础上增加后缀为名字的文件,例如 .fna.nsq 。 Blast 的时候需要指定的是 .fna 文件,而不是其他的那些。因此需要自动读取数据库文件夹中的不带后缀的文件。 如果做的是蛋白质的数据库,需要的是 .faa 的文件。 解决 直接用 in 不能筛选出 .fna结尾 的名字。需要使用正则表达式。 import os import re mask = re.compile('.+fna$') # $说明从后开始匹配 # 最好先看一下当前路径是什么 os. getcwd() # 获得文件夹里面所以文件名 file_names= os.listdir() # 或者随便用个例子 file_names = ['1.fna', '1.fna.nsq', '1.fna.nsi',] # 方法1 for循环,遍历每个文件名,返回fna结尾的文件(事先知道只有一个) for db in file_names: if mask.match(db): path = db path # 方法2 方法1用条件表达式写出来 path = [db for db in file_names if mask.match(db)] # 注意[ ]不能少

「学习笔记——Python」Python流程控制

我与影子孤独终老i 提交于 2020-04-07 05:45:47
4 Python 流程控制 Table of Contents 1 if 语句 2 for 语句 3 range函数 4 break 和 continue 语句,循环时使用else 5 pass语句 6 定义函数 7 编程风格 1 if 语句 >>> x = int(raw_input("Please input a number: ")) Please input a number: 3 >>> x 3 >>> if x < 0: ... x = 0 ... print 'Negative number' ... elif x == 0: ... print 'Zero' ... elif x == 1: ... print 'Single' ... else: ... print 'More' ... More 2 for 语句 python 中的 for 语句和 C 或者 Pascal 中的for语句有所不同,在c中,for 语句通常由 判断语句,条件判断,值变化三部分 构成,python 中 for 语句结构是在一个序列上遍历: >>> # Measure some string ... words = ['cat', 'windows', 'linux'] >>> for w in words: ... print w, len(w) ... cat 3 windows

python 运算符与表达式

本秂侑毒 提交于 2020-04-07 05:38:28
1. 运算符与其用法 运算符 名称 说明 例子 + 加 两个对象相加 3 + 5得到8。'a' + 'b'得到'ab'。 - 减 得到负数或是一个数减去另一个数 -5.2得到一个负数。50 - 24得到26。 * 乘 两个数相乘或是返回一个被重复若干次的字符串 2 * 3得到6。'la' * 3得到'lalala'。 ** 幂 返回x的y次幂 3 ** 4得到81(即3 * 3 * 3 * 3) / 除 x除以y 4/3得到1(整数的除法得到整数结果)。4.0/3或4/3.0得到1.3333333333333333 // 取整除 返回商的整数部分 4 // 3.0得到1.0 % 取模 返回除法的余数 8%3得到2。-25.5%2.25得到1.5 << 左移 把一个数的比特向左移一定数目(每个数在内存中都表示为比特或二进制数字,即0和1) 2 << 2得到8。——2按比特表示为10 >> 右移 把一个数的比特向右移一定数目 11 >> 1得到5。——11按比特表示为1011,向右移动1比特后得到101,即十进制的5。 & 按位与 数的按位与 5 & 3得到1。 | 按位或 数的按位或 5 | 3得到7。 ^ 按位异或 数的按位异或 5 ^ 3得到6 ~ 按位翻转 x的按位翻转是-(x+1) ~5得到6。 < 小于 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假