博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python基础Day1
阅读量:4615 次
发布时间:2019-06-09

本文共 3744 字,大约阅读时间需要 12 分钟。

Python介绍

1、python是解释性语言,而且语法优美、清晰、简单,是一种优秀并广泛使用的语言

2、python主要应用领域:①云计算(典型的应用OpenStack)②WEB开发(如Youtube,豆瓣...典型框架Django)③科学运算、人工智能(典型库NumPy、SciPy)④系统运维(运维人员必备语言)

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

3、python的优缺点:

  优点:①定位“优雅”、“明确”、“简单”。入门容易,可以编写非常复杂的程序

       ②开发效率非常高,python有非常强大的第三方库,python官方库有全面的支持,可在基础库的基础上再进行开发,大大降低了开发周期。

       ③高级语言,④可移植性,可轻松在不同的平台上运行

                 ⑤可扩展性:需要功能代码运行的更快或某些算法不需要公开,可以使用C/C++编写后,使用python来调用

                 ⑥可嵌入性: 可把python嵌入C/C++程序,从而向你的程序用户提供脚本功能

  缺点:①速度慢:python跟java相比也要慢一些,但大多数情况下完全可以满足你对程序速度的要求,除非要写对程序速度要求极高的搜索引擎等。

       ②代码不能加密:因为python是解释性语言,它的源码都是以明文的形式存放。

       ③线程不能利用多CPU问题,,这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。

4、python解释器

  python的解释器很多,如CPython、IPython、PyPy、Jython、IronPython,但使用最广泛的还是Cpython,如果要和Java或.Net平台交互,最好的办法不是JPython和IronPython,而是通过网络来调用来交互,确保程序之间的独立性

5、python版本:

  python2.X 和python3.X,区别在于语句的写法不一致,2.7会支持到2020年,会被3.4+取代

Python安装

 windows

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

 linux、mac

无需安装,原装Python环境  ps:如果自带2.6,请更新至2.7

 

Python基础学习

1、创建文件如hello.py,并输入

print("hello world")

2、然后输入命令:python hello.py,输出 hello world

上一步中执行python hello.py时,即hello.py脚本是由python解释器来执行

如果想要类似于执行shell脚本一样执行python脚本,需要再hello.py文件的头部指定的解释器,如下:

#!/usr/bin/env pythonprint ("hello wprld")  

 ps:执行前需给予hello.py执行权限,chmod 755 hello.py

在交互器中执行

C:\Users\chendezhi>pythonPython 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32Type "help", "copyright", "credits" or "license" for more information.>>> print("hello world")hello world  

变量、字符编码

声明变量

name = "chendz"  

变量定义的规则:

  变量名只能是字母、数字或下划线的任意组合

  变量名的第一个字符不能是数字

  以下关键字不能声明为变量名

   ['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']

变量的赋值

name = "chendz"name2 = nameprint(name,name2)name = "jack"

字符编码  

ASCII:最多只能用8为来表示一个字节,即2**8=255,ASCII码最多只能表示255个字符

中文编码:>>GB2312(1980年)收录了7445个字符,包括6763个汉字和682个其他字符。

    >>GBK(1995年)收录了21886个符号

    >>GB18030(2000年)收录了27484汉字

从ASCII->GB18030,这些编码方法是向下兼容的

Unicode(统一码)是一种在计算机上使用的字符编码。十六位,最少2个字节

UTF-8:是对Unicode编码的压缩和优化

python解释器在加载.py文件中的代码时,会对内容进行编码(默认ASCII),

在2.X中,如果是如下代码的化,会保错,ASCII码无法表示中文

#!/usr/bin/env python  print "你好,世界"  

应该告诉python解释器,需要用什么编码执行

#!/usr/bin/env python# -*- coding: utf-8 -*-  print "你好,世界"

注释

单行注释:使用 #

多行注释:使用 """ 被注释的内容 """

用户输入

#name = raw_input("What is your name?") #only on python 2.xname = input("What is your name?")print("Hello " + name )

输入密码时,如果想要不可见,需要利用getpass模块中的getpass方法,即:

import getpass  # 将用户输入的内容赋值给 name 变量pwd = getpass.getpass("请输入密码:")  # 打印输入的内容print(pwd)

python基础语法

表达式 if..else

name = input("请输入用户名") pwd = int(input("请输入密码")) if name == "chendz" and pwd == 123:     print("登陆成功") elif name =="" or pwd == "":     print("用户名和密码不能为空字符串") else:     print("用户名或密码错误")

表达式 for  

for i in range(0,10,2):    print("loop",i)  

表达式 while

age = 18count = 3while count > 0:    guess_age = int(input("guess age:"))    if guess_age == age:        print("ok")        break    elif guess_age >age:        print("think smaller...")    else:        print("think bigger...")    count-=1else:    print("you have tried too many times.")

  

 

 

  

 

转载于:https://www.cnblogs.com/cdz-sky/p/8400183.html

你可能感兴趣的文章
2019-北航面向对象-电梯作业总结
查看>>
SqlHelper
查看>>
初识算法、数据结构
查看>>
Luogu4069 SDOI2016 游戏 树链剖分、李超线段树
查看>>
Java的内部类真的那么难以理解?
查看>>
一文搞懂Java环境,轻松实现Hello World!
查看>>
hash实现锚点平滑滚动定位
查看>>
也谈智能手机游戏开发中的分辨率自适应问题
查看>>
【转】MYSQL数据库设计规范与原则
查看>>
《中国大历史》—— 读后总结
查看>>
回溯法算法框架
查看>>
残差学习【转载】
查看>>
0302 关于IT行业的就业感想
查看>>
3、流程语句相关练习
查看>>
30、git 使用
查看>>
iOS网络-02-数据解析(JSON与XML)
查看>>
python列表求和的几种等效电路
查看>>
Luogu P3393 逃离僵尸岛
查看>>
Flatten Binary Tree to Linked List
查看>>
Edit Distance
查看>>