Python學習系列 - 數據類型和變量(一)

python學習之旅開始了。。。
python版本爲3.7.4,開發工具使用的是PyCharm。

1 數據類型和變量

Python3 中有六個標準的數據類型:python

  • Number(數字)
  • String(字符串)
  • List(列表)
  • Tuple(元組)
  • Set(集合)
  • Dictionary(字典)

Python3 的六個標準數據類型中:函數

  • 不可變數據(3 個):Number(數字)、String(字符串)、Tuple(元組);
  • 可變數據(3 個):List(列表)、Dictionary(字典)、Set(集合)。

1.1 Number(數字)

a = 123
print(type(a))
輸出結果爲:
<class 'int'>

1.2 String(字符串)

a = '字符串'
print(type(a))
輸出結果爲:
<class 'str'>
  • 字符串中可能會包含一些特殊字符,能夠用轉義字符\來標識:
a = 'I\'m a boy'  
print(a)  
print(type(a))
輸出結果爲:
I'm a boy
<class 'str'>
  • \n表示換行,\t表示製表符
print('1\n2')
print('3\t4')
輸出結果爲:
1
2
3    4
  • r''表示''內部的字符串默認不轉義
print(r'不\t轉\\義\n了')
輸出結果爲:
不\t轉\\義\n了
  • '''...'''的表示多行內容
print('''  
牀前明月光,  
疑是地上霜,  
舉杯邀明月,  
低頭思故鄉。  
''')
輸出結果爲:
牀前明月光,
疑是地上霜,
舉杯邀明月,
低頭思故鄉。
  • 字符串的截取的語法格式以下:
變量[頭下標:尾下標]
索引值以 0 爲開始值,-1 爲從末尾的開始位置。
str = 'hello'  
print(str[0: 2]) #從第一個字符到第二個字符
print  (str[0:-2])  # 輸出第一個到倒數第三個的全部字符
輸出結果爲:
he
hel
  • 格式化,用%實現
print('你好, %s, 你如今%d歲了。' % ('小強', 18))
輸出結果爲:
'你好, 小強, 你如今18歲了'

1.3 List(列表)

列表是寫在方括號 [] 之間、用逗號分隔開的元素列表。工具

list = ['abc', 'def', 'ghi', 'gkl']  
print(type(list))
輸出結果爲:
<class 'list'>
  • 列表截取的語法格式以下:
變量[頭下標:尾下標]
索引值以 0 爲開始值,-1 爲從末尾的開始位置。
list = ['abc', 'def', 'ghi', 'gkl']  
print (list)  # 輸出完整列表  
print (list[0])  # 輸出列表第一個元素  
print (list[1:3])  # 從第二個開始輸出到第三個元素  
print(list[1:-1])  # 從第二個開始輸出到倒數第二個元素
輸出結果爲:
['abc', 'def', 'ghi', 'gkl']
abc
['def', 'ghi']
['def', 'ghi']
  • 列表修改元素:
list = ['abc', 'def', 'ghi', 'gkl']  
print(list)  
list[0] = 'qqq'  
print(list)
輸出結果爲:
['abc', 'def', 'ghi', 'gkl']
['qqq', 'def', 'ghi', 'gkl']

1.4 元組(Tuple)

元組(tuple)與列表相似,不一樣之處在於元組的元素不能修改。元組寫在小括號 () 裏,元素之間用逗號隔開。學習

tuple = ('abc', 'def', 'ghi', 'gkl')  
print(type(tuple))
輸出結果爲:
<class 'tuple'>
  • 元組截取的語法格式以下:
變量[頭下標:尾下標]
索引值以 0 爲開始值,-1 爲從末尾的開始位置。
tuple = ('abc', 'def', 'ghi', 'gkl')  
print(tuple)  # 輸出完整元組  
print(tuple[0])  # 輸出元組第一個元素  
print(tuple[1:3])  # 從第二個開始輸出到第三個元素  
print(tuple[1:-1])  # 從第二個開始輸出到倒數第二個元素
輸出結果爲:
('abc', 'def', 'ghi', 'gkl')
abc
('def', 'ghi')
('def', 'ghi')
  • 元組裏面的元素不可修改
