>>printstrMynameisxxx,andyours?...>>>str=str.replace(',','')>>>printstrMynameisxxxandyours" />
当前位置:文档之家› python学习笔记

python学习笔记

python学习笔记
python学习笔记

5)不需要用split啊,split是分割

用replace(src, des)#des为需要替换成的目标字串,src为需要替换的源字串

如:

>>> str = "My name is xxx, and yours? ..."

>>> print str

My name is xxx, and yours? ...

>>> str = str.replace(',','')

>>> print str

My name is xxx and yours? ...

arr = [[1,2],[3,4],[5,6]]

? 1 ?取第一列的值

v = [x[0] for x in arr]

>>> a=[[1,2,3],[4,5,6]]

>>> a[0] #取一行

[1, 2, 3]

>>> a[:,0] #尝试用数组的方法读取一列失败

>>> b=[x[0] for x in a]

>>> print(b)

[1, 4]

而对于数组,可以直接读取:

>>> import numpy as np

>>> a=np.array([[1,2,3],[4,5,6]]) >>> a[:,0]

array([1, 4])

python 判断字符串是否为空用什么方法?

s=''

if s.strip()=='':

print's is null'

或者

if not s.strip():

print's is null'

这是从网上搜索的一篇也的还可以的Python进制转换,经过验证可以使用。下面贴出它的实现代码:

?

1 2 3 4 5 6 7 8 9

10

11

12

13

14

15

16

17

18

19

20

#!/usr/bin/env python

# -*- coding: utf-8 -*-

# 2/10/16 base trans. wrote by srcdog on 20th, April, 2009

# ld elements in base 2, 10, 16.

import os,sys

# global definition

# base = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F]

base = [str(x) for x in range(10)] + [ chr(x) for x in range(ord('A'),ord('A')+6)]

# bin2dec

# 二进制 to 十进制: int(str,n=10)

def bin2dec(string_num):

return str(int(string_num, 2))

# hex2dec

# 十六进制 to 十进制

def hex2dec(string_num):

return str(int(string_num.upper(), 16))

# dec2bin

# 十进制 to 二进制: bin()

def dec2bin(string_num):

num = int(string_num)

mid = []

while True:

if num == 0: break

num,rem = divmod(num, 2)

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

mid.append(base[rem])

return ''.join([str(x) for x in mid[::-1]])

# dec2hex

# 十进制 to 八进制: oct()

# 十进制 to 十六进制: hex()

def dec2hex(string_num):

num = int(string_num)

mid = []

while True:

if num == 0: break

num,rem = divmod(num, 16)

mid.append(base[rem])

return ''.join([str(x) for x in mid[::-1]])

# hex2tobin

# 十六进制 to 二进制: bin(int(str,16))

def hex2bin(string_num):

return dec2bin(hex2dec(string_num.upper()))

# bin2hex

# 二进制 to 十六进制: hex(int(str,2))

def bin2hex(string_num):

return dec2hex(bin2dec(string_num))

无论是否出错都能正确地关闭文件,我们可以使用try ... finally来实现:

try:

print(f.read())

finally:

if f:

f.close()

但是每次都这么写实在太繁琐,所以,Python引入了with语句来自动帮我们调用close()方法:with open('/path/to/file', 'r') as f:

print(f.read())

python文件对象提供了三个“读”方法:read()、readline() 和readlines()。每种方法可以接受一个变量以限制每次读取的数据量。

?read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。如果文件大于可用内存,为了保险起见,可以反复调用read(size)方法,每次最多读取size个字节的内容。

?readlines() 之间的差异是后者一次读取整个文件,象 .read() 一样。.readlines() 自动将文件内容分析成一个行的列表,该列表可以由Python 的for ... in ... 结构进行处理。

?readline() 每次只读取一行,通常比readlines() 慢得多。仅当没有足够内存可以一次读取整个文件时,才应该使用readline()。

注意:这三种方法是把每行末尾的'\n'也读进来了,它并不会默认的把'\n'去掉,需要我们手动去掉。

In[2]: with open('test1.txt', 'r') as f1:

list1 = f1.readlines()

In[3]: list1

Out[3]: ['111\n', '222\n', '333\n', '444\n', '555\n', '666\n']

去掉'\n'

In[4]: with open('test1.txt', 'r') as f1:

list1 = f1.readlines()

for i in range(0, len(list1)):

