Python基础

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#encoding:utf-8
# cd-cd C:\Python27-python-import 文件名 
r'file:///E:/develop/python_requests/flm_requests/HTMLReport.html'
print os.getcwd()  # 打印当前脚本文档位置
filepath = "D:\\testdata.xlsx"
"file:\\D:\\123.html"

   ###########时间输入############
'mm/dd/yy=%02d/%02d/%04d' % (18,8,2016)  #'mm/dd/yy=18/08/2016'
print time.strftime("%Y-%m-%d %X")  # 打印当前时间

########## 函数 ###############
bool()   # 传入参数为非空,非零,均返回True
pow(2,3) # 取平方,2的3次方
divmod(93,10)  # 返回元组,包含商和余数。(9,3)
round(3.5)  # 四舍五入,得4
abs(-4)  #abs()是输出绝对值,返回4
max(1,2)  #max返回最大值
n2 = 1000
print hex(n2) #把整数转为十六进制

###########################
%s 字符串  %d 整型     %f 浮点型
print '%s is number %d' % ('five',5)
a=4.9958
print 'this number is %.2f' % 4.99  #输出4.99
print 'this number is %.2f' % a  #输出5.00

num = raw_input('enter login:')   #输入12
print 'true number is:%d' % (int(num)*2)  #输出24
print 'true number is: %s' % ((num)*2)      #输出1212

#######导入模块产生随机1到100的整数####
from random import randint
print randint(1,100)

import random
random.random()      # 大于0且小于1之间的小数
random.randint(1,5)  # 大于等于1且小于等于5之间的整数
random.choice([1,'23',[4,5]])  # #1或者23或者[4,5]
random.sample([1,'23',[4,5]],2) # #列表元素任意2个组合
random.uniform(1,3) #大于1小于3的小数
item=[1,3,5,7,9]
random.shuffle(item) # 打乱次序

##########列索引###########
fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):
   print '当前水果 :', fruits[index]

#
a = [1,2,3]
b = [4,5,6]
zip(a,b)   # [(1, 4), (2, 5), (3, 6)]

#
a = [1,2,3]
for i,A in enumerate(a):
	print A
    print i+1  # 遍历的循环的次数

############字符r使特殊符号不转义########
print r'\n'   #输出\n而非换行
a='w\''  # \转义  

#########计数################
a += 3 等于 a=a+3 
range(3)  range(0,3)

#########数据类型转换##########
int('123')  #123,转换为整型
float('12.34')	#12.34,转换为浮点型
str(1.23)	#1.23,转换为字符串
a = int(raw_input('num:')) #输入:12,a为整型
tuple(seq)   # 将列表转换成元组
list(str)   # 将字符串转换为列表
''.join(list) # 将列表转换为字符串
arr = e.split(',') #将字符串转换为数组

##########字符串索引##########
a='1234567'
b='12 34'
a[x]    #从0列开始输出第x列的字符
a[0]    #'1'
a[-1]   #'7'  输出最后一位

a[x::y]  #从0列开始计数以x列开始等差y输出的字符串
a[1::2]  #'246'
a[6::-1]  #'7654321' #从0列开始计数以x列开始向左等差y输出的字符串
a[::x]
a[::-1] #'7654321' 倒序输出
a[::-2] #'7531' 倒序输出相邻字符
a[::2]   #'1357'
a='1234567890'
a[1:9] and a[9::-2]  #'08642'

a[x:y]  #从0列开始计数输出以x列开始的y-x个字符串
a[2:5]  #'345'
a[:x]     #输出从0列开始到x-1列
a[:-1]  #'123456' 输出到倒数二位
a[:3]   #'123'  输出前三位
a[x:]与a[x::] 一样 #从0列开始计数输出以x开始的字符串
a[-3:]  #'567'从倒数三个开始输出
a[3:]   #'4567' 
a[-1:]#'7'

a+b     #'123456712 34'
(a+' ')*2    #'1234567 1234567 '
a+' '+b      #'1234567 12 34'

s = 'hello'
a,b,c,d,e=s   # 将s[0]、s[1]……分别赋值给abcde
a,_,_,_,e=s   # _只用下划线,默认为:要丢弃的变量,所以只有a,e赋值
print a,e

