Python学习笔记(一):基础知识
一、什么是python?
python是一种面向对象、解释型的计算机语言,它的特点是语法简洁、优雅、简单易学
二、编译型语言和解释型语言
编译型语言就是把程序编译成计算机语言然后执行,(一次编译到处运行)(例如:c++、c)特点:运行速度快,需要事前把程序编译好。
解释型语言就是程序在运行时,通过一个编译器将程序翻译成计算机语言然后运行,也就是你写好代码之后直接就能运行,比如说python、shell、ruby、java、perl等等都是解释型语言,当然这样的语言由于原理不一样,执行速度并没有编译型语言快
三、python2.x和python3.x的区别
因为2和3代码是不怎么兼容的,现在比较常用的是2.7版本,2.7版本其实是一个过渡版本。python2的默认字符集是ASCII编码,写中文会报错,python3.x版本中默认字符集是Unicode,省了很多事,so,还是推荐使用python3.x版本。
四、编码
ASCII码表:http://www.96yx.com/tool/ASC2.htm
编码:gbk、utf-8、Unicode
Unicode:万国码,故名思议,哪个国家的文字都适用,英文字符和汉字都是占2个字节
Utf-8:其实属于Unicode ,但又和Unicode不一样,是Unicode的压缩版,英文字母占1个字节,汉字占2个字节
GBK:GBK包含全部中文字符;UTF-8则包含全世界所有国家需要用到的字符。
五、python在linux下运行
,liunx下可以直接运行python文件,前面不需要加python命令,加上执行权限即可,但是需要在python文件最前面指定python解释器,加上python解释器的路径即可,有两种写法,代码看下面,(建议使用环境变量的写法,这样即使更换目录也不会使原来的脚本失效)
1 2 3 4 5 |
#!/usr/bin/python #这种写法是去/usr/bin目录下去找python的解释器,如果在这个目录下没有python解释器或者python解释器在别的目录下,就会报错了 print('Hello world!') #!/usr/bin/env python#这种写法是去环境变量中找你配置的python解释器目录,你配置在哪个目录下,它就去哪个目录下找python解释器 print('Hello world!') |
六、变量
Python中定义变量很简单,不需要指定数据类型,例如
name = ‘besttest’ #Python中变量name的存放的是‘besttest’在内存中地址
new_name = name #new_name的存放的也是‘besttest’在内存中地址,所以改动new_name,name的值也会变。
变量定义规则:
1.变量名要见名知意,不能随意写,否则到最后都不知哪个变量是干嘛用的
2.汉字是可以作为变量名的,但是不要用,很low
3.变量名只能是字母、数字、下划线任意组合,且变量名第一个字符不能是数字,特殊字符不可以作为定义变量
以下关键字不能声明为变量名
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'] |
七、输入输出
Python接收控制台的输入和输出:
输入:使用input函数,但是python2中使用raw_input函数,获取字符串,也可以用input获取的是整型或float类型。
Eg: name = input(“请输入用户姓名:”)
Python可以import getpass 模块,使用getpass.getpass(“请输入密码:”)来隐藏你输入的密码信息。但是这个在pycharm等编译器中是不能使用的,一般用在开发程序中
输出:直接使用print()
八、逻辑判断和循环
Python中的逻辑判断只有 if else ;多次判断可以用if elif ....else
循环:while for 使用range设置变量i的值
使用for循环遍历数组:
ames = ['marry','lily','lilei']
for name in names:
if name == 'lily':
contiune #如果名字等于lily的话,就不执行continue下面的代码了,再循环下一次
print(name)
else:#for也有个else,不过这个一般没人写它,意思是如果正常循环完了去做什么
print('over')
注:没有Java中的那些 switch ...case等和do while
九、格式化输出
有三种方式,第一种是用“+”连接,直接把输出的字符串和变量连接起来就可以了;第二种是用占位符,
占位符有常用的有三种,%s、%d和%f,%s是后面的值是一个字符串,%d是后面的值必须是一个整数,
%f后面是小数;第三种是使用{}和fromat方法,这三种呢,官方推荐是使用format方法,不推荐使用第一种,
第一种用加号的,会在内存里面开辟多个内存空间,而后面两种是只开辟一块内存空间,使用方式如下:
本周相关程序地址:
https://git.coding.net/yun_yuan/Python_BestTest.git
Python学习笔记(一):基础知识的更多相关文章
- Python学习笔记——1——基础知识
1.1.变量和算法 python语言很类似人类语言,变量不需要定义类型.比如: 整型 字符串类型 数组 Java int a=12 String s="test" String[] ...
- python学习笔记(一)-基础知识
O.解释型语言和编译型语言 编译型语言就是先把写好的程序翻译成计算机语言然后执行,就是所谓的一次编译到处运行,比如c.c++就是编译型语言,这样的语言特点是运行速度快,但是需要事先把程序编译好才可以. ...
- MyBatis:学习笔记(1)——基础知识
MyBatis:学习笔记(1)--基础知识 引入MyBatis JDBC编程的问题及解决设想 ☐ 数据库连接使用时创建,不使用时就释放,频繁开启和关闭,造成数据库资源浪费,影响数据库性能. ☐ 使用数 ...
- C#学习笔记(基础知识回顾)之值类型与引用类型转换(装箱和拆箱)
一:值类型和引用类型的含义参考前一篇文章 C#学习笔记(基础知识回顾)之值类型和引用类型 1.1,C#数据类型分为在栈上分配内存的值类型和在托管堆上分配内存的引用类型.如果int只不过是栈上的一个4字 ...
- C#学习笔记(基础知识回顾)之值传递和引用传递
一:要了解值传递和引用传递,先要知道这两种类型含义,可以参考上一篇 C#学习笔记(基础知识回顾)之值类型和引用类型 二:给方法传递参数分为值传递和引用传递. 2.1在变量通过引用传递给方法时,被调用的 ...
- C#学习笔记(基础知识回顾)之值类型和引用类型
一:C#把数据类型分为值类型和引用类型 1.1:从概念上来看,其区别是值类型直接存储值,而引用类型存储对值的引用. 1.2:这两种类型在内存的不同地方,值类型存储在堆栈中,而引用类型存储在托管对上.存 ...
- Quartz学习笔记:基础知识
Quartz学习笔记:基础知识 引入Quartz 关于任务调度 关于任务调度,Java.util.Timer是最简单的一种实现任务调度的方法,简单的使用如下: import java.util.Tim ...
- Python学习笔记之基础篇(-)python介绍与安装
Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...
- Python学习笔记之基础篇(二)python入门
一.pycharm 的下载与安装: 使用教程:https://www.cnblogs.com/jin-xin/articles/9811379.html 破解的方法:http://xianchang. ...
- .net学习笔记---xml基础知识
一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...
随机推荐
- asp.net重启web应用程序域
我把加载到static静态变量中了,是在数据库中存的,这样每次改了一下必须要重启一下web应用程序,每次去iis操作太麻烦了,于是找的了这个重启的办法,一句话代码: System.Web.HttpRu ...
- linux安装源文件(.tar.gz)
安装此类文件,分为7步: 1.首先把依赖的软件给装上,如果依赖perl,先装perl,如果依赖Pathon,现装pathon 2.tar 源软件路径 -C 新软件路径(注意这里一定要-C,不然不能解压 ...
- spring boot + spring data jpa
Spring Data Repository的核心接口是Repository(好像也没什么好惊讶的).这个接口需要领域类(Domain Class)跟领域类的ID类型作为参数.这个接口主要是让你能知道 ...
- Redhat/CentOS 软件安装
概述 软件包简介 rpm 包安装 yum 在线安装 源码包管理 软件包分类 源码包 二进制包(rpm包.系统默认包) rpm包安装 rpm包的依赖性 树形依赖: a -> b -> c 环 ...
- Gradle项目构建(1)——Gradle的由来
一.项目自动构建介绍 作为Java的开发者对eclipse都非常熟悉,其实eclipse就是居于ant来构建项目的,我们先来看看为什么需要自动化构建项目. 1.为什么我们要自动化构建项目 可以假设我们 ...
- Outlook Web App 客户端超时设置
这篇文章我们讨论一下,OWA 2013在公共和私人的电脑是如何启用和配置. Exchange 2013 Outlook Web App (OWA) 登录页不再允许用户选择无论他们正在使用公共的或私人的 ...
- shell脚本安装nginx
#!/bin/bash N_url="http://nginx.org/download/nginx-1.8.0.tar.gz" N_pack=`echo $N_url|awk - ...
- HDU 4507 吉哥系列故事——恨7不成妻 (数位DP)
题意: 如果一个整数符合下面3个条件之一,那么我们就说这个整数和7有关: 1.整数中某一位是7: 2.整数的每一位加起来的和是7的整数倍: 3.这个整数是7的整数倍: 给定一个区间[L,R],问在此区 ...
- acid (数据库事务正确执行的四个基本要素的缩写)
ACID,指数据库事务正确执行的四个基本要素的缩写.包含:原子性(Atomicity).一致性(Consistency).隔离性(Isolation).持久性(Durability).一个支持事务(T ...
- Processing一些常用技巧
一些常用技巧总结: Tweak模式 快速查找函数用法 显示与输入中文注释 代码快速对齐 批量添加注释符 Tweak模式 Tweak模式是非常有用的功能,自3.0版本后,它就正式整合到Processin ...