list1[i] = list1[i].rstrip('\n')

In[5]: list1

Out[5]: ['111', '222', '333', '444', '555', '666']

对于read()和readline()也是把'\n'读入了,但是print的时候可以正常显示(因为print里的'\n'被认为是换行的意思)

In[7]: with open('test1.txt', 'r') as f1:

list1 = f1.read()

In[8]: list1

Out[8]: '111\n222\n333\n444\n555\n666\n'

In[9]: print(list1)

111

222

333

444

555

666

In[10]: with open('test1.txt', 'r') as f1:

list1 = f1.readline()

In[11]: list1

Out[11]: '111\n'

In[12]: print(list1)

111

一个python面试题的例子:

有两个文件,每个都有很多行ip地址,求出两个文件中相同的ip地址:

# coding:utf-8

import bisect

with open('test1.txt', 'r') as f1:

list1 = f1.readlines()

for i in range(0, len(list1)):

list1[i] = list1[i].strip('\n')

with open('test2.txt', 'r') as f2:

list2 = f2.readlines()

for i in range(0, len(list2)):

list2[i] = list2[i].strip('\n')

list2.sort()

length_2 = len(list2)

same_data = []

for i in list1:

pos = bisect.bisect_left(list2, i)

if pos < len(list2) and list2[pos] == i:

same_data.append(i)

same_data = list(set(same_data))

print(same_data)

要点就是:(1)用with (2)处理行末的'\n' (3)使用二分查找提高算法效率。(4)使用set快速去重。

写文件

写文件和读文件是一样的,唯一区别是调用open()函数时,传入标识符'w'或者'wb'表示写文本文件或写二进制文件:

>>> f = open('test.txt', 'w') # 若是'wb'就表示写二进制文件

>>> f.write('Hello, world!')

>>> f.close()

注意:'w'这个模式是酱紫:如果没有这个文件,就创建一个;如果有,那么就会先把原文件的内容清空再写入新的东西。所以若不想清空原来的内容而是直接在后面追加新的内容,就用'a'这个模式。

我们可以反复调用write()来写入文件,但是务必要调用f.close()来关闭文件。当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用

close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。所以,还是用with语句来得保险:

with open('test.txt', 'w') as f:

f.write('Hello, world!')

python文件对象提供了两个“写”方法:write() 和writelines()。

?write()方法和read()、readline()方法对应,是将字符串写入到文件中。

?writelines()方法和readlines()方法对应,也是针对列表的操作。它接收一个字符串列表作为参数,

将他们写入到文件中,换行符不会自动的加入,因此,需要显式的加入换行符。

f1 = open('test1.txt', 'w')

f1.writelines(["1", "2", "3"])

# 此时test1.txt的内容为:123

f1 = open('test1.txt', 'w')

f1.writelines(["1\n", "2\n", "3\n"])

# 此时test1.txt的内容为:

# 1

# 2

# 3

关于open()的mode参数:

'r':读

'w':写

'a':追加

'r+' == r+w(可读可写,文件若不存在就报错(IOError))

'w+' == w+r(可读可写,文件若不存在就创建)

'a+' ==a+r(可追加可写,文件若不存在就创建)

对应的,如果是二进制文件,就都加一个b就好啦:

'rb''wb''ab''rb+''wb+''ab+'

file_obj.seek(offset,whence=0)

file_obj.seek(offset,whence=0)方法用来在文件中移动文件指针。offset表示偏移多少。可选参数whence表示从哪里开始偏移,默认是0为文件开头,1为当前位置,2为文件尾部。举例:

f = open("test1.txt", "a+")

print(f.read())

f.write('1')

f.seek(0, 0)# 把文件指针从末尾移到开头,没有这句话下面的read()就读不到正确的东西

print(f.read())

f.close()

注意:这个文件指针的改变只是作用于'r',对'w'和'a'不会起作用,如果是'w',那么write()永远都是从开头写(会覆盖后面对应位置的内容),是'a'的话write()就永远都是从最后开始追加。

字符编码

要读取非UTF-8编码的文本文件,需要给open()函数传入encoding参数,例如,读取GBK编码的文件:

>>> f = open('test.txt', 'r', encoding='gbk')

>>> f.read()

'测试'