###############列表和元组索引与字符串同理###########
# ########字符串###########
a='1366623'
a.find('2')  #先找到2的位置为多少:5
a.find('3',5)  #找位置5后面的3,
a = 'abc'
b = a.replace('a', 'A')  #b为'Abc', a仍为'abc'

# ######列表########
a=[1,2,3,4,5,6,7]
a[0]=2  #把第0列元素修改为2,a=[2,2,3,4,5,,6,7] 
a.append('7')   #追加元素到末尾 a=[1,2,3,4,5,6,7,'7']
a.insert(1,'2')  #列表中第1列插入'2', [1,'2',2,3,4,5,6,7]
a.insert(-1,'2')  #列表中倒数第2列插入'2', [1,2,3,4,5,6,'2',7]
min(a)           #返回列表最小值
del a[1]         #删除第1列元素
a.pop(0)          #删除第0个list元素 a=[2,3,4,5,6,7]  
a.pop()         #删除list末尾元素
a.count(1)		#统计某个元素在列表中出现的次数
a=['w','34',['3','df'],'4rd']
'3' in a[2]  #in只能判断一个层次的元素
a.reverse() --> print a  #倒序排列
a.sort()  -->  print a   # 从小到大排序
a[2][1]        #输出'df'
a.index('34')  #找序列中的3
a.insert(1,'2')  #list中第1列插入'2',['w','2','34',['3','df'],'4rd']

# ###### 元组 ##########
# 元组中的元素不允许修改
t = ('a', 'b', ['A', 'B'])
t[2][0] = 'X'  #t=('a', 'b', ['X', 'B'])
# 元组中的值不允许删除
del t
# 元组索引、截取
t[0]  #读取第1列元素
# 元组只有1个元素,就必须加一个逗号,防止被当作括号运算
tup1 = ("all",)

########### 字典 #######################
d={'count': 12, 'xu':321, 'liu': 123, 'yang': 1234}
print d['count']  # 输出12
d.pop('xu')       # {'count': 12, 'liu': 123, 'yang': 1234}
del d['count']    # {'liu': 123, 'yang': 1234, 'xu': 321}
d['count']=22     # 键'count'的值修改为22
d['cheng']=2014   # 添加键值
del dict          # 删除词典
dict.clear()      # 清空词典所有条目
d.items()  # 每个键值对转化为一个小元组,{('count',12),('xu',321),('liu',123),('yang',1234)}
list(d.keys())  # 将dict_keys格式转化为list格式,['count','xu','liu','yang']
list(d.values()) # 将dict_values格式转化为list格式,[12,321,123,1234]
c = {'count': 33,'ed':8}
d.updata(c) --> print d  # 中有的覆盖,没有的添加,{'count': 33, 'xu':321, 'liu': 123, 'yang': 1234,'ed':8}
# 初始化建立字典
d={}.fromkeys(['a','b','c'],[1,2,3])  #{'a': [1, 2, 3], 'b': [1, 2, 3], 'c': [1, 2, 3]}

d = {'x': 'A', 'y': 'B', 'z': 'C' }
for k, v in d.items():
    print(k, '=', v)

 ###### set无序和无重复元素的集合###########
s = set([1, 1, 2, 2, 3, 3]) #重复元素在set中自动被过滤,{1, 2, 3}
s1 = set(['1', '2', '3'])
s2 = {'2', '3', '4'}
s1 & s2  # ([2, 3])
s1 | s2  # ([1,2,3,4])
s1 - s2  # ([1]) 只在s1中的部分
s1 ^ s2  # ([1,4}]) 交集以外的部分
s1.update(s2)   # 将s2的数据并入s1
s1.add(12)  # 添加
s1.remove(1)   # 删除元素
s1.pop()   # 随机删除

########### join把list转换为字符串####
a=['q','w','e']
b =''.join(a) #print b为:qwe
b =','.join(a)  #则print b 为'q,w,e'

########大小写转换###############
a='xu321u2x22WUUULii'
print a.swapcase()   # 大小写转换
print a.upper()      #小写转换大写
print a.lower()      # 大写转换小写
print a.capitalize() #首字母大写,其余小写
print a.title()      #每端首字母大写 其余小写
a.isupper()          #判断是否都是大写 