tuple = ('abc', 'def', 'ghi', 'gkl')  
print(tuple)  
tuple[0] = 'qqq'  
print(tuple)
輸出結果爲:
Traceback (most recent call last):
  File "D:/WorkSpace/Study/pythonTest/dataType.py", line 3, in <module>
    tuple[0] = 'qqq'
TypeError: 'tuple' object does not support item assignment
('abc', 'def', 'ghi', 'gkl')

1.5 Set(集合)

集合(set)是由一個或數個形態萬千的大小總體組成的,構成集合的事物或對象稱做元素或是成員。開發工具

student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}  
print(type(student))
輸出結果爲:
<class 'set'>
  • set集合不容許有重複元素
student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'} print(student)  # 輸出集合,重複的元素被自動去掉
輸出結果爲:
{'Rose', 'Jim', 'Tom', 'Mary', 'Jack'}
  • set集合能夠直接判斷某個元素是否在裏面
student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}  
if 'Mary' in student:  
    print('集合中包含Mary')  
else:  
    print('集合中不包含Mary')
輸出結果爲:
集合中包含Mary
  • set集合能夠進行集合運算
a = {'a', 'b', 'c', 'd'}  
b = {'a', 'f', 'e', 'h'}  
print(a - b)  # a 和 b 的差集  
print(a | b)  # a 和 b 的並集  
print(a & b)  # a 和 b 的交集  
print(a ^ b)  # a 和 b 中不一樣時存在的元素
輸出結果爲:
{'b', 'c', 'd'}
{'d', 'b', 'a', 'h', 'e', 'f', 'c'}
{'a'}
{'d', 'h', 'b', 'e', 'f', 'c'}

1.6 Dictionary(字典)

字典是一種映射類型,字典用 { } 標識,它是一個無序的 鍵(key) : 值(value) 的集合。
在同一個字典中,鍵(key)必須是惟一的。code

dict = {}  
dict['a'] = 'one'  
dict['b'] = 'two'  
print(type(dict))
輸出結果爲:
<class 'dict'>
  • 基本操做
dict = {}  
dict['a'] = 'one'  
dict['b'] = 'two'  
print(dict)  # 輸出完整的字典    
print(dict['a'])  # 輸出鍵爲a的值
print(dict.keys())  # 輸出全部鍵  
print(dict.values())  # 輸出全部值
輸出結果爲:
{'a': 'one', 'b': 'two'}
one
dict_keys(['a', 'b'])
dict_values(['one', 'two'])
  • 構造函數 dict() 能夠直接從鍵值對序列中構建字典以下:
d1 = dict([('Baidu', 1), ('Google', 2), ('Taobao', 3)])
print(d1)
d2 = dict(Baidu=1, Google=2, Taobao=3)
print(d2)
輸出結果爲:
{'Baidu': 1, 'Google': 2, 'Taobao': 3}
{'Baidu': 1, 'Google': 2, 'Taobao': 3}

2 條件判斷

2.1 if

若是if語句判斷是True,就執行縮進print語句,不然,什麼也不作。對象

a = 25  
if a > 18:  
    print('你已經成年了')
輸出結果爲:
你已經成年了

2.2 if...else

若是if判斷是True,就執行if的內容,不去執行else
若是if判斷是False,不執行if的內容,去執行else索引

a = 16  
if a > 18:  
    print('你已經成年了')  
else:  
    print('你尚未成年')
輸出結果爲:
你尚未成年

2.3 if...elif...else

elif就是一個if判斷,從開始進行判斷,條件爲True就執行,都沒有就執行else開發

a = 25  
if 0 <= a < 60:  
    print('不及格')  
elif 60 <= a < 80:  
    print('及格')  
elif 80 <= a < 90:  
    print('優秀')  
elif 100 == a:  
    print('滿分')  
else:  
    print('輸入的分數不合法')
輸出結果爲:
及格

3 循環

3.1 for...in循環

依次把list或tuple中的每一個元素迭代出來字符串

name = \['小紅', '小強', '小黑', '小黃'\]  
for value in name:  
    print(value)
輸出結果爲:
小紅
小強
小黑
小黃

3.2 while循環

只要條件知足,就不斷循環,條件不知足時退出循環

# 計算100之內全部奇數之和
a = 99  
sum = 0  
while a > 0:  
    sum = sum + a  
    a = a - 2  
print(sum)
輸出結果爲:
2500
相關文章
相關標籤/搜索