一. python介绍相关

1. Python简介

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

- Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。

- Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。

- Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。

- Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。

2. Python主要应用领域

- 云计算: 云计算最火的语言, 典型应用OpenStack;

- WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发、Youtube、 Dropbox、豆瓣、知乎等典型WEB框架有Django、Flask、Web2py、AngularJS;

- 科学运算、人工智能: 典型库NumPy、 SciPy、Matplotlib、Enthought、librarys、pandas;

- 系统运维: 运维人员必备语言,升职加薪必备之选;

- 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c、c++、java、尤其擅长策略回测;

- 图形GUI:PyQT、WxPython、TkInter。

二、Python基础

3. Python2与Python3相关

 1 Python2.X和Python3.X的区别
2
3 What are the differences?
4
5 Short version: Python 2.x is legacy, Python 3.x is the present and future of the language
6
7 Python 3.0 was released in 2008. The final 2.x version 2.7 release came out in mid-2010, with a statement of extended support for this end-of-life release. The 2.x branch will see no new major releases after that. 3.x is under active development and has already seen over five years of stable releases, including version 3.3 in 2012, 3.4 in 2014, and 3.5 in 2015. This means that all recent standard library improvements, for example, are only available by default in Python 3.x.
8
9 Guido van Rossum (the original creator of the Python language) decided to clean up Python 2.x properly, with less regard for backwards compatibility than is the case for new releases in the 2.x range. The most drastic improvement is the better Unicode support (with all text strings being Unicode by default) as well as saner bytes/Unicode separation.
10
11 Besides, several aspects of the core language (such as print and exec being statements, integers using floor division) have been adjusted to be easier for newcomers to learn and to be more consistent with the rest of the language, and old cruft has been removed (for example, all classes are now new-style, "range()" returns a memory efficient iterable, not a list as in 2.x).
12
13 The What's New in Python 3.0 document provides a good overview of the major language changes and likely sources of incompatibility with existing Python 2.x code. Nick Coghlan (one of the CPython core developers) has also created a relatively extensive FAQ regarding the transition.
14
15 However, the broader Python ecosystem has amassed a significant amount of quality software over the years. The downside of breaking backwards compatibility in 3.x is that some of that software (especially in-house software in companies) still doesn't work on 3.x yet.
16
17 详细地址:https://wiki.python.org/moin/Python2orPython3
18
19 - 区别一:
20 Python2:print 'Hellow world!'
21 Python3: print ('Hellow world!')
22 - 区别二:
23 Python2:raw_input
24 Python3:input

4. Python安装

1.下载安装包
https://www.python.org/downloads/
2.安装
默认安装路径:C:\python2.X
3.配置环境变量
【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 -->【Python安装目录追加到变值值中,用 分号做分割】如:原来的值;C:\python2.X,切记前面有分号. 注:目前3.0以上新版本安装提示写入环境变量.

5. 第一行Python代码

1 - IDE中执行:
2 print ("Hello world!")
3 - Linux环境,将"print ('Hello world!')"代码写入到first.py文件中:
4 python first.py
5 - 指定解释器执行:
6 #/usr/bin/env python
7 print ('Hello world!')
8 chmod +x first.py
9 ./first.py

6. 编码格式和二进制

- 二进制十进制转换

  1   2   4   8   16  ....    65535
1 1 1 1 1 .... 1*16
- Python2.X默认字符编码是ASSCII,Python3.X默认字符编码UFT-8.
- 声明字符编码:
 #-*- coding:uft-8 -*-
#-*- coding:gbk -*-
- asscii码  255 1bytes  一个字符占8个字节
- unicode万国码 2bytes
- utf-8 en:1byte cn:3bytes

7. 变量的定义

- 变量:一个在内存储存数据的容器,以便后面的程序调用,变量先定义后引用;
-
变量定义规则:
- [1] 变量名只能是 字母、数字或下划线的任意组合
- [2] 变量名的第一个字符不能是数字
- [3] 以下关键字不能声明为变量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- [4] 写法
age_of_oldboy = 56
ageOfOldboy = 56 #驼峰写法
AGE_OF_OLDBOY = 56 #常量,定义不变的量

8. 字和字符串

数字不需要加引号
字符串必须加引号

9. 注释

单行注释:#
多行注释:"""或者'''
多行字符串:""" (标注段落)

10. 字符串格式

****Python默认输入都是字符串****
int() #interger,字符串转数字
str() #string,数字转字符串
type() #查看数据类型:print(type())
strip() #去掉换行符和空格

11. 字符串格式化拼接

 1 %s 变量可以是字符和数字(string)
