python笔记(一)

目录

一、环境配置&编译器下载

1、windows环境下下载python流程
2、linux环境下下载python流程

二、知识点总结

1、cmd常用命令语句
2、Python的数和字符串
3、Python的数据类型
4、python 的对象
5、python 的行与缩进
6、python 的运算符
7、python 的运算符优先级(从上至下 排列)
8、Python的控制流
9、Python的函数
10、Python的模块
11、Python 字节编译
12、Python from …..import详解
13、Python 认识 __name__ 属性
14、Python 自定义模块
15、Python dir() 函数
16、Python 数据结构

正文

1、windows环境下下载python流程
window环境下载python流程
2、linux环境下下载python流程
linux 环境下载python流程
3、python官网编译器下载地址
python官网编译器下载地址

备注:请下载正确的编译器,下载之前请核对好电脑的操作系统(64&32位 等信息 以免出错)

1、cmd常用命令语句

1、如果输出 print ("123") 
2、如何退出编辑模式 输入 exit()   新版本 ,或者 ctrl + d   老版本 
3、如何编译多条 命令 command+n 编写多条语句 然后按 F5 编辑完毕
4、如何在cmd 模式下 & 终端模式下运行 本地.py文件,终端 输入 python tempPython.py 即可~

2、Python的数和字符串

数的类型(整型 int 长整型 long 浮点型 float 布尔型 bool 复数型 complex)

复数型:4+2j. 5+6j

Python 中存在三种引号  (单引号 双引号 三引号) 双引号中可以使用单引号 反之不可以 三引号 主要是能让 字符串换行~

三引号eg:

c4 = ''' wo
qu
ma
'''
print (c4)


转译符:       \’ 可以在单引号输出时 忽略掉\后面的’
        如何保留 转译符号 在输出语句之前添加r 。 eg:print (r'it \'is a  dog')

重复运算符: print ("hello ni "*20).        输出语句*20 


字符串通过索引输出eg:

c1 = "nsasabi"
c2 = c1[0]
c2 = c1[:4]
c2 = c1[4:]
c4 = c1[4:7]
print (c4)

3、Python的数据类型

基本数据类型 : 数 & 字符串


列表: 等同于数组~ (1、有序 2、 可以替换)

eg:
student = ["小王","小李","校长","爱心"]
print (student[2])

student[2] = "nimao"
print (student)

元组: (1、有序 2、 不可以替换)

eg:
nima = ("haha","hehe","xixi","qinqin","emem")
print (nima[1])


集合:

eg:
a = set("abcdefg")
b = set("scdfvg")

#交集
x = a&b
print (x)

#并集
y = a|b
print (y)

#差集
z = a-b
print (z)

#去除重复的元素
new = set(a)
print (new)


字典:
eg:
zidian = {'name':'尼','city':'尼哦','country':'个','xing':'新'}
print (zidian)

print (zidian['name'])


zidian['兴趣'] = '开飞机'
print (zidian)

4、python 的对象

1、什么是python的对象 (一切皆对象)
2、详解pickle 腌制 ( 将对象存储在内存&第三方文件中 的过程叫做pickle腌制)


eg:

#导入pickle 
import pickle
#dumps(object)将对象序列化
lista = ["nima","nimei","woaini1"]
listb = pickle.dumps(lista)
print (listb)
#loads(string)将对象原样恢复,并且对象类型也恢复为原来的格式
listc = pickle.loads(listb)
print (listc)
#dump(object,file),将对象存错在文件当中序列化
group1= ("baijiu","hongjiu","nimeide1")
f1=file('1.pk1','wb')
pickle.dump(group1,f1,True)
f1.close()
#load(object,file)将dump()存储在文件里面的数据恢复
f2 = file('1.pk1','rb')
t = pickle.load(f2)
print(t)
#print(t)
f2.close()

5、python 的行与缩进

1、了解逻辑行和物理行
            物理行:实际看到的行数 
            逻辑行:几个逻辑就是几个逻辑行
2、行中分号的使用规则
    分号用来区别逻辑行的逻辑~如果逻辑行在物理行的末尾则可以省略分号~
3、行连接——> \可以帮助行连接
 eg:
    print ("你妹\
       的")
4、什么是缩进?————>逻辑行的行首一般情况下是不能留白的 (if while 判断语句除外)
eg:
import sys
a = -1
if a>0:
    print ("hello")
else:
    print ("小于0了")

6、python 的运算符

&    |   ^ 按位与运算 所谓的按位与 是指一个数字转化为二进制 然后这些二进制的数按位来运算

eg: 

7 & 18 
7转化二进制           00000111
18转化为二进制      00010010
对齐进行比较 &运算是有0就是0 除非都是1 那才是1  结果就是 00000010 转化为十进制就是 2 

7 | 18

7转化二进制           00000111
18转化为二进制      00010010
对齐进行比较 | 运算是全是0才是0 有1 就为1   结果就是00010111 转化为十进制就是 23

7^18

7转化二进制           00000111
18转化为二进制      00010010
对齐进行比较 ^ 不同为 1 相同为 0  结果是 00010101  转化为十进制就是 21

~ 符号代表 按位翻转 
公式: ~x = -(x+1)
~18 = -(18+1)= -19

