日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python总结:Python基础(一)

發布時間:2025/7/14 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python总结:Python基础(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python之路【第二篇】:Python基礎(一)


入門知識拾遺

一、作用域

對于變量的作用域,執行聲明并在內存中存在,該變量就可以在下面的代碼中使用。

123if 1==1:????name = 'wupeiqi'print? name

下面的結論對嗎?

外層變量,可以被內層變量使用

內層變量,無法被外層變量使用

二、三元運算

1result = 值1 if 條件 else 值2

如果條件為真:result = 值1
如果條件為假:result = 值2

三、進制

  • 二進制,01

  • 八進制,01234567

  • 十進制,0123456789

  • 十六進制,0123456789ABCDE

Python基礎

對于Python,一切事物都是對象,對象基于類創建

所以,以下這些值都是對象: "wupeiqi"、38、['北京', '上海', '深圳'],并且是根據不同的類生成的對象。

一、整數

如: 18、73、84

每一個整數都具備如下功能:

int

二、長整型

可能如:2147483649、9223372036854775807

每個長整型都具備如下功能:

long

三、浮點型

如:3.14、2.88

每個浮點型都具備如下功能:

float

四、字符串

如:'wupeiqi'、'alex'

每個字符串都具備如下功能:

str

注:編碼;字符串的乘法;字符串和格式化

五、列表

如:[11,22,33]、['wupeiqi', 'alex']

每個列表都具備如下功能:

list

注:排序;

六、元組

如:(11,22,33)、('wupeiqi', 'alex')

每個元組都具備如下功能:

tuple

七、字典

如:{'name': 'wupeiqi', 'age': 18} 、{'host': '2.2.2.2', 'port': 80]}

ps:循環時,默認循環key

每個字典都具備如下功能:

dict

123練習:元素分類有如下值集合 [11,22,33,44,55,66,77,88,99,90...],將所有大于 66 的值保存至字典的第一個key中,將小于 66 的值保存至第二個key的值中。即: {'k1': 大于66 , 'k2': 小于66}

?八、set集合

set是一個無序且不重復的元素集合

set

123456789101112131415161718練習:尋找差異# 數據庫中原有old_dict = {????"#1":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 },????"#2":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 }????"#3":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 }}# cmdb 新匯報的數據new_dict = {????"#1":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 800 },????"#3":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 }????"#4":{ 'hostname':c2, 'cpu_count': 2, 'mem_capicity': 80 }}需要刪除:?需要新建:?需要更新:? 注意:無需考慮內部元素是否改變,只要原來存在,新匯報也存在,就是需要更新

demo?

九、collection系列

1、計數器(counter)

Counter是對字典類型的補充,用于追蹤值的出現次數。

ps:具備字典的所有功能 + 自己的功能

123c = Counter('abcdeabcdabcaba') print c輸出:Counter({'a': 5, 'b': 4, 'c': 3, 'd': 2, 'e': 1})

Counter

2、有序字典(orderedDict )

orderdDict是對字典類型的補充,他記住了字典元素添加的順序

OrderedDict

3、默認字典(defaultdict)?

學前需求:

12有如下值集合 [11,22,33,44,55,66,77,88,99,90...],將所有大于 66 的值保存至字典的第一個key中,將小于 66 的值保存至第二個key的值中。即: {'k1': 大于66 , 'k2': 小于66}

原生字典解決方法

defaultdict字典解決方法

defaultdict是對字典的類型的補充,他默認給字典的值設置了一個類型。

defaultdict

4、可命名元組(namedtuple)?

根據nametuple可以創建一個包含tuple所有功能以及其他功能的類型。

123import collectionsMytuple = collections.namedtuple('Mytuple',['x', 'y', 'z'])

Mytuple

5、雙向隊列(deque)

一個線程安全的雙向隊列

deque

注:既然有雙向隊列,也有單項隊列(先進先出 FIFO )

Queue.Queue

迭代器和生成器

一、迭代器

對于Python 列表的 for 循環,他的內部原理:查看下一個元素是否存在,如果存在,則取出,如果不存在,則報異常?StopIteration。(python內部對異常已處理)

listiterator

二、生成器

range不是生成器 和 xrange 是生成器

readlines不是生成器 和 xreadlines 是生成器

1234>>> print range(10)[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> print xrange(10)xrange(10)

生成器內部基于yield創建,即:對于生成器只有使用時才創建,從而不避免內存浪費

1234567891011練習:<br>有如下列表:????[13, 22, 6, 99, 11]請按照一下規則計算:13 和 22 比較,將大的值放在右側,即:[13, 22, 6, 99, 11]22 和 6 比較,將大的值放在右側,即:[13, 6, 22, 99, 11]22 和 99 比較,將大的值放在右側,即:[13, 6, 22, 99, 11]99 和 42 比較,將大的值放在右側,即:[13, 6, 22, 11, 99,]13 和 6 比較,將大的值放在右側,即:[6, 13, 22, 11, 99,]...

Demo

深淺拷貝

為什么要拷貝?

1當進行修改時,想要保留原來的數據和修改后的數據

數字字符串 和 集合 在修改時的差異? (深淺拷貝不同的終極原因)

123在修改數據時:????數字字符串:在內存中新建一份數據?????????集合:修改內存中的同一份數據

對于集合,如何保留其修改前和修改后的數據?

1在內存中拷貝一份

對于集合,如何拷貝其n層元素同時拷貝?

1深拷貝

作業

  開發一個簡單的計算器程序
  *實現對加減乘除、括號優先級的解析,并實現正確運算?

?

作者:武沛齊
出處:http://www.cnblogs.com/wupeiqi/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接。


轉載于:https://blog.51cto.com/sky66/1722611

總結

以上是生活随笔為你收集整理的Python总结:Python基础(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。