python基础语法学习常见小问题
说明:我是最近觉得python在完成很多工作中方便使用而且功能强大,想突击学习一下。用的是廖雪峰老师的教程,学习python3.X。这里是廖雪峰老师的网站链接:
http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000
本人用的windows学习python;
一、常见小的细节:
1.python中 elif 是else if的缩写;
2.python初始使用有交互式的,就是有>>>符号的命令行格式,直接执行输入的每一个语句,方便测试,特别是在写程序的时候把一些代码直接复制过来执行,往往很容易发现问题,但是不会保存,每次得重新写; 另外一种就是在 > 下面,python hello.py解释执行整个文件;
3.两个容器: list : classmates == ["Jack", "Rose"],可以修改,可以不同类型 l = [1, "Jack", True]; tuple: t = (1, 2 ,3), t1 = (1, )只有一个元素的时候,要加一个逗号,还有就是tuple元祖一旦定义就不能改变,这是相对于list更加安全的地方,tuple里面也可以嵌套list,list里面是可动态修改的,tuple也是支持不同的类型, t2 = (1, 'Jack');
4.输入函数input() : input()
返回的数据类型是str
,str
不能直接和整数比较,必须先把str
转换成整数。Python提供了int()
函数来完成这件事情;
5.dic 和 list : dic使用hash算法存储,key-value;查找速度快并且与存储规模无关,但是浪费内存多,dict的key必须是不可变对象;list查找速度较慢但是浪费内存少;
6.set:是一个无序不重复元素集。可以用来消除重复元素:
>>> a = [11,22,33,44,11,22]
>>> b = set(a)
>>> b
Set([33, 11, 44, 22])
7.python函数可以返回多个数值:Python的函数返回多值其实就是返回一个tuple,但写起来更方便。
8.不变对象与可变对象:
为什么要设计str
、None
这样的不变对象呢?因为不变对象一旦创建,对象内部的数据就不能修改,这样就减少了由于修改数据导致的错误。此外,由于对象不变,多任务环境下同时 读取对象不需要加锁,同时读一点问题都没有。我们在编写程序时,如果可以设计一个不变对象,那就尽量设计成不变对象。
9.函数在设置默认参数的时候,一定要默认参数必须指向不变对象!!!否则会随着函数的调用,默认参数发生改变;
10.私有函数和公有函数:将对外面提供的接口设置成为共有的,内部逻辑实现定义为私有的 : _xx, __xx这种函数,是一种比较好的代码封装和抽象的方法;
但是python没有一种机制可以限制对私有函数的访问,只是不应该被访问;
python基础语法学习常见小问题的更多相关文章
- Python 基础语法学习(第一讲)---类的使用
[写在前面]:其实自学python有一段时间了,但是一直没想起来要写博客来记录自己的学习,今天才感觉要写点什么让自己学的更扎实一点,所以从今天开始更新python自学系列,希望看见文章的大佬们可以指点 ...
- python 基础语法学习
.注释 python单行注释以#开头 如:#!/usr/bin/env python3 #查找运行环境 多行注释有' ' '和" " " .python最具有特色的是使用 ...
- Python基础语法学习整理
1.基础 r’ ‘:原始字符串 pow.round是内建函数 2.序列通用操作: 索引:d[] 分片:[:] 相加:d+[] 乘法:[1,2]*3 成员判断:in 可用函数:len max mi ...
- Python 基础语法学习笔记
以下运行结果均通过Python3.5版本实测! 1.列表转换为字典 a = ['a', 'b'] b = [1, 2] c = ['c','d'] print (dict([a,b,c])) 输出结果 ...
- 【转】Python基础语法
[转]Python基础语法 学习一门编程语言,通常是学习该语言的以下几个部分的内容: 基础语法:如,变量的声明与调用.基本输出语句.代码块语法.注释等: 数据类型:通常都为 数字.字符串.布尔值.数组 ...
- python学习第五讲,python基础语法之函数语法,与Import导入模块.
目录 python学习第五讲,python基础语法之函数语法,与Import导入模块. 一丶函数简介 1.函数语法定义 2.函数的调用 3.函数的文档注释 4.函数的参数 5.函数的形参跟实参 6.函 ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- python学习第三讲,python基础语法之注释,算数运算符,变量.
目录 python学习第三讲,python基础语法之注释,算数运算符,变量. 一丶python中的基础语法,注释,算数运算符,变量 1.python中的注释 2.python中的运算符. 3.pyth ...
- python基础语法及知识点总结
本文转载于星过无痕的博客http://www.cnblogs.com/linxiangpeng/p/6403991.html 在此表达对原创作者的感激之情,多谢星过无痕的分享!谢谢! Python学习 ...
随机推荐
- Python Socket套接字
socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. socket起源于Un ...
- POJ 2479 Maximum sum(双向DP)
Maximum sum Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 36100 Accepted: 11213 Des ...
- linux 下 Shell编程(三)
if语句应用实例 if语句可以在程序中实现各种逻辑判断. 用if语句判断并显示文件的信息 可以用test命令和相关的参数来判断文件的属性,然后根据判断结果输出文件的信息. #!/bin/bash #4 ...
- 排序算法 c实现
c语言实现插入排序.冒泡排序.选择排序.快速排序.堆排序.归并排序.希尔排序示例,需要的朋友可以参考下 实现以下排序 插入排序O(n^2) 冒泡排序 O(n^2) 选择排序 O(n^2) 快速 ...
- SonarQube 平台搭建
1. 前期准备 ① 环境 jdk 1.8 配置(见其他随笔) MySQL 5.7(见其他随笔) ② 工具下载 sonarqube 下载 <链接:https://pan.baidu.com/s/1 ...
- 【BZOJ4771】七彩树 主席树+树链的并
[BZOJ4771]七彩树 Description 给定一棵n个点的有根树,编号依次为1到n,其中1号点是根节点.每个节点都被染上了某一种颜色,其中第i个节点的颜色为c[i].如果c[i]=c[j], ...
- JS将秒转换为 天
function SecondToDate(msd) { var time =msd if (null != time && " ...
- 巨蟒python全栈开发django14:Form组件
1.form组件初识 2.常用字段测试 3.局部钩子和全局钩子 4.简单看源码
- Stolz–Cesàro theorem
w http://planetmath.org/sites/default/files/texpdf/33795.pdf Stolz–Cesàro theorem - Wikipedia https ...
- python cookbook第三版学习笔记二十:可自定义属性的装饰器
在开始本节之前,首先介绍下偏函数partial.首先借助help来看下partial的定义 首先来说下第一行解释的意思: partial 一共有三个部分: (1)第一部分也就是第一个参数,是一个函数, ...