2017day1
http://www.cnblogs.com/alex3714/articles/5465198.html
四、Python安装
windows
|
1
2
3
4
5
6
7
|
1、下载安装包 https://www.python.org/downloads/2、安装 默认安装路径:C:\python273、配置环境变量 【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】 如:原来的值;C:\python27,切记前面有分号 |
linux、Mac
|
1
2
3
|
无需安装,原装Python环境 ps:如果自带2.6,请更新至2.7 |
五、Hello World程序
在linux 下创建一个文件叫hello.py,并输入
|
1
|
print("Hello World!") |
然后执行命令:python hello.py ,输出
|
1
2
3
|
localhost:~ jieli$ vim hello.pylocalhost:~ jieli$ python hello.pyHello World! |
指定解释器
上一步中执行 python hello.py 时,明确的指出 hello.py 脚本由 python 解释器来执行。
如果想要类似于执行shell脚本一样执行python脚本,例: ./hello.py ,那么就需要在 hello.py 文件的头部指定解释器,如下:
|
1
2
3
|
#!/usr/bin/env python print "hello,world" |
如此一来,执行: ./hello.py 即可。
ps:执行前需给予 hello.py 执行权限,chmod 755 hello.py
在交互器中执行
除了把程序写在文件里,还可以直接调用python自带的交互器运行代码,
|
1
2
3
4
5
6
|
localhost:~ jieli$ pythonPython 2.7.10 (default, Oct 23 2015, 18:05:06)[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwinType "help", "copyright", "credits" or "license" for more information.>>> print("Hello World!")Hello World! |
对比下其它语言的hello world
六、变量\字符编码
Variables are used to store information to be referenced and manipulated in a computer program. They also provide a way of labeling data with a descriptive name, so our programs can be understood more clearly by the reader and ourselves. It is helpful to think of variables as containers that hold information. Their sole purpose is to label and store data in memory. This data can then be used throughout your program.
声明变量
|
1
2
3
|
#_*_coding:utf-8_*_name = "Alex Li" |
上述代码声明了一个变量,变量名为: name,变量name的值为:"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
4
5
6
7
8
|
name = "Alex Li"name2 = nameprint(name,name2)name = "Jack"print("What is the value of name2 now?") |
七、字符编码
python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号。

小结:
ASCII 255 1bytes
--> 1980 gb2312 7xxx
--> 1995 gbk1.0 2w+
--> 2000 gb18030 27xxx
--> unicode 2bytes
--> utf-8 en:1byte, zh:3bytes
注释
当行注视:# 被注释内容
多行注释:""" 被注释内容 """
八、用户输入
|
1
2
3
4
5
6
7
|
#!/usr/bin/env python#_*_coding:utf-8_*_#name = raw_input("What is your name?") #only on python 2.xname = input("What is your name?")print("Hello " + name ) |
输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:
|
1
2
3
4
5
6
7
8
9
10
|
#!/usr/bin/env python# -*- coding: utf-8 -*- import getpass # 将用户输入的内容赋值给 name 变量pwd = getpass.getpass("请输入密码:") # 打印输入的内容print(pwd) |
多行格式化:
# Author: sonny# -*- coding:utf-8 -*-print("hello world!");
#注: python2.x raw_input python3.x inputname = input("name:");age = int(input("age:"));job = input("job:");info = ''' ---- info of %s ---- name = %s age = %d job = %s''' % (name, name, age, job);
info2 = ''' ---- info of {_name} ---- name = {_name} age = {_age} job = {_job}'''.format(_name=name, _age=age, _job=job);
info3 = ''' ---- info of {0} ---- name = {0} age = {1} job = {2}'''.format(name,age,job);print(info);print(info2);print(info3);
if、while、for实例:
# Author: sonny# -*- coding:utf-8 -*-
age = 28;
for count in range(3): _age = int(input("guess age:")); if _age == age: print("you got it!"); break; elif _age > age: print("guess smaller"); else: print("guess bigger!") count += 1; if count == 3: key = input("are you want contuine?"); if key != 'n': count = 0;'''count = 0;while count<3: _age = int(input("guess age:")); if _age == age: print("you got it!"); break; elif _age > age: print("guess smaller"); else: print("guess bigger!") count += 1; if count ==3: key = input("are you want contuine?"); if key != 'n': count =0;#else:# print("you are wrong,fuck off!");'''
2017day1的更多相关文章
- 集训Day1
雅礼集训2017Day1的题 感觉上不可做实际上还挺简单的吧 T1 区间加 区间除法向下取整 查询区间和 区间最小值 大力上线段树,把除法标记推到底,加法标记就是按照线段树的来 先拿30 然后60的数 ...
随机推荐
- Z Order of Controls in Delphi VCL
Get and set the Z Order of controls at runtime in Delphi VCL. If you are looking for a FireMonkey so ...
- 做了一个浏览指定文件格式的 TreeView(方便查看Source目录下的源码)
unit DirTreeView; interface uses SysUtils, Classes, Controls, Forms, ComCtrls; type TDirTreeView ...
- java-mysql(3) 读写image
在mysql里面用来存储图片有一个特殊的数据对象叫做 Blob(Binary Large Object). 数据库里面插入一张图片: 第一步:需要为图片创建一个文件对象 File img = new ...
- Java基础(二) 基本类型数据类型、包装类及自动拆装箱
我们知道基本数据类型包括byte, short, int, long, float, double, char, boolean,对应的包装类分别是Byte, Short, Integer, Long ...
- SYN2136型 北斗NTP网络时间服务器
SYN2136型 北斗NTP网络时间服务器 北斗NTP网络时间服务器时间服务器使用说明视频链接: http://www.syn029.com/h-pd-109-0_310_36_-1.html 请将 ...
- 5个现在就该使用的数组Array方法: indexOf/filter/forEach/map/reduce详解(转)
ECMAScript5标准发布于2009年12月3日,它带来了一些新的,改善现有的Array数组操作的方法.然而,这些新奇的数组方法并没有真正流行起来的,因为当时市场上缺乏支持ES5的浏览器. ...
- 14 CSS权重深入
<!-- 继承说明: (1)进行样式选择时,不指定标签的话,该选择器是继承来的. (2)继承的选择器的优先级为0,和标签选择器的优先级无可比性. --> <!DOCTYPE html ...
- 自定义实现一个loghub(或kafka)的动态分片消费者负载均衡?
一般地,像kafka之类的消息中间件,作为一个可以保持历史消息的组件,其消费模型一般是主动拉取方式.这是为了给消费者足够的自由,回滚或者前进. 然而,也正是由于将消费消息的权力交给了消费者,所以,消费 ...
- Spark学习之路(七)—— 基于ZooKeeper搭建Spark高可用集群
一.集群规划 这里搭建一个3节点的Spark集群,其中三台主机上均部署Worker服务.同时为了保证高可用,除了在hadoop001上部署主Master服务外,还在hadoop002和hadoop00 ...
- java源码解析之String类(四)
/* * 返回指定字符第一次出现的字符串内的索引 */ public int indexOf(int ch) { return indexOf(ch, 0); } /* * 返回指定字符第一次出现的字 ...