############提取字符串中数字组成新字符串#############
a='xu321u2x22WUUULii'
print ''.join([s for s in a if s.isdigit()])
a='123' ; b='qwe'
print ','.join([a,b])  #输出123,qwe

############计算字符串中各字符个数##############
a='xu321u2x22WUUULii'
a.count('a')
print dict([(x,a.count(x)) for x in set(a)])  

############提取字符串中数字组成新字符串#############
a='xu321u2x22WUUULii'
print ''.join([s for s in a if s.isdigit()])
a='123' ; b='qwe'
print ','.join([a,b])  #输出123,qwe

###########字符串去重排序######## #sorted 字符串按数字、大写字母、小写字母的顺序排序
a='xu321u2x22WUUULii'
a_list=list(a)   #转换成列表形式[’a','a','b','c']
set_list=list(set(a_list))   #用set去重[’a','b','c'],无序
set_list.sort(key=a_list.index)   #按原字符串顺序排序
print ''.join(set_list)           #转换为字符串

#########strip()使用#######
age = int(raw_input('number:)).strip()	# .strip()忽略输入的空格
name=raw_input('what is you name:').strip()
	if len(name) == 0:
	# if not name:

##########for使用############
for i in range(0,5):
	print '*'  #输出5行每行一个*
	print '*',  #输出1行有5个*
##
for i in range(0,5):
	for j in range(0,5):
		print i,j  #
		#print '*',
	#print '*'

############# split把字符串分割为list #########
a='q,w,e,r,t'
d=a.split(',')[2]  #以逗号为分割依据。显示第二列e
a='my name is xu xiao'
a.split()    #默认为空格为分割依据。输出['my', 'name', 'is', 'xu', 'xiao']
'aaa'.split('a')  #输出['', '', '', '']	
	
###########判断字符/串是否在字符串内##############
info='my name is xu'
'x' in info   #判断info字符串中是否有字符串x    

###########2个变量同时输出##############
a=('q','w','e','r')
b=('1','2','3','4')
for wi,ui in zip(a,b):
	print wi,ui
a='qwer'
b='1234'
zip(a,b)  #[('q','1'),('w','2'),...]

###########导入编写文本###################
d=open('note.txt''w\r')
d.write('写入文本的内容')
d.flush()
d.readlines()
d.seek(0)   #从头开始读取
f=file('note.txt')
print f.read()       #显示全部文本内容(字符串形式) 
c=f.readlines() 
print c              #显示列表形式
print f.readline()   #此行输一次显示一行文本
print f.readlines()  #读剩下所有行的文本(列表的形式显示)
c=f.readline()
f.close()
f=file('note.txt')
f.write('\n11\txiahong\t1314')  #\n:空格\t:缩进Tab
f.flush()     #刷新
f=file('copytxt.txt','w')  #w为清空重建该文本

#打印1到100,3的倍数打印Fizz,5的倍数打印buzz,既是3又是5的倍数打印Fizzbuzz######
for x in range(101):
	print 'Fizz'[x%3*4::]+'buzz'[x%5*4::]or x

###########字符顺序打印#####################
a='wi';b='ui'
print '{1} no {0}' .format(a,b) #1带入b,


###########计算1-10的整数和################
sum=0
for x in range(11):
	sum=sum+x
print sum
####
count=0
a=1
while a<11:
	count =count+a
	a += 1
print count

############计算1到10的偶数和####################
sum([i for i in range(1,11) if i%2==0])
####
sum = 0
n = 8
while n > 0:
	sum = sum + n  
	n = n - 2
print(sum)
###
L = []
x = 1
while x <= 100:
    L.append(x * x)
    x = x + 1
print sum(L)

########## 求x的n次方 ####
def qu(x,n):
	s=1
	while n>0:
		n=n-1
		s=s+x  #第一次迭代s=1+2=3,第二次s=3+2(S以迭代为3)
		# s=s*x  #第一次迭代s=1*2=2,第二次s=2*2(S以迭代为2)
	return s
print qu(2,5)

###
def add_end(L=None):
	if L is None:
		L = []
		L.append('END')
		return L
add_end()   #输出 ['END']


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值