遇到有些编码不规范的文件,你可能会遇到UnicodeDecodeError,因为在文本文件中可能夹杂了一些非法编码的字符。遇到这种情况,open()函数还接收一个errors参数,表示如果遇到编码错误后如何处理。最简单的方式是直接忽略:

>>> f = open('test.txt', 'r', encoding='gbk', errors='ignore')

Python int与string之间的转化

string-->int

1、10进制string转化为int

int('12')

2、16进制string转化为int

int('12', 16)

int-->string

1、int转化为10进制string

str(18)

2、int转化为16进制string

hex(18)

考虑,为什么没有16进制int转化为string,可以这么认为不管什么进制,python在内部表示都是10进制,先转化为10进制在进行。如16进制int转化为string,str(0x12),首先变为str(18),再到'18'。那么我想结果为'12',怎么办?这其实就是10进制int转化为string,即hex(0x12)。

(0,6).format(“string”)格式化字符串

Python常用内置函数总结

Python常用内置函数总结 一、数学相关 1、绝对值:abs(-1) 2、最大最小值:max([1,2,3])、min([1,2,3]) 3、序列长度:len('abc')、len([1,2,3])、len((1,2,3)) 4、取模:divmod(5,2)//(2,1) 5、乘方:pow(2,3,4)//2**3/4 6、浮点数:round(1)//1.0 二、功能相关 1、函数是否可调用:callable(funcname),注意,funcname变量要定义过 2、类型判断:isinstance(x,list/int) 3、比较:cmp('hello','hello') 4、快速生成序列:(x)range([start,] stop[, step]) 三、类型转换 1、int(x) 2、long(x) 3、float(x) 4、complex(x) //复数 5、str(x) 6、list(x) 7、tuple(x) //元组 8、hex(x) 9、oct(x) 10、chr(x)//返回x对应的字符,如chr(65)返回‘A' 11、ord(x)//返回字符对应的ASC码数字编号,如ord('A')返回65 四、字符串处理 1、首字母大写:str.capitalize 复制代码代码如下:

>>> 'hello'.capitalize() 'Hello' 2、字符串替换:str.replace 复制代码代码如下: >>> 'hello'.replace('l','2') 'he22o' 可以传三个参数,第三个参数为替换次数 3、字符串切割:str.split 复制代码代码如下: >>> 'hello'.split('l') ['he', '', 'o'] 可以传二个参数,第二个参数为切割次数 以上三个方法都可以引入String模块,然后用string.xxx的方式进行调用。 五、序列处理函数 1、len:序列长度 2、max:序列中最大值 3、min:最小值 4、filter:过滤序列 复制代码代码如下: >>> filter(lambda x:x%2==0, [1,2,3,4,5,6]) [2, 4, 6] 5、zip:并行遍历 复制代码代码如下:

Python3基础教程二(个人整理)

Python3 基本数据类型 Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所 指的内存中对象的类型。 等号(=)用来给变量赋值。 等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。 多个变量赋值 Python允许你同时为多个变量赋值。例如: 以上实例,创建一个整型对象,值为 1,从后向前赋值,三个变量被赋予相同的数值。 您也可以为多个对象指定多个变量。例如: 以上实例,两个整型对象 1 和 2 的分配给变量 a 和 b,字符串对象 "zzzzz" 分配给变量 c。标准数据类型 Python3 中有六个标准的数据类型: ?Number(数字) ?String(字符串) ?List(列表) ?Tuple(元组) ?Set(集合) ?Dictionary(字典)

Python3 的六个标准数据类型中: ?不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);?可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。 Number(数字) Python3 支持int、float、bool、complex(复数)。 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。像大多数语言一样,数值类型的赋值和计算都是很直观的。 内置的 type() 函数可以用来查询变量所指的对象类型。 此外还可以用 isinstance 来判断: isinstance 和 type 的区别在于: ?type()不会认为子类是一种父类类型。 ?isinstance()会认为子类是一种父类类型。

python函数中文手册

内置函数 一,文档说明 原始文档来自于python v2.7.2 中文译文和用法尚不完全,您可以自由修改和完善, 您可以在文档结尾鸣谢添上您的名字,我们将会感谢您做的贡献! 二,函数列表 1,取绝对值 abs(x)

Return the absolute value of a number. The argument may be a plain or long integer or a floating point number. If the argument is a complex number, its magnitude is returned. 如果你不知道绝对值什么意思,那就要补一下小学数学了! 基本用法 2, all(iterable) Return True if all elements of the iterable are true (or if the iterable is empty). Equivalent to: 3. any(iterable)