2 %d 变量只能是数字,可以用来检测数据类型
3 %f 变量只能是小数(浮点型)
4
5 方案一:
6 name = input("name:")
7 age = input("age:")
8 job = input("job:")
9 salary = input("salary:")
10
11 info = '''
12 -----info of '''+name+'''----
13 Name:'''+name+'''
14 Age:'''+age+'''
15 Job:'''+job+'''
16 Salary:'''+salary+'''
17 '''
18 print(info)
19
20 方案二:
21 name = input("name:")
22 age = input("age:")
23 job = input("job:")
24 salary = input("salary:")
25
26 info = '''
27 ------ info of %s------
28 Name:%s
29 Age:%s
30 Job:%s
31 Salary:%s
32 ----------END----------'''%(name,name,age,job,salary)
33 print(info)
34
35 方案三:
36 name = input("name:")
37 age = input("age:")
38 job = input("job:")
39 salary = input("salary:")
40
41 info2 = '''
42 ------ info of {_name}------
43 Name:{_name}
44 Age:{_age}
45 Job:{_job}
46 Salary:{_salary}
47 '''.format(_name=name,_age=age,_job=job,_salary=salary)
48 print(info2)
49
50 方案四:
51 name = input("name:")
52 age = input("age:")
53 job = input("job:")
54 salary = input("salary:")
55 info2 = '''
56 -----info of {0}-----
57 Name:{0}
58 Age:{1}
59 Job:{2}
60 Salary:{3}
61 ------END----'''.format(name,age,job,salary)
62 print(info2)

12. if判断和while循环

if判断,判断账号密码是否正确;
1 user = 'lain'
2 passwd = '123456'
3 username = input("username:")
4 password = input("password:")
5
6 if username == user and password == passwd:
7 print("欢迎登陆!")
8 else:
9 print("账户名或密码错误,请重试!")
 while循环,猜年龄,猜3次后可选择是否继续;
1 age_of_oldboy = 56
2 count = 0
3 while count < 3:
4 guess_age = int(input("guess age:"))
5 if guess_age == age_of_oldboy:
6 print("yes.you got it.")
7 break
8 elif guess_age > age_of_oldboy:
9 print("think smaller...")
10 else:
11 print("think bigger.")
12 count +=1
13 if count == 3:
14 countine_confirm = input("do you want to keep guessing? y/n")
15 if countine_confirm != "n":
16 count = 0
17 else:
18 print("error,you idiot!")

Pycharm小记

 1 Ctrl /
2
3 注释(取消注释)选择的行
4
5
6 Shift + Enter
7 开始新行
8
9 Ctrl + Enter
10 智能换行
11
12 TAB Shift+TAB
13 缩进/取消缩进所选择的行
14
15 Ctrl + Alt + I
16 自动缩进行
17
18 Ctrl + Y
19 删除当前插入符所在的行
20
21 Ctrl + D
22 复制当前行、或者选择的块
23
24 Ctrl + Shift + J
25 合并行
26
27 Ctrl + Shift + V
28 从最近的缓存区里粘贴
29
30 Ctrl + Delete
31 删除到字符结尾
32
33 Ctrl + Backspace
34 删除到字符的开始
35
36 Ctrl + NumPad+/-
37 展开或者收缩代码块
38
39 Ctrl + Shift + NumPad+
40 展开所有的代码块
41
42 Ctrl + Shift + NumPad-
43 收缩所有的代码块
 
 
 

