1. 程式人生 > >Python文件類型,變量及字符串

Python文件類型,變量及字符串

python文件類型變量及字符串

1. 文件類型:

(1)源代碼:

vim test.py

#!/usr/bin/python

print 'hello world!'

運行方法1:

[root@localhost python]# python test.py

hello world!

[root@localhost python]#

運行方法2:

[root@localhost python]# chmod +x test.py

[root@localhost python]# ./test.py

hello world!

[root@localhost python]#

(2)字節代碼:

python源文件編譯後為擴展名字為.pyc

刪除源碼,編譯後的二進制文件可以獨立執行。

編譯方法:

vim 2.py

#!/usr/bin/python

import py_compile

py_compile.compile('test.py')

[root@localhost python]# python 2.py

[root@localhost python]# ls

2.py test.py test.pyc

[root@localhost python]#

[root@localhost python]# python test.pyc

hello world!

[root@localhost python]#

(3)優化的代碼:

python -O -m py_compile test.py

[root@localhost python]# python -O -m py_compile test.py

[root@localhost python]# ls

2.py test.py test.pyc test.pyo

[root@localhost python]# python test.pyo

hello world!

[root@localhost python]#

2.Python的變量

變量是計算機內存中的一塊區域,變量可以存儲規定範圍內的值,而且值可以改變結構。

python下變量是對一個數據的引用

(1)變量的命名:

    1. 變量名的長度不受限制,但其中的字符必須是字母、數字、或者下劃線(_),而不能使用空格、連字符、標點符號、引號或其他字符。

    2. 變量名的第一個字符不能是數字,而必須是字母或下劃線。

    3. Python區分大小寫。

    4. 不能將Python關鍵字用作變量名。

例如: a a1 _a

(2)變量的賦值:

是變量的聲明和定義的過程。

a = 123

In [1]: a = 123

In [2]: a

Out[2]: 123

In [3]: id(a)

Out[3]: 7891024

In [4]: a = 456

In [5]: id(a)

Out[5]: 19127624

In [6]:

(3)運算符和表達式:

賦值運算符

算術運算符

關系運算符

邏輯運算符

表達式:

將不同的數據(包括變量、函數)用運算符號按一定的規則連接起來的一種式子。

1)賦值運算符

In [68]: a = 3

In [69]: a

Out[69]: 3

In [70]: a+=3

In [71]: a

Out[71]: 6

In [72]: a-=4

In [73]: a

Out[73]: 2

In [76]: a*=3

In [77]: a

Out[77]: 6

In [78]: a/=2

In [79]: a

Out[79]: 3

In [80]: a%=3

In [81]: a

Out[81]: 0

In [82]:

2)算術運算符

In [82]: 1 + 2

Out[82]: 3

In [83]: 2 - 1

Out[83]: 1

In [84]: 2 * 2

Out[84]: 4

In [85]: 6 / 2

Out[85]: 3

In [86]: 6 % 2

Out[86]: 0

In [88]: 3.999999 / 2

Out[88]: 1.9999995

In [89]: 3.999999 // 2

Out[89]: 1.0

In [90]: 3 ** 2

Out[90]: 9

In [91]:

3)關系運算符:

In [91]: 1 > 2

Out[91]: False

In [92]: 2 < 3

Out[92]: True

In [93]: 2 >= 1

Out[93]: True

In [94]: 3 <= 56

Out[94]: True

In [95]: 3 == 3

Out[95]: True

In [96]: 2 != 34

Out[96]: True

In [97]:

4)邏輯運算符:

技術分享圖片

In [97]: 1 < 2 and 2 > 0

Out[97]: True

In [98]: 1 == 1 and 2 < 1

Out[98]: False

In [99]: 1 == 1 or 2 < 1

Out[99]: True

In [100]: not 1 > 2

Out[100]: True

5)各種運算符的優先級:

往右越高 上到下越高,

lambda 匿名函數。

技術分享圖片技術分享圖片

練習:

寫一個四則運算器:

要求從鍵盤讀取數字。

input()與raw_input()

查看幫助:help(input)

raw_input()都當然成字符串處理

%s 格式化字符串。

[root@localhost python]# cat 4.py

#!/usr/bin/python

num1 = input("Please input: ")

num2 = input("Please input: ")

print "%s + %s = %s" % (num1,num2,num1+num2)

print "%s - %s = %s" % (num1,num2,num1-num2)