Return True if any element of the iterable is true. If the iterable is empty, return False. Equivalent to: 4. basestring() This abstract type is the superclass for str and unicode. It cannot be called or instantiated, but it can be used to test whether an object is an instance of str or unicode. isinstance(obj, basestring) is equivalent to isinstance(obj, (str, unicode)). 是字符串和字符编码的超类,是抽象类型。不能被调用或者实例化。可以用来判断实例是否为字符串或者字符编码。 方法: 5.二进制转换 bin(x) Convert an integer number to a binary string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer.

python3内置函数大全

一、数学相关 1、绝对值:abs(-1) 2、最大最小值:max([1,2,3])、min([1,2,3]) 3、序列长度:len('abc')、len([1,2,3])、len((1,2,3)) 4、取模:divmod(5,2)//(2,1) 5、乘方:pow(2,3,4)//2**3/4 6、浮点数:round(1)//1.0 二、功能相关 1、函数是否可调用:callable(funcname),注意,funcname变量要定义过 2、类型判断:isinstance(x,list/int) 3、比较:cmp('hello','hello') 4、快速生成序列:(x)range([start,] stop[, step]) 三、类型转换 1、int(x) 2、long(x) 3、float(x) 4、complex(x) //复数 5、str(x) 6、list(x) 7、tuple(x) //元组 8、hex(x) 9、oct(x)

10、chr(x)//返回x对应的字符,如chr(65)返回‘A' 11、ord(x)//返回字符对应的ASC码数字编号,如ord('A')返回65 四、字符串处理 1、首字母大写:str.capitalize 复制代码代码如下: >>> 'hello'.capitalize() 'Hello' 2、字符串替换:str.replace 代码如下: >>> 'hello'.replace('l','2') 'he22o' 可以传三个参数,第三个参数为替换次数 3、字符串切割:str.split 代码如下: >>> 'hello'.split('l') ['he', '', 'o']

python入门教程3

B u i l t -i n f u n c t i o n d a t a t y p e 常用内置函数数据类型 4

1Python内置数据类型概述 D a t a t y p e s O v e r v i e w 2常用数据类型 C o m m o n d a t a t y p e s 4算数运算符和位运算符 Arithmetic operators and b i t w i s e o p e r a t o r s CONTENT 3比较关系运算和条 件表达式 P y t h o n O v e r v i e w 6内置标准数学函数 B u i l t i n s t a n d a r d mathematical function 5混合运算和数值类 型转换 Mixed operations and numeric type conversions

3 Python内置数据类型概述 ?Python语言中,一切皆为对象,而每个对象都属于某个数据类型。 ?Python的数据类型包括内置的数据类型、模块中定义的数据类型和用户自定义的类型。 ?数值数据类型(int,bool,float,complex) ?序列数据类型(str,tuple,bytes,list,bytearray) ?集合数据类型(set,frozenset) ?字典数据类型(dict) ?特殊数据类型(NoneType,NotImplementedType,EllipsisType) ?其他数据类型(模块,类,对象,函数)

?整数数据类型(int)是表示整数的数据类型。 ?Python的整数数位可以为任意长度数位(只受限制于计算机内存)。?整型对象是不可变对象。

python常用函数年初大总结

1.常用内置函数:(不用import就可以直接使用) help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像函数一样调用 repr(obj) 得到obj的表示字符串,可以利用这个字符串eval重建该对象的一个拷贝 eval_r(str) 表示合法的python表达式,返回这个表达式 dir(obj) 查看obj的name space中可见的name hasattr(obj,name) 查看一个obj的name space中是否有name getattr(obj,name) 得到一个obj的name space中的一个name setattr(obj,name,value) 为一个obj的name space中的一个name指向vale这个object delattr(obj,name) 从obj的name space中删除一个name vars(obj) 返回一个object的name space。用dictionary表示 locals() 返回一个局部name space,用dictionary表示 globals() 返回一个全局name space,用dictionary表示 type(obj) 查看一个obj的类型 isinstance(obj,cls) 查看obj是不是cls的instance issubclass(subcls,supcls) 查看subcls是不是supcls的子类 类型转换函数 chr(i) 把一个ASCII数值,变成字符 ord(i) 把一个字符或者unicode字符,变成ASCII数值 oct(x) 把整数x变成八进制表示的字符串 hex(x) 把整数x变成十六进制表示的字符串