a = ~18
print (a)


<< 代表左移动

左移 就表示 二进制 数字整体 向左移动一个单位(规律: 左移n个单位 相当于 乘2的n次幂 )

eg: a = 18<<1
# 18* 2 * 1 = 36

>>代表右移动

左移 就表示 二进制 数字整体 向左移动一个单位(规律: 左移n个单位 相当于 除以2的n次幂  取商~)

eg: a = 18>>1
# 18/2 *1 = 9

7、python 的运算符优先级(从上至下 排列)

1、函数调用 、 寻址、 下标
2、幂运算  ** 
3、翻转运算 ~
4、正负号
5、* 、 / 、%
6、+、-
7、<<、>>
8、&、|、^
9、比较运算符 <、>
10、逻辑运算符 not 、 and 、 or
11、lambda 表达式

8、Python的控制流

1、python的三种控制流
    顺序结构 、 分支结构 、 循环结构
2、if 语句
            
3、while语句
        eg:
             a = 7
        while a :
                 print ("hello")
                 a = a -1
4、for 语句
                    eg: for k in range(1,4):
                  i = 0
                  print (i)
                  i= i+1
                 print (i)


5、break语句(强制跳出循环)
6、continue语句(跳出当前循环)

9、Python的函数

eg:

#字符串长度
a = "hello world"
print (len(a))

#字符串分割
b = a.split("o")
print (b)

#自定义函数
def a():
    print ("hello");print (777)

a()

10、Python的模块

>>> import math 导入math模块
>>> math.pi 输出pi (3.1415926)


>>> import sys
>>> sys.version
'3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 05:52:31) \n[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)]'
>>> sys.executable
'/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6'
>>> sys.modules.keys
<built-in method keys of dict object at 0x10ff2e048>
>>> sys.modules.keys()

11、Python 字节编译

字节编译: 把模块编译为而精致与言承旭的这个过程叫做字节编译
.pyc文件是什么?: .pyc 文件就是经过编译后的模块对应的二进制文件

运行一个模块的顺序: 先运行.py文件 然后生成对应的.pyc文件 然后运行.pyc文件(二进制文件) .pyc文件生成是在import *** 的时候就已经产生了~

.pyc文件的最大作用: 加快了模块的运行速度。

12、Python from …..import详解

>>> from sys import version
>>> version
'3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 05:52:31) \n[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)]'

备注:即导入了sys模块 也 导入了version的方法 比sys.version简单、

>>> from sys import*
>>> version
'3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 05:52:31) \n[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)]'
>>> executable
'/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6'

备注: from  ***  import* 这个命令 可以讲 *** 模块当中的所有方法都导入 ~这样更为快捷。

13、Python 认识 __name__ 属性


什么是主模块?? 被自己调用的就是主模块 反之不是主模块 ~ 

eg:

if __name__=="__main__":
    print("it is a main")
else:
    print("it not a main")

备注:如上程序 当你在编译器 F5 run起来的 他就是自己调用自己的 输出为  it is a main 当 你在终端找到这个文件 并编译它时候 import tempPy.py 这样编译时候 输出的就是 it not a main ~

14、Python 自定义模块

生成模块:将python程序保存在电脑自己的目录下 这样就生成了自定义模块(其实就是一个.py文件)

eg:

def add(i,j):
    k = i+j
    return k
k = add(i,j)
print (k)

15、Python dir() 函数

dir() 函数主要是查看 你想查看模块的所有方法(这里包括基本数据类型 元组 集合等等)~

eg: 

import sys
dir(sys)

16、Python 数据结构

数据结构: 数据的组织方式~(静态的)
算法: 动态的 ~
列表 、 元组、字典、堆、栈 等~

———————————————Python 数据结构——栈 ——————————————
 
栈: 先进后出 一端开口
堆: 先进先出 两端开口

实现栈功能eg:创建一个模块 代码如下~

#栈的实现

class Stack():
    def __init__(st,size):
        st.stack=[];
        st.size=size;
        st.top=-1;
    def push(st,content):
        if st.Full():
            print ("stack is Full")
        else:
            st.stack.append(content)
            st.top= st.top+1
        def Full(st):
            if st.top == st.size:
                return True
            else:
                return False
        def Empty(st):
            if st.top == -1:
                print ("stack is Empty")

持续更新中~ 辛小二~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容

  • 〇、前言 本文共108张图,流量党请慎重! 历时1个半月,我把自己学习Python基础知识的框架详细梳理了一遍。 ...
    Raxxie阅读 18,892评论 17 410
  • Python 面向对象Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对...
    顺毛阅读 4,200评论 4 16
  • position属性能帮助你控制一个元素的定位。 position的值有以下6种: static,静态定位,HTM...
    JellyL阅读 447评论 0 1
  • 初中时周围充满一片质疑的声音,嘲笑、谩骂 ,无缘无故浮现脸上的自卑和藏在发线后不敢与人直视的眼睛 ,人群中发出格外...
    郝丹daisy阅读 401评论 0 0
  • 读高一的时候,我分在二班,班主任是教政治的,姓郭,郭老师善于做学生的思想工作,他有个爱好,喜欢找同学到办公室...
    一团菌阅读 976评论 1 1