input( ) 函式所取得的值一律都是字串,所以在使用取得的資料之前必須先轉換成對應的資料型別後,再作其它的動作。轉換型別的函式常用的有 int( ), float( ), str( ). 另外,也常看到測試題目常會使用eval( )這個函式來作型別轉換使用。eval( ) 的輸入一定要是string的型別,字串的內容如果是float樣式的字串,轉換出來的值就是float 型別。字串的內容如果是int樣式的字串,轉換出來的值就是int型別。
例子:
a = eval("55.1")
b = eval("3")
c = eval('a * b * 10.0')
print("a data type = ",type(a)) #輸出的結果 a data type = <class 'float'>
print("b data type = ",type(b)) #輸出的結果 b data type = <class 'int'>
print("c data type = ",type(c)) #輸出的結果 c data type = <class 'float'>
print("c = ",c) #輸出的結果 c = 1653.0
print( )函式,預設是用'\n'來作列印的結尾,所以印出一行後就會自動換行。如果想要多個print( )的函式列印的內容要在同一行的話,最後要加一個參數end值為''。
例子:
a = 5
b = 3
c = a * b
print('a = ',a,end='')
print(', b = ',b,end='')
print('. a * b = ',c)
# 輸出結果列印在同一行 a = 5, b = 3. a * b = 15
print( ) 函式內的參數除了一般的字串外, 還可以有一些變化。
a = 5
b = 9
print(f"a + b = {a+b}")
# 輸出的結果為: a + b = 14
a = 8
b = 9
print("a is {}, b is {}, a + b = {}".format(a, b, (a+b)))
# 輸出的結果為: a is 8, b is 9, a + b = 17
x = 33
y = 77
print(" x is %d, and y is %d. x + y = %d" % (x, y, (x+y)))
# 輸出結果為: x is 33, and y is 77. x + y = 110
python對於字串的處理提供了很多的函式,可以參考(Link)。不容易記下來所以的函式,所以,可以挑幾個比較常用的,自己動手試過一次才會有更深的印象。
例子:
str1 = "Test Test test tEsT"
str1.title()
# 輸出結果為: 'Test Test Test Test'
str1
# 輸出結果為:'Test Test test tEsT'
str1.isalnum()
# 輸出結果為:False
str1.split(' ')
# 輸出結果為:['Test', 'Test', 'test', 'tEsT']
''.join(str1.split(' '))
# 輸出結果為:'TestTesttesttEsT'
str2 = ''.join(str1.split(' '))
str2.isalnum()
# 輸出結果為:True