python2.72内置函数手册

Python2.72内置函数 1、文档说明 中文译文和用法尚待完善。 2、函数列表 1,取绝对值 abs(x) Return the absolute value of a number. The argument may be a plain or long integer or a floating point number. If the argument is a complex number, its magnitude is returned. 如果你不知道绝对值什么意思,那就要补一下小学数学了! 基本用法 2, all(iterable)

Return True if all elements of the iterable are true (or if the iterable is empty). Equivalent to: 3. any(iterable) Return True if any element of the iterable is true. If the iterable is empty, return False. Equivalent to: 4. basestring() This abstract type is the superclass for str and unicode. It cannot be called or instantiated, but it can be used to test whether an object is an instance of str or unicode. isinstance(obj,basestring) is equivalent to isinstance(obj,(str,unicode)). 是字符串和字符编码的超类,是抽象类型。不能被调用或者实例化。可以用来判断实例是否为字符串或者字符编码。 方法: 5.二进制转换 bin(x) Convert an integer number to a binary string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer. 转换成二进制表达 方法: 6.布尔类型 bool([x]) Convert a value to a Boolean, using the standard truth testing procedure. If x is false or omitted, this returns False; otherwise it returns True. bool is also a class, which is a subclass of int. Class bool cannot be subclassed further. Its only instances are False and True 布尔类型的转化

python_内置函数_练习3

本练习的重点:通过实现与内置函数相同功能的函数来达到锻炼提升编码能力的目的。 1.abs(x)函数 返回一个数的绝对值。 参数可以是一个整数或浮点数。 如果参数是一个复数,则返 回它的模。 如果 x 定义了 abs(),则 abs(x) 将返回 x.abs()。 2.class complex([real[, imag]]) 函数 返回值为 real + imag*1j 的复数,或将字符串或数字转换为复数。如果第一个形参 是字符串,则它被解释为一个复数,并且函数调用时必须没有第二个形参。 当从字符串转换时,字符串在 + 或 - 的周围必须不能有空格。例如 complex('1+2j') 是合法的,但 complex('1 + 2j') 会触发 ValueError 异常。 3.isinstance(object, classinfo) 函数 如果参数 object 是参数 classinfo 的实例或者是其 (直接、间接或 虚拟) 子类则返回 True。 否则返回 False。 如果 classinfo 是类型对象元组(或由其他此类元组递归 组成的元组),那么如果 object 是其中任何一个类型的实例就返回 True。 如果

classinfo 既不是类型,也不是类型元组或类型元组的元组,则将引发 TypeError 异 常。 In [25]:print(abs(-1)) print(abs(-1.212)) print(abs(complex('1+2j'))) # 返回 sqrt(1+4) a = complex('1+2j') 1 1.212 2.23606797749979 请实现下面的函数,模仿abs函数的功能,返回数字的绝对值。 In [23]:import math # 方法1 def my_abs_1(number): if type(number) == int or type(number) == float: if number < 0: return number*(-1) else: return number elif type(number) == complex: return math.sqrt(number.real**2 + number.imag**2) #方法2 # 判断变量类型,可以使用isinstance函数, # 该函数的第一个参数是需要检查类型的对象, # 第二个参数可以是数据类型,也可以是一个元组, # 元组里是多个数据类型,只要满足其中一个就返回True def my_abs_2(number): if isinstance(number, (float,int)): if number < 0: return number*(-1) else: return number elif isinstance(number, complex): return math.sqrt(number.real**2 + number.imag**2) if __name__ == "__main__": print(abs(-1), end = " ") print(abs(-1.212), end = " ") print(abs(complex('1+2j')), end = " \n") print(my_abs_1(-1), end = " ") print(my_abs_1(-1.212), end = " ") print(my_abs_1(complex('1+2j')), end = " \n") print(my_abs_2(-1), end = " ") print(my_abs_2(-1.212), end = " ") print(my_abs_2(complex('1+2j')), end = " ") 1 1.21 2 2.23606797749979 1 1.21 2 2.23606797749979

python内嵌函数列表

