python基础3

原创 2017年08月23日 19:47:36
#list列表
fruit =['pineapple','pear']
fruit.insert(1,'grape')
fruit[0:0] = "orange"
print(fruit)
fruit.remove('grape')
print(fruit)
del fruit[0:2]#del 0 and 1
fruit.extend(['apple','blana'])#add two
print(fruit)

#dictionary字典
NSSDAQ_code = {
    'BD':'baidu',
    'TX':'tenxun'
}
NSSDAQ_code['AL'] ='alibaba'
NSSDAQ_code.update({'PW':'perfect world','WY':'wangyi'})
del NSSDAQ_code['WY']
print(NSSDAQ_code)

#Tuple元组
letters = ('a','b','c','d')
print(letters[0])

#set
a_set ={1,2,3,4}
a_set.add(5)
print(a_set)
a_set.discard(5)
print(a_set)

num_list =['6','3','7','2']
char_list = ['aaaa','fff','erwew','ere']
print(sorted(num_list,reverse=True),sorted(char_list))

#列表的解析式
import  time
a = []
t1 = time.clock()
for i in range(1,20000):
    a.append(i)
print(time.clock() -t1,'s')

b= []
t2 =time.clock()
b = [i for i in range(1,20000)]#推导式#解析式

print(time.clock() -t2,'s')

#result:
# 0.004609000000000009 s
#0.001346 s这个效率高

#list 推导式
a =[i*2 for i in range(1,6)]
b =[i+1 for i in range(1,6)]
c =[i for i in range(1,6) if i%2 ==0]
print(a,b,c)

#set 推导式
d = {i:i+1 for i in range(4)}
e = {i:j.upper() for i,j in zip(range(1,5),'abcd')}
print(d,e)

#遍历list,获取element和i
lett = ['a','b','c','d']
for num,let in enumerate(lett):
    print (num,let)

#class类
class TestA:
    attr = 1
    def _init_(self):
        self.attr = 4
obj_a = TestA()
print('result:',obj_a.attr)#结果是1,为什么不是4,(类属性和实例属性区别,值得思考,表示没想通)
print(TestA.__dict__)
print(obj_a.__dict__)

class TestB:
    attr = 1
obj_b = TestB()
obj_c = TestB()
obj_b.attr = 10#attr私有属性
print(obj_c.attr)

class TestC:
    atrr = 1
obj_d = TestC()
TestC.atrr = 10
print(obj_d.atrr)

#get  lib path
import  sys
print(sys.path)

#use my own lib使用自己封装的库
import Mylib
for name,sex in zip(Mylib.FakeUser.fake_name(30),Mylib.FakeUser.fake_name(30)):
    print(name,sex)

#get locale encode style
import locale
print(locale.getpreferredencoding())

#file operation
file_caoyajun = open('/Users/cykj/Desktop/caoyajun.txt')
print(file_caoyajun.name,file_caoyajun.encoding,file_caoyajun.mode,'\n',file_caoyajun.read())#name、encoding、access(r/w/x)
#English use 1 byte,chinese use several size
#seek()  and read() paramer  is  not synchron
print(file_caoyajun.read(),file_caoyajun.seek(0),file_caoyajun.read(1),file_caoyajun.read(3),file_caoyajun.tell(),)#读文件,文件起点,读一个byte,读3个byte,当前位置(注意一个汉字可能占几个byte)
file_caoyajun.close()
#actually the  file_caoyajun  is  not  release,just close  the file
#solution:
line_number = 0
with open('/Users/cykj/Desktop/caoyajun.txt',mode ='r',encoding = 'utf-8') as  file_cyj: #note:':'represent  code block.
    for a_line in  file_cyj:
        line_number += 1
	#前面有4个空格然后右对齐,过滤掉‘.\n’
        print('{0:>4} {1}'.format(line_number,a_line.rstrip()))#rstrip  delete  '. \n'  {:>4} 右对齐 asign right at  most 4  space
#python can  auto  to close  the file_cyj

with open('/Users/cykj/Desktop/caoyajun.txt',mode ='a',encoding = 'utf-8') as  file_cyj:
    file_cyj.write('\naaaaaaaaaaaaaaaa')


result:

                    
版权声明:本文为博主原创文章,未经博主允许不得转载。

python基础教程part3

  • 2011年08月05日 19:05
  • 1.03MB
  • 下载

用Python学习统计学基础-3

检验你的问题 概率和概率的重要性
  • hjh00
  • hjh00
  • 2015年09月17日 16:36
  • 1754

征服Python-语言基础与典型应用.part3

  • 2007年12月28日 17:26
  • 28.61MB
  • 下载

Python3-基础语法(纯文本)

  • 2017年11月28日 10:42
  • 935KB
  • 下载

Python基础3Unicode编码+整数浮点数+布尔类型+list列表集合

1 Python中Unicode字符串 1.1 ASCII编码 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(b...

Python3 基础教程(带书签 廖雪峰)

  • 2017年11月06日 10:36
  • 3.31MB
  • 下载

征服Python--语言基础与典型应用(3)

  • 2011年08月16日 16:21
  • 11.85MB
  • 下载

Python 3基础教程24-读取csv文件

本文来介绍用Python读取csv文件。什么是csv(Comma-Separated Values),也叫逗号分割值,如果你安装了excel,默认会用excel打开csv文件。 1. 我们先制作一个...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python基础3
举报原因:
原因补充:

(最多只允许输入30个字)