Python学习笔记1(基础语法)
1.Python的文件类型:
- 源代码:扩展名以py结尾。python写的程序不需要编译成二进制代码,可以直接运行。pyw是Windows下开发图形界面的源文件。
- 字节代码:扩展名以pyc结尾,是编译过的字节文件,不能使用文本编辑工具打开或者修改。
- 优化代码:扩展名以pyo结尾,是优化过的源文件,需要用命令行工具生成。下面把hello.py编译成hello.pyo。
python -O -m py_compile hello.py
PS: 参数-O表示生成优化代码,-m表示吧导入的py_compile模块作为脚本运行
2.命名规则
- 变量名、包名、模块名 通常采用小写,可使用下划线
- 类名首字母大写,对象名小写。类的属性和方法名以对象作为前缀。类的私有变量、私有方法以两个下划线作为前缀。
- 函数名通常小写,并用下划线或单词首字母大写增加名称的可读性。
3.模块导入的规范
模块是类或函数的集合,用于处理一类问题。在Python中,要调用标准库或其他第三方库的类,需要先使用import或from....import...语句。
- import语句
import sys # sys模块是处理系统环境的函数的集合 print(sys.path) # 输出python环境下的查找路径的集合
print(sys.argv) # 存储输入参数的列表。默认情况下,自带参数为文件名
- from....import...语句(只导入模块中的一部分内容,并在当前命名空间中创建导入对象的引用)
from sys import path
from import argv print (path)
print (argv)
4.注释
使用 “#” 加若干空格开始。
- 中文注释:若代码中有中文注释,必须再python文件最前面加上如下注释说明。
# -*- coding : UTF-8 -*-
- 跨平台注释:若python程序运行在*nix系统中,最好再文件最前端加上如下注释说明。
#!/usr/bin/python
5.语句的分割
- python主要通过换行来识别语句的结束,因此行尾;可有可无。但当一行书写多个语句时,就必须使用;分隔
PS:通常一行只写一条语句,不使用分号
- python使用‘\’ 作为换行符。在实际中,一条语句写在多行也是常见的。
6.变量
- 变量不需要声明,如果变量没有赋值,python将认为变量不存在
- 在函数之外定义的变量都可成为全局变量,通常在文件的开头定义
7.数据类型
- 数字的类型有整型、浮点型、布尔型、分数类型、复数类型。
python内部没有普通类型,任何类型都是对象,python不能修改对象的值。
# 两个i不是同一个对象
i = 1
print( id(i))
i = 2
若要查看变量的类型,可以使用type类,是_builtin_模块的一个类,可返回变量的类型或创建一个新的类型。_builtin_模块是python的内联模板,不用import语句。
# 整型
i = 1
print( type(i)) # 输出 <class 'int'> # 长整型
l = 99999999999999999999990 # 什么时候python将int转换为float与操作系统位数相关
print type(l) # 浮点型
f = 1.2 # 布尔型
b = True # 复数类型
c = 7 + 8j
print ( type(c) ) # 输出 <class 'complex'>
- python有3种表示字符串的方法——单引号,双引号,三引号。单引号与双引号作用一样。
三引号中可以输入单引号、双引号或换行等字符。(也可使用转义字符“\”)
PS:使用双引号或三引号可以直接输出含有特殊字符的字符串,不需要使用转义字符
# 三引号
str = '''he say "hello world" '''
print ( str )
# 双引号
str = " he say 'hello world' "
print( str )
str = ‘’‘ he say 'hello world' ’‘’ #单引号与三引号间必有空格,否则解释器不能识别
print( str )
三引号的另一种用法是制作文档字符串。python的每一个对象都有一个属性_doc_,这个属性用于描述该对象的作用。
# 三引号制作doc文档
class Hello:
'''hello class''' # 对Hello类的描述,被存在类的_doc_属性中
def printHeloo():
'''print hello world''' # 对函数的描述,被存在该函数的_doc_属性中
print("hello world!")
print(Hello._doc_) # hello class
print (Hello.printHello._doc_) # print hello world
8.运算符与表达式
- 新增求幂运算( x**y ),不支持自加自减运算。
print ( "1 / 2 = ", 1 / 2 ) #
print ( "1 / 2 = ", 1.0 / 2.0 ) # 0.5
print ( "2 ** 3 = ", 2 ** 3 ) #
- 关系运算符 < , <= , > , >= (优先级相等) 优先级大于 == , !=
- 逻辑运算符 :
逻辑与:and 逻辑或: or 逻辑非: not
print ( not True)
print ( False and True)
print ( True and False)
print ( True or False)
Python学习笔记1(基础语法)的更多相关文章
- 01-Python学习笔记-基础语法
Python标识符 -d 在解析时显示调试信息 -O 生成优化代码 ( .pyo 文件 ) -S 启动时不引入查找Python路径的位置 - ...
- Python 学习笔记(基础语法 restful 、 Flask 和 Requests)
input 函数 #!/usr/bin/env python3 name = input("\n\n按下 enter 键后退出.") print(name) print() 在 p ...
- Java学习笔记之---基础语法
Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...
- Python学习笔记之基础篇(-)python介绍与安装
Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...
- Hive学习笔记:基础语法
Hive基础语法 1.创建表 – 用户表 CREATE [EXTERNAL外部表] TABLE [IF NOT EXISTS 是否存在] HUserInfo ( userid int comment ...
- Python 3 学习笔记之——基础语法
1. a, b = a, a + b 先计算右边表达式,然后再同时赋值给左边. 2. 条件控制和循环语句 条件控制 if condition_1: statement_block_1 elif con ...
- Python学习笔记之基本语法学习1
★学习目标: 用Python做HTTP接口测试 ★学习的大纲: ●Python语言基础(安装,第一个案例,基本语法等) ●Request模块使用 ●编写一个简单功能的接口测试案例 ●HTTP协议基础 ...
- Python学习一:基础语法
---恢复内容开始--- 本博客主要记录学习Python的过程(按照金角大王老师课程学习),整理所学知识,扎实基础.如有错误,望批评指正. 1.Python所擅长的领域 Python是一门解释型语言, ...
- Python学习笔记:基础
本文根据廖雪峰的博客,学习整理笔记.主要内容有:基本数据类型,容器数据类型,变量及其作用域,判断及循环语法,函数式编程,面向对象,模块等概念. 数据类型 在python中,能够直接处理的数据类型有以下 ...
- python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
随机推荐
- ssh maven 搭建
数据库建表脚本不带,是很简单的一个表,把数据库环境搭建起来即可. 1.项目结构(Eclipse) 2.pom.xml <project xmlns="http://maven.apac ...
- 给定范围内产生N个不同的随机数
void RandNumbs(int nLimts, int result[], int n)//给定范围内产生n个不同随机数(1-nLimts),并存储到result中 { int nNum = 0 ...
- HEAP[xxx.exe]:Invalid Address specified to RtlValidateHeap 错误的解决方法总结
一.情况 抽象出问题是这样的: class DLL_API1 A { func() { vector vec; B b; b.func(vec); return TRUE; } } 其中B是另一个导出 ...
- mongodb的连接问题,绑定IP惹的祸
刚刚安装好了 mongodb .对着 mongodb in action上的例子敲了下面的代码: public class TestDBConnect { @Test public void test ...
- hdu 1599 find the mincost route
http://acm.hdu.edu.cn/showproblem.php?pid=1599 floyd找最小环. #include <cstdio> #include <cstri ...
- XJOI网上同步训练DAY1 T1
思路:我们考虑由于没有人的区间会覆盖其他人,所以我们将区间按左端点排序,发现如果地盘长度已知,可以贪心地尽量往左放,来判断是否有解,因此做法很简单,就是二分答案,然后O(n)贪心判定,复杂度为O(nl ...
- vs 自动生成core dump文件
一直以来觉着core dump这个东西很神奇,在初步学习的时候也没有个大方向,最近项目需要记录程序崩溃时的日志信息,因此在网上寻找相关的信息,此时core dump也成为了我重点关注的东西. 说说我的 ...
- XML基础<第一篇>
一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...
- 解决kibana 4 关于响应时间的问题
"message" => " 10.252.142.174 [12/Sep/2016:16:43:47 +0800] \"GET /resources/j ...
- 多目录下多文件 makefile编写
前面已经分享了单目录项下多文件的makefile的编写,现在来看看多目录下多文件makefile的编写: 在做项目时,一般文件都会分几个目录来存放:基本的是 include/ bin/ src/ ...