本节介绍的函数在解释器中总是可用的,他们被包含在 __builtin__ 模块里.另外每个模块的 __builtins__ 属性经常指的是这个模块(除了当在restricted execution环境下运行时). _(下划线) 默认情况下,变量 _ 用于在交互模式下表示最近一个表达式的运行结果. 参阅 sys.displayhook (118) __import__(name [, globals [, locals [, fromlist]]]) import语句通过调用这个函数来导入模块. name是包含模块名字的字符串, globals是一个可选的定义全局名称空间的字典, locals是定义局部名称空间的字典, fromlist是from语句目标的列表.例如, import spam语句会调用 __import__('spam', globals(), locals(), []) ,而from spam import foo 语句会调用 __import__('spam', globals(), locals(), ['foo']). 如果模块名在包名字之后(如foo.bar)而且fromlist为空时,就返回对应的模块对象.如果fromlist不为空,则只会返回最顶级的包. 这个函数是一个低等级的模块载入接口.它并不执行import语句的所有步骤(通常情况下局部名称空间并不会随模块中包含对象的名称引用的改变而改变.这个函数可以由用户来重新定义,这样为import语句加入新的行为.默认的执行并不会检查locals参数,而globals只用于决定包的内容(这些参数可以使 __import__()能够完整地访问全局和局部名称空间) abs(x) 返回x的绝对值 apply(func [, args [, keywords]]) 对可调用对象func执行函数调用. args是一个包含固定位置参数的元组, keywords是包含关键参数的字典. apply()函数也可以写做 func(*args ,**keywords ). buffer(sequence [, offset [, size]]) 创建一个新的缓冲器对象.缓冲器通常是一个序列(如字符串)的字节导向序列.缓冲器和字符串在许多地方是相同的,但是它不支持字符串方法,而且也不能使用string模块的函数. callable(object) 当object为可调用对象时返回True,否则返回False

python字符串内置函数

a='helLO' print(a.title()) # 首字母大写a='1 2'

执行结果:1 2 1 2 1 2 00000001 2 1 2 3 4 5 6 7 8 # 3 字符串搜索相关 .find() # 搜索指定字符串,没有返回-1 .index() # 同上,但是找不到会报错 .rfind() # 从右边开始查找 .count() # 统计指定的字符串出现的次数 # 上面所有方法都可以用index代替,不同的是使用index查找不到会抛异常,而find s='hello world' print(s.find('e')) # 搜索指定字符串,没有返回-1 print(s.find('w',1,2)) # 顾头不顾尾,找不到则返回-1不会报错,找到了 则显示索引 print(s.index('w',1,2)) # 同上,但是找不到会报错 print(s.count('o')) # 统计指定的字符串出现的次数 print(s.rfind('l')) # 从右边开始查找 # 4字符串替换 .replace('old','new') # 替换old为new .replace('old','new',次数) # 替换指定次数的old为new s='hello world' print(s.replace('world','python')) print(s.replace('l','p',2)) print(s.replace('l','p',5)) 执行结果: hello python heppo world heppo worpd

# 5字符串去空格及去指定字符 .strip() # 去两边空格 .lstrip() # 去左边空格 .rstrip() # 去右边空格 .split() # 默认按空格分隔 .split('指定字符') # 按指定字符分割字符串为数组 s=' h e-l lo ' print(s) print(s.strip()) print(s.lstrip()) print(s.rstrip()) print(s.split('-')) print(s.split()) # 6字符串判断相关 .startswith('start') # 是否以start开头 .endswith('end') # 是否以end结尾 .isalnum() # 是否全为字母或数字 .isalpha() # 是否全字母 .isdigit() # 是否全数字 .islower() # 是否全小写 .isupper() # 是否全大写 .istitle() # 判断首字母是否为大写 .isspace() # 判断字符是否为空格 # 补充 bin() # 十进制数转八进制 hex() # 十进制数转十六进制 range() # 函数:可以生成一个整数序列 type() # 查看数据类型 len() # 计算字符串长度 format() # 格式化字符串,类似%s,传递值能多不能少

python字符串常用函数

字符串常用函数 replace(string,old,new[,maxsplit]) 字符串的替换函数,把字符串中的old替换成new。默认是把string中所有的old值替换成new 值,如果给出maxsplit值,还可控制替换的个数,如果maxsplit为1,则只替换第一个old 值。 >>>a="11223344" >>>print string.replace(a,"1","one") oneone2223344 >>>print string.replace(a,"1","one",1) one12223344 capitalize(string) 该函数可把字符串的首个字符替换成大字。 >>> import string >>> print string.capitalize("python") Python split(string,sep=None,maxsplit=-1) 从string字符串中返回一个列表,以sep的值为分界符。 >>> import string >>> ip="192.168.3.3" >>> ip_list=string.split(ip,'.') >>> print ip_list ['192', '168', '3', '3'] all( iterable) 如果迭代的所有元素都是真就返回真。 >>> l = [0,1,2,3] >>> all(l) Flase >>> l = [1,2,3] >>> all(l) True any( iterable) 如果迭代中有一个元素为真就返回真。 >>> l = [0,1,2,3] >>> all(l) True >>> l = [1,2,3] >>> all(l) True basestring() 这个抽象类型是str和unicode的父类。它不能被调用或初始化,但是它可以使用来测试一

Python程序设计-函数整理(部分)

1.判断对象是否为某类型:isinstance(obj,type) isinstance(3,int)= True isinstance(‘a’,str)=True 2.返回对象的类型type() 3.返回内存地址id() 4.返回指定对象的成员列表dir() dir(_builtins_) 列出所有内置函数和内置对象 5.math模块 开平方根运算math.sqrt() ≥x的最小整数math.ceil() ≤x的最大整数math.floor() 6. c.real实部c.imag虚部 7. c.conjugate 共轭复数 8.map() 9.返回ASCII编码为x的字符chr(x) 返回1个字符s的ASCII码ord (s) 10.善用eval(s[,globals[,locals]])!!! 11.range([start,] end [,step]) 左闭右开 range(3)=0,1,2 range(1,6,2)=1,3,5 返回一个range可迭代对象 12.help() 13.把x按照n进制转化为整数int(x[,base=n]) 14.返回逆序后的迭代器对象,不对原列表改动reversed(列表或元组) 15.返回新列表,不对原列表进行改动sorted() 16.对x进行四舍五入round(x[,小数位数]) 17.random模块 random.randint(a,b) 返回[a,b]的随机整数 random.random() 返回[0,1]]]]]的随机浮点数 random.choice() 从序列(list,tuple,string)中获得一个随机元素 random.sample(seq,x) 从序列中获得长度为x的片段 random.uniform(a,b) 返回[a,b]随机浮点数 random.shuffle(list) 打乱顺序 18.返回用户输入的对象input() 用法x = input(’提示:’)返回结果均为字符串!