print "%s * %s = %s" % (num1,num2,num1*num2)

print "%s / %s = %s" % (num1,num2,num1/num2)

[root@localhost python]# python 4.py

Please input: 3

Please input: 5

3 + 5 = 8

3 - 5 = -2

3 * 5 = 15

3 / 5 = 0

[root@localhost python]#


3.Python的數值和字符串

數據類型:

數值

字符串

列表

元組

字典

數值類型:

整型

In [6]: a = 123

In [7]: type(a)

Out[7]: int

In [8]:

長整型

In [8]: a = 199999999999999999999999999999

In [9]: a

Out[10]: 199999999999999999999999999999L

In [11]: type(a)

Out[12]: long

In [13]:

浮點型

0.0, 12.0 -18.8 3e+7等

科學計數法是浮點型

In [11]: 3e+7

Out[11]: 30000000.0

In [12]: type(3e+7)

Out[12]: float

In [13]: 3.0/2

Out[13]: 1.5

In [14]: type(3.0/2)

Out[14]: float

In [15]:

復數型

python對復數提供內嵌支持,這是大部分軟件沒有的。

In [8]: a = 3.14j

In [9]: a

Out[9]: 3.14j

In [10]: type(a)

Out[10]: complex

字符串類型:

In [12]: a = 'abc'

In [13]: a

Out[13]: 'abc'

In [14]: type(a)

Out[14]: str

In [15]:

三重引號還可以做註釋:.

In [28]: a = 'hello\nworld'

In [29]: a

Out[29]: 'hello\nworld'

In [30]: a = "hello\nworld"

In [31]: a

Out[31]: 'hello\nworld'

In [39]: a = '''hello\nworld'''

In [40]: a

Out[40]: 'hello\nworld'

In [41]: print a

hello

world

In [42]:

In [43]: type(a)

Out[44]: str

序列索引:

In [42]: a = 'abcde'

In [43]: a[0]

Out[43]: 'a'

In [44]: a[1]

Out[44]: 'b'

In [45]: a[-1]

Out[45]: 'e'

In [46]: a[-2]

Out[46]: 'd'

序列切片:

In [42]: a = 'abcde'

In [43]: a[0]

Out[43]: 'a'

In [44]: a[1]

Out[44]: 'b'

In [45]: a[-1]

Out[45]: 'e'

In [46]: a[-2]

Out[46]: 'd'

In [47]: a[0:2]

Out[47]: 'ab'

In [48]: a[0:4]

Out[48]: 'abcd'

In [49]: a[0:3]

Out[49]: 'abc'

In [50]: a[1:3]

Out[50]: 'bc'

In [56]: a[0] + a[1]

Out[56]: 'ab'

In [57]: a[:2]

Out[57]: 'ab'

In [58]: a[:]

Out[58]: 'abcde'

In [59]: a[:-1]

Out[59]: 'abcd'

In [60]: a[::-1]

Out[60]: 'edcba'

In [61]: a[::1]

Out[61]: 'abcde'

In [62]: a[:3:1]

Out[62]: 'abc'

In [63]: a[::2]

Out[63]: 'ace'

In [64]: a

Out[64]: 'abcde'

In [65]: a[-4::-2]

Out[65]: 'b'

In [66]: a[-4:-2]

Out[66]: 'bc'

In [67]: a[-2:-4:-1]

Out[67]: 'dc'

In [68]:

練習:

將 “123” 轉換成整數

In [1]: int(123)

Out[1]: 123

將 “9999999999999999999” 轉換成長整數

In [2]: long(9999999999999999999)

Out[2]: 9999999999999999999L

將 “3.1415926” 轉換成一個浮點數

In [4]: float(3.1415926)

Out[4]: 3.1415926

將 123 轉換成一個字符串

In [3]: str(123)

Out[3]: '123'

現有以下字符串

字符串1:" abc deFGh&*ijkl opq mnrst((uvwxyz "

字符串2:" ABC#DEF GH%IJ MNOPQ KLRS&&TUVWX(*&YZ "

使用字符串的各種方法轉換成如下方式

ABCDEFGHIJKLMNOPQRSTUVWXYZzyxwvutsrqponmlkjihgfedcba

b[1:4]+b[5:8]+b[9:11]+b[13:14]+b[15:20]+b[22:25]+b[28:32]+b[35:37]+


Python文件類型,變量及字符串