第一个python程序:

Hello World程序

windows命令行中输入:python,进入python交互器,也可以称为解释器。

print("Hello World!")

windows中

新建文本文件:d:\helloworld.py,键入: print("Hello World!"),

命令行中运行:python d:\helloworld.py

linux中

编辑helloworld.py:

#!/user/bin/env python

print("Hello World")

了解一下各种语言的“hello word”

变量\字符编码

先简单介绍pycharm的使用:

先创建新项目:pure python

新建目录:day1,day2,dan3……(举例)

新建:python file,例如:var.py

注:设置创建文件的模板,如自带linux的编译器、作者等信息的添加方法:setting-File and Code Templates-python script中输入。

在pycharm中第一个程序的运行:

在var.py中输入:print("Hello World!"),右键选择“run 'var'”,屏幕下面的窗口会得到输出结果

程序中为什么要有变量?

先存数据,以备后面调用。

怎么定义变量:

name = "Alex Li"

怎么使用变量:

name = "Alex Li"
name2 = name
print ("My name is",name,name2) name = "PaoChe Ge"
print(name,name2)
以上程序的输出结果,第二个print输出的name2是什么,为什么?
因为name2并不是和name同步,而是在定义变量的时候,等于被赋值"Alex Li",所以后面name的值改为"PaoChe Ge"后,name2还是Alex Li

变量定义的规则:

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

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

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

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

写程序时变量定义的常用规则:

1. 变量名要有含义,要让人一看就明白

2. 变量名用英语单词,单词之间用下划线或首字母大写

3. 常量用大写

字符编码

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

二进制

举例:古时候烽火台,点火和不点火只有两种状态,传递信息太少。

约定点火数1,代表1-100

点火数2,代表101-1000

点火数3,代表1001-5000

点火数4,代表5001-1000

虽然有进步,但还不够精确

如果引入二进制,可以精确表示任意数

字符编码

二进制和字母的转换

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)

GB2312(1980年)7445多个汉字字符,包括6763个汉字和682个其它符号。

GBK1.0(1995年)收录了21886个符号,它分为汉字区和图形符号区:汉字区21003个字符。

GB18030(2000年)取代GBK1.0的正式国家标准。该标准收录了27484个汉字,同时还收录了藏文、蒙文、维吾尔文等主要的少数名族文字。现在的PC平台必须支持GB18030,对嵌入式产品暂不作要求。所以手机、MP3一般只支持GB2312。

显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。所有字符占2个字节。

UTF-8,存英文字符占1个字节,存中文占3个字节

总结如下:

ASCII 255 1bytes

-->1980 gb2312   7445个汉字字符

-->1995 GBK1.0   21885个

-->2000 GB18030  27484个

--> unicode 2bytes

--> utf-8 en:1byte , zh:3bytes

python3比python2最大区别,默认支持字符编码集

python2中文支持,第一行输入:# -*- coding:utf-8 -*-

python3默认支持utf-8