python内置函数大全

python内置函数大全 最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Constants、Build-in Types、Build-in Exception这四个方面,其实在看的时候发现整个《The Python Standard Library》章节都是很不错的,其中描述了很多不错的主题。先把Build-in Function罗列一下吧,初学者的了解,分类可能不准确,一起交流。 一、数学运算类 abs(x) 求绝对值 1、参数可以是整型,也可以是复数 2、若参数是复数,则返回复数的模 complex([real[, imag]]) 创建一个复数

divmod(a, b) 分别取商和余数 注意:整型、浮点型都可以 float([x]) 将一个字符串或数转换为浮点数。如果无参数将返回0.0 int([x[, base]]) 将一个字符转换为int类型,base表示进制 long([x[, base]]) 将一个字符转换为long类型 pow(x, y[, z]) 返回x的y次幂

range([start], stop[, step]) 产生一个序列,默认从0开始 round(x[, n]) 四舍五入 sum(iterable[, start]) 对集合求和 oct(x) 将一个数字转化为8进制 hex(x) 将整数x转换为16进制字符串 chr(i) 返回整数i对应的ASCII字符

bin(x) 将整数x转换为二进制字符串 bool([x]) 将x转换为Boolean类型

Python内置函数查阅手册

Python内置函数查阅手册

Python解释器内置了很多函数和类型,您可以在任何时候使用它们。以下按字母表顺序列出它们。 内置函数 abs()delattr()hash()memoryview()set() all()dict()help()min()setattr() any()dir()hex()next()slice() ascii()divmod()id()object()sorted() bin()enumerate()input()oct()staticmethod() bool()eval()int()open()str() breakpoint()exec()isinstance()ord()sum() bytearray()filter()issubclass()pow()super() bytes()float()iter()print()tuple() callable()format()len()property()type() chr()frozenset()list()range()vars() classmethod()getattr()locals()repr()zip() compile()globals()map()reversed()__import__() complex()hasattr()max()round() abs(x) 返回一个数的绝对值。参数可以是一个整数或浮点数。如果参数是一个复数,则返回它的模。如果x定义了__abs__(),则abs(x)将返回x.__abs__()。 all(iterable) 如果iterable的所有元素为真(或迭代器为空),返回True。等价于: any(iterable) 如果iterable的任一元素为真则返回True。如果迭代器为空,返回False。等价于:

