Python的基础语法及使用(二)

来源:互联网 发布:jsp导航栏源码 编辑:程序博客网 时间:2024/06/16 19:14

本文是对我的另外一篇文章Python的基础语法及使用的完善


一、字符串中插入变量


方法一: 

name = 'xzw'
sayhello = 'hello,' + name
print(sayhello)

方法二: 
字符的格式化功能 
%s代表字符串,%d代表整数 ,都代表在字符中的占位符 
变量的位置与字符串中的占位是一一对应关系

name = 'xzw'
age = 22
sayhello = 'my name is %s ,and my age is %d ' % (name, age)
print(sayhello)

方法三: 
通过的字符串的format方法 

sayhello = 'my name is {0},and my age is {1} '
print(sayhello.format('xzw', 22))

二、文件的读写操作


读文件:
f = open('C:\\test.txt', 'r') 
print(f.read())
f.close()

写文件:
f = open('C:\\test.txt', 'w')  //w是覆盖 , a追加写入 
f.write('hello python!!!')
f.close()  //写入的数据如果不关闭连接,数据可能还在内容中

三、生成器 


列表 :
python中列表内存储的数据类型可以不一样 
列表可以动态的扩展长度 
使用[]表示一个列表  

基本操作: 
list = [12, 'xzw', 1.1, 'lzq', 111]

print(list[0])
print(list[-1])
list[0] = 13
print(list)
list.append(100)
list.extend([20444555, 440])
list.insert(1, 'str')
list.pop()
print(list)

列表的切片: 

print(list[0:3]) #左闭右开
print(list[:3])
print(list[-3:-1])  #左闭右开
print(list[-3:]) 
print(list[0:99])

list = list(range(1, 100))
print(list)

print(list[10:20])
print(list[0:10:3])
print(list[::5])
print(list[::]) 

列表生成式

方法一: 
L = []
for i in range(1, 10):
    L.append(i * i)
print(L)


方法二(列表生成式):

list = [x * x for x in range(1, 10)]
print(list)

list = [x * x for x in range(1, 10) if x % 2 == 0]
print(list)

生成器 generator 
通过列表生成式可以直接生产一个列表,元素都以计算出 
如果一个列表元素非常多,直接计算出结果会产生oom
生成器可以解决: 
生成器没有直接计算出列表中元素的值,而是保存了计算算法
每次调用生成器时才会进行一次计算,而不是直接计算全部的值
生成器的类型是generator类型
列表生成式结果是list列表类型 

创建生成器: 

方法一:
list = (x * x for x in range(1, 10) if x % 2 == 0)
print(list)
print(type(list))

方法二: 
在函数中有yield关键字声明,则该函数最终返回结果是生成器

list = range(1, 10)

def getSquare(list):
    for i in list:
        temp = i * i
        yield temp  //使用yield关键字,函数变为了生成器 

print(getSquare(list))

生成器的取值:


方法一:

每使用next方法调用一次,就会计算一次并返回计算结果 


print(next(gene))
print(next(gene))
print(next(gene))
print(next(gene))

方法二: 
生成器也是一个可迭代对象,所以可以使用for进行迭代  

for x in gene:
    print(x)


原创粉丝点击