Python运维开发之路《python基础介绍》的更多相关文章

  1. python运维开发之路第一天

    一.python安装及环境变量配置 1.windows7安装python 1)下载地址:https://www.python.org/downloads/windows/ 如下图: 注意:下载,用代理 ...

  2. Python运维开发基础09-函数基础【转】

    上节作业回顾 #!/usr/bin/env python3 # -*- coding:utf-8 -*- # author:Mr.chen # 实现简单的shell命令sed的替换功能 import ...

  3. Python运维开发基础08-文件基础【转】

    一,文件的其他打开模式 "+"表示可以同时读写某个文件: r+,可读写文件(可读:可写:可追加) w+,写读(不常用) a+,同a(不常用 "U"表示在读取时, ...

  4. Python运维开发基础04-语法基础【转】

    上节作业回顾(讲解+温习90分钟) #!/usr/bin/env python3 # -*- coding:utf-8 -*- # author:Mr.chen # 仅用列表+循环实现“简单的购物车程 ...

  5. Python运维开发基础01-语法基础【转】

    开篇导语 整个Python运维开发教学采用的是最新的3.5.2版,当遇到2.x和3.x版本的不同点时,会采取演示的方式,让同学们了解. 教学预计分为四大部分,Python开发基础,Python开发进阶 ...

  6. 重磅|0元学 Python运维开发,别再错过了

    51reboot 运维开发又双叒叕的搞活动了,鉴于之前 51reboot 的活动反馈,每次活动结束后(或者已经结束了很长时间)还有人在问活动的事情.这一次小编先声明一下真的不想在此次活动结束后再听到类 ...

  7. Python运维开发基础01-语法基础

    标签(空格分隔): Mr.chen之Python3.0执教笔记(QQ:215379068) --仅供北大青鸟内部学习交流使用 开发不是看出来的,开发一定是练出来的: 想学好开发,没有捷径可走,只有不断 ...

  8. Python运维开发基础10-函数基础【转】

    一,函数的非固定参数 1.1 默认参数 在定义形参的时候,提前给形参赋一个固定的值. #代码演示: def test(x,y=2): #形参里有一个默认参数 print (x) print (y) t ...

  9. Python运维开发基础07-文件基础【转】

    一,文件的基础操作 对文件操作的流程 [x] :打开文件,得到文件句柄并赋值给一个变量 [x] :通过句柄对文件进行操作 [x] :关闭文件 创建初始操作模板文件 [root@localhost sc ...

  10. Python运维开发基础06-语法基础【转】

    上节作业回顾 (讲解+温习120分钟) #!/usr/bin/env python3 # -*- coding:utf-8 -*- # author:Mr.chen # 添加商家入口和用户入口并实现物 ...

随机推荐

  1. 600 条最强 Linux 命令总结

    600 条最强 Linux 命令总结 每博一文案 你有千万条微博想写,可有些根本不重要,后来你才懂那是你怕别人看穿你所以才把真话埋在日常里.你有千万句话想说,可点开那 个对话框,你根本打不出一个字.你 ...

  2. 介绍一下js垃圾回收机制

    JavaScript中的垃圾回收机制负责自动管理内存,回收不再使用的对象所占用的内存空间.在JavaScript中,开发者不需要显式地分配和释放内存,垃圾回收器会自动完成这些操作.以下是关于JavaS ...

  3. day120:MoFang:修复宠物喂食饱食度不增加的BUG&修复宠物死亡导致数据错乱的BUG

    目录 BUG1:修复宠物喂食饱食度未增加的BUG BUG2:修复当用户拥有2个宠物时,如果第1个宠物挂了,会出现第二个宠物变成第1个宠物的情况,会导致数据发生混乱出现bug BUG1:修复宠物喂食饱食 ...

  4. C++ sizeof与strlen,并借此明晰内存对齐

    前言 sizeof()与strlen()都是为了获取对象的长度.在正常编写C++的算法程序代码时,可能这两个都很少用到,因为各种stl容器的封装已经给了我们很大的便利,比如我们在想要获取自定义的vec ...

  5. 重复delete 对象指针后的 异常调用栈怪异 解析

    Release版VC6 MFC程序 程序正常退出时得到一个如下异常调用栈: 0:000> kb # ChildEBP RetAddr Args to Child WARNING: Frame I ...

  6. JavaScript基础语法-变量

    JavaScript JavaScript - 变量 1. 概念 变量是用于存放数据的容器 通过变量名可以获取数据 并且数据是可修改的 2. 使用 声明变量 只声明不赋值 直接调用 程序会输出unde ...

  7. MAPPO学习笔记(2) —— 从MAPPO论文入手

    在有了上一节一些有关PPO算法的概念作为基础后,我们就可以正式开始对于MAPPO这一算法的学习. 那么,既然要学习一个算法,就不得不去阅读提出这一算法的论文.那么本篇博客将从MAPPO的论文出发,对M ...

  8. 绝对强大的三大linux指令:ar, nm, objdump

    前言 如果普通编程不需要了解这些东西,如果想精确控制你的对象文件的格式或者你想查看一下文件对象里的内容以便作出某种判断,刚你可以看一下下面的工具:objdump, nm, ar.当然,本文不可能非常详 ...

  9. cf1774f解题报告

    Magician and Pigs 分析一下三个操作分别干了些什么 新添一只猪 使血量为 \(x\) 的猪血量变为 \(\max(x-v,0)\) 设前面操作后猪总共会受到 \(s\) 的伤害,复制一 ...

  10. 2021-09-10:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案

    2021-09-10:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标.你可以假设每种输入只会对应一个答案, ...