python学习笔记(基础一:'hello world'、变量、字符编码)的更多相关文章

  1. Python学习笔记基础篇——总览

    Python初识与简介[开篇] Python学习笔记——基础篇[第一周]——变量与赋值.用户交互.条件判断.循环控制.数据类型.文本操作 Python学习笔记——基础篇[第二周]——解释器.字符串.列 ...

  2. (转)Python学习笔记(1)__name__变量

    Python使用缩进对齐组织代码的执行,所有没有缩进的代码,都会在载入时自动执行.每个文件(模块)都可以任意写一些没有缩进的代码,并在载入时自动执行.为了区分 主执行代码和被调用文件,Python引入 ...

  3. Python 学习笔记---基础篇

    1. 简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200 import subprocess cmd="cmd.exe" b ...

  4. python学习笔记-基础、语句、编码、迭代器

    #python的优缺点优点:Python简单优雅,尽量写容易看明白的代码,尽量写少的代码.缺点:第一个缺点就是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地 ...

  5. Python学习笔记-基础1

    一 初识Python python是一种面向对象.解释型的计算机程序语言.Python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特 ...

  6. python学习笔记(三)之变量和字符串

    在其他语言中,变量就是有名字的存储区,可以将值存储在变量中,也即内存中.在Python中略有不同,python并不是将值存储在变量中,更像是把名字贴在值上边.所以,有些python程序员会说pytho ...

  7. Python学习笔记——基础篇【第一周】——变量与赋值、用户交互、条件判断、循环控制、数据类型、文本操作

    目录 Python第一周笔记 1.学习Python目的 2.Python简史介绍 3.Python3特性 4.Hello World程序 5.变量与赋值 6.用户交互 7.条件判断与缩进 8.循环控制 ...

  8. VS2013中Python学习笔记[基础入门]

    前言 在上一节中简单的介绍了在VS2013中如何进行开发Hello World,在VS2013中进行搭建了环境http://www.cnblogs.com/aehyok/p/3986168.html. ...

  9. Python学习笔记——基础篇2【第三周】——计数器、有序字典、元组、单(双)向队列、深浅拷贝、函数、装饰器

    目录 1.Python计数器Counter 2.Python有序字典OrderredDict 3.Python默认字典default 4.python可命名元组namedtuple 5.Python双 ...

  10. Python学习笔记——基础篇【第四周】——迭代器&生成器、装饰器、递归、算法、正则表达式

    目录 1.迭代器&生成器 2.装饰器 a.基本装饰器 b.多参数装饰器 3.递归 4.算法基础:二分查找.二维数组转换 5.正则表达式 6.常用模块学习 #作业:计算器开发 a.实现加减成熟及 ...

随机推荐

  1. 推荐10款超级有趣的HTML5小游戏

    HTML5的发展速度比任何人的都想像都要更快.更加强大有效的和专业的解决方案已经被开发......甚至在游戏世界中!这里跟大家分享有10款超级趣味的HTML5游戏,希望大家能够喜欢! Kern Typ ...

  2. Collections

    2017-01-06  22:50:43 数据结构和算法 <如何学习数据结构?>:https://www.zhihu.com/question/21318658 <How do I ...

  3. Spring MVC重定向和转发以及异常处理

    SpringMVC核心技术---转发和重定向 当处理器对请求处理完毕后,向其他资源进行跳转时,有两种跳转方式:请求转发与重定向.而根据要跳转的资源类型,又可分为两类:跳转到页面与跳转到其他处理器.对于 ...

  4. tg2015 信息传递 (洛谷p2661)

    题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的生日.之后每一 ...

  5. CYQ.Data V5 分布式自动化缓存设计介绍

    前方: 其实完成这个功能之前,我就在思考:是先把想法写了来,和大伙讨论讨论后再实现,还是实现后再写文论述自己的思维. 忽然脑后传来一个声音说:你发文后会进入发呆阶段. 所以还是静下心,让我轻轻地把代码 ...

  6. 【初码干货】在Window Server 2016中使用Web Deploy方式发布.NET Web应用的重新梳理

    在学习和工作的过程中,发现很多同事.朋友,在做.NET Web应用发布的时候,依然在走 生成-复制到服务器 这样的方式,稍微高级一点的,就是先发布到本地,再上传到服务器 这种方式不仅效率低下,而且不易 ...

  7. ucos实时操作系统学习笔记——任务间通信(信号量)

    ucos实时操作系统的任务间通信有好多种,本人主要学习了sem, mutex, queue, messagebox这四种.系统内核代码中,这几种任务间通信机制的实现机制相似,接下来记录一下本人对核心代 ...

  8. CSS垂直居中总结

    工作中遇到垂直居中问题,特此总结了一下几种方式与大家分享.本文讨论的垂直居中仅支持IE8+ 1.使用绝对定位垂直居中 <div class="container"> & ...

  9. 让Unity NavMesh为我所用

    Unity里面整合了一个NavMesh功能,虽然让人又爱又恨. 但当你在其他地方需要这个NavMesh的数据时,就更让人欲罢不能了. 比如说服务器需要Unity的NavMesh数据时. 比如说你想将U ...

  10. ASP.NET Web API 控制器执行过程(一)

    ASP.NET Web API 控制器执行过程(一) 前言 前面两篇讲解了控制器的创建过程,只是从框架源码的角度去简单的了解,在控制器创建过后所执行的过程也是尤为重要的,本篇就来简单的说明一下控制器在 ...