1. 程式人生 > >python學習(4)

python學習(4)

相等 append 求值 4.3 urn erro utf read pri

按位運算

按位 & | ^ ~

>> 3&3
3
>> 3&1
1
>> 2|1
3

異或
^
相同為0,不用為1

Is
判斷兩個對象是否相等,兩個對象的id()值相等才相等

Python緩存 -5~256的較小值,指向其的變量對象id值相等

operator

#coding=utf-8

import  operator

print  (operator.add(1,1))
print  (operator.sub(2,1))
print  (operator.mul(2,3))
print  (operator.truediv(6,2))
print  (operator.contains("ab","a"))
print  (operator.pow(2,3))
print  (operator.ge(1,1))
print  (operator.gt(2,1))
print  (operator.le(1,2))
print  (operator.eq(1,1))

python 3.4.3 的版本中已經沒有cmp函數,被operator模塊代替,在交互模式下使用時,需要導入模塊。

eval()
表達式求值,只能執行單行表達式,有返回值

>> s = "1+2+3"
>> eval(s)
6
>> su = eval(s)
>> su
6
>> eval("1+2")
3

exec()
exec函數和eval函數類似,也是執行動態語句,只不過eval函數只用於執行表達式求值,而exec函數主要用於執行語句塊,可以執行多行語句,沒有返回值;

>> e =‘print("hello")‘

>> exec(e)
Hello

>> exec("a = 2+3")
>> a
5

>> s = """
... for i in list(range(10)):
... print(i+1)
... """
>> exec(s)
1
2
3
4
5
6
7
8
9
10

標準輸出
sys.stdout.write()

>> import sys
>> sys.stdout.write("d")
d1
>> sys.stdout.write("dd")

dd2

標準錯誤輸出

>> sys.stderr.write("Error")
5
Error>>>

標準輸入

>> a = sys.stdin.read()
353
^Z
>> a
‘353\n‘


print(‘hello:?‘,end=‘‘)
hi=sys.stdin.readline()[:-1] 

打印內容保存到文件

import sys
print(‘Fatal error: invali input!‘,file=open("e:\\log.out","w"))

print(‘Fatal error: invali input! ‘,file=sys.stderr)#打印錯誤

math.pi

>> import math
>> math.pi
3.141592653589793

練習題:

1、把字符串中的所有數字去掉。

#coding=utf-8
s = "a1b2c3b4d5dddddd"

letters_list = []

for v in s:
    if v not in "0123456789":
        letters_list.append(v)
print("".join(letters_list))

print("".join([v  for v in s  if v.isalpha()]))

print("".join(filter(lambda x:x not in "0123456789",s)))

print("".join(filter(lambda x:x.isalpha(),s)))

2、三個數排序
#coding=utf-8

def sort_2(a,b,c):

    if a > b:
        a,b = b,a
    if a > c:
        a,c = c,a
    if b > c:
        b,c =c,b
    return a,b,c

print(sort_2(3,1,9))

3、求一個列表中的最大值

def max(a):
    #找到列表的最大值
    max_num = a[0]

    for i in a:
        if i > max_num:
            max_num =i
return max_num

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

print(max(a))

python學習(4)