python大一知识点串讲_python-前20天的着重知识点
1.CPU存在兩種工作狀態:一種是內核態,操作系統在運行--可以操作硬件;
另一種是用戶態,是應用軟件在運行--不可以操作硬件。
應用軟件要控制硬件,就要從用戶態切換成內核態
2.多道技術:(多道指的是多道/個程序)
空間上的復用:內存中進入多個程序
PS:內存必須實現物理級別的隔離
時間上的復用:cpu要切換:
1. 一個程序占用cpu的時間過長
2. 一個程序遇到I/O阻塞
3.定義一個變量,就會有三個特征:
id
type
value:才是我們存儲的數字
4.tag=True
while tag:
name=input('please input your name: ')
password=input('please input your password: ')
if name == 'egon' and password == '123':
print('login successfull')
while tag:
cmd=input('>>: ')
# if cmd == 'quit':
#???? tag=False
#???? continue
# print('====>',cmd)
if cmd == 'quit':
tag=False
else:
print('====>',cmd)
5.python2 的input 與raw_input
python3只有input
x=raw_input('>>: ') #python2的raw_input與python3的input的一樣的
print(x,type(x))
x=input('>>: ') #python2的input,用戶輸入什么類型,就原封不動的存成什么類型
print(x,type(x))
6.常見報錯:?? ??? ?ValueError: not enough values to unpack (expected 2, got 1)
一看就想到是字典出錯了, 解決:? for k,v in dict.items():
7.nonlocal關鍵字
1.外部必須有這個變量
2.在內部函數聲明nonlocal變量之前不能再出現同名變量
3.內部修改這個變量如果想在外部有這個變量的第一層函數中生效
def f1():
a = 1
def f2():
nonlocal a
a = 2
f2()
print('a in f1 : ',a)
f1()
8.函數和方法的區別?
class Foo(object):
def __init__(self):
self.name = 'alex'
def func(self):
print(self.name)
from types import FunctionType,MethodType
obj = Foo()
print(isinstance(obj.func,FunctionType)) # False
print(isinstance(obj.func,MethodType))?? # True
print(isinstance(Foo.func,FunctionType)) # True
print(isinstance(Foo.func,MethodType))?? # False
"""
注意:
方法,無需傳入self參數
函數,必須手動傳入self參數
9.裝飾器迭代和生成器的區別:
裝飾器就是開放封閉原則的一種實現,利用語法糖在被裝飾的函數執行前后執行一些操作
可迭代對象是內部實現了__iter__方法
迭代器是具有__iter__方法和__next__ 方法,生成器是具有生成的功能還有__next__方法
生成器本質就是迭代器,用一下動一下
分別用在哪?
可迭代對象在strak組件的組合查找時用到
生成器函數(yield)在后端取出數據需要循環處理傳給前端后,在前端還需要循環時,這時候在后端就用 yield 處理,減輕服務器壓力
10.http://www.cnblogs.com/liuwei0824/p/7269576.html 內置函數
總結
以上是生活随笔為你收集整理的python大一知识点串讲_python-前20天的着重知识点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 路由器 radius认证获取ip_玩转网
- 下一篇: python 豆瓣评论数据分析_Pyth