python内置函数

T able of Contents 1. 常用函数 2. 内置类型转换函数 3. 序列处理函数 4. String模块 Chapter 1. 常用函数 abs(x) abs()返回一个数字的绝对值。如果给出复数,返回值就是该复数的模。 >>>print abs(-100) 100 >>>print abs(1+2j) 2.2360679775 callable(object) callable()函数用于测试对象是否可调用,如果可以则返回1(真);否则返回0(假)。可调用对象包括函数、方法、代码对象、类和已经定义了调用方法的类实例。 “” >>> a="123" >>> print callable(a) 0 >>> print callable(chr) 1 cmp(x,y) cmp()函数比较x和y两个对象,并根据比较结果返回一个整数,如果xy,则返回1,如果x==y则返回0。 >>>a=1 >>>b=2 >>>c=2 >>> print cmp(a,b) -1 >>> print cmp(b,a) 1 >>> print cmp(b,c) 0 divmod(x,y) divmod(x,y)函数完成除法运算,返回商和余数。 >>> divmod(10,3) (3, 1) >>> divmod(9,3) (3, 0) isinstance(object,class-or-type-or-tuple) -> bool 测试对象类型 >>> a='isinstance test' >>> b=1234 >>> isinstance(a,str) T rue >>> isinstance(a,int) False >>> isinstance(b,str) False >>> isinstance(b,int) T rue len(object) -> integer len()函数返回字符串和序列的长度。 >>> len("aa") 2 >>> len([1,2]) 2 pow(x,y[,z]) pow()函数返回以x为底,y为指数的幂。如果给出z值,该函数就计算x的y次幂值被z取模的值。 >>> print pow(2,4) 16 >>> print pow(2,4,2) 0 >>> print pow(2.4,3) 13.824 range([lower,]stop[,step]) range()函数可按参数生成连续的有序整数列表。 >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(1,10) [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(1,10,2) [1, 3, 5, 7, 9] round(x[,n]) round()函数返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。 >>> round(3.333) 3.0 >>> round(3) 3.0 >>> round(5.9) 6.0 type(obj) type()函数可返回对象的数据类型。

Python内置函数进制转换的用法

使用Python内置函数:bin()、oct()、int()、hex()可实现进制转换。 先看Python官方文档中对这几个内置函数的描述: bin(x) Convert an integer number to a binary string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer. oct(x) Convert an integer number to an octal string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer. int([number | string[, base]]) Convert a number or string to an integer. If no arguments are given, return 0. If a number is given, return number.__int__(). Conversion of floating point numbers to integers truncates towards zero. A string must be a base-radix integer literal optionally preceded by ‘+’ or ‘-‘ (with no space in between) and optionally surrounded by whitespace. A base-n literal consists of the digits 0 to n-1, with ‘a’ to ‘z’ (or ‘A’ to ‘Z’) having values 10 to 35. The default base is 10. The allowed values are 0 and 2-36. Base-2, -8, and -16 literals can be optionally prefixed with 0b/0B, 0o/0O, or 0x/0X, as with integer literals in code. Base 0 means to interpret exactly as a code literal, so that the actual base is 2, 8, 10, or 16, and so that int('010', 0) is not legal, while int('010') is, as well as int('010', 8). hex(x) Convert an integer number to a hexadecimal string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer. ↓2进制8进制10进制16进制 2进制- bin(int(x, 8)) bin(int(x, 10)) bin(int(x, 16)) 8进制oct(int(x, 2)) - oct(int(x, 10)) oct(int(x, 16)) 10进制int(x, 2) int(x, 8) - int(x, 16) 16进制hex(int(x, 2)) hex(int(x, 8)) hex(int(x, 10)) - bin()、oct()、hex()的返回值均为字符串,且分别带有0b、0o、0x前缀。 Python进制转换(二进制、十进制和十六进制)实例 #!/usr/bin/env python # -*- coding: utf-8 -*- # 2/10/16 base trans. wrote by srcdog on 20th, April, 2009

相关主题
文本预览
相关文档 最新文档