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 ...
随机推荐
- 医院设置 codevs 2577
Floyd+二叉树 #include<iostream>#include<cstdlib>#include<cstdio>#include<cstring&g ...
- No2_2.接口继承多态_Java学习笔记_继承
***类的继承***1.继承的实现extends2.[修饰符] class 子类名 extends 父类名{}3.修饰符一般为:public abstract final4.重写是指父子类之间的关系, ...
- 使用grid++report打印选中行
接上一篇<hibernate+spring+mvc+Easyui框架模式下使用grid++report的总结>对grid++report做进一步开发 先写一下实现流程: 1.默认为全部载入 ...
- 对163k地方门户网站系统QQ互联功能修改
163k地方门户网站QQ互联申请时遇到的问题: "禁止开发商强制用户重新注册或绑定其他帐号" 原因是用户登录完QQ还需要注册帐号或者绑定原有帐号 163k地方门户网站的QQ互联登录 ...
- 新版TeamTalk部署教程(蓝狐)
http://www.bluefoxah.org/teamtalk/new_tt_deploy.html
- extern "c"用法
在Windows驱动开发中,如果是使用C++开发的,那么必须在有些关键函数钱加extern c 的关键词,否则编译出来的函数,跟C语言编译的函数不同,导致驱动程序不能 被有效识别. 最关键的是Driv ...
- 【hihocoder 1039 字符串消除】模拟
题目链接:http://hihocoder.com/problemset/problem/1039 题意:给定一个只由{A, B, C}组成的字符串s,长度为n, 故包含n+1个空隙:现要求在某个空隙 ...
- 【HDU1272】小希的迷宫(并查集基础题)
仍旧裸敲并查集.有这两点注意: 1.输入 0 0 时候要输出YES 2.留心数组的初始化 #include <iostream> #include <cstring> #inc ...
- 高精度快速幂(Java版)
import java.io.*; import java.math.*; import java.util.*; import java.text.*; public class Main { pu ...
- 【转】Android中自动连接到指定SSID的Wi-Fi
最近在做一个项目,其中涉及到一块“自动连接已存在的wifi热点”的功能,在网上查阅了大量资料,五花八门,但其中一些说的很简单,即不能实现傻瓜式的拿来就用,有些说的很详细,但其中不乏些许错误造成功能无法 ...