python与c++的不同之处

python的语句块不是用{}括起来的而是冒号后面跟一些与比当前语句多一的tab缩进的语句。

1.定义变量

python的变量类型不需要人为指出,会根据赋值的类型决定此变量的类型。

例如

a = 1    //此时a是int类型

print a

b = 'gaofang'    //此时b是字符串型

2.if判断语句

写法

if 条件:

  语句

elif 条件:

  语句

else:

  语句

实例

if a > 0:
  print 'a = 1'
elif a >= 1:
  print 'a >= 1'
else:
  print 'lalala'

python语言的语句块不像c++一样用花括号括起来,而是根据缩进判断是不是同一个语句块

例如

a = 1
  print a
if a > 0:
  print 'a = 1'
  print 'a = 2'
elif a >= 1:
  print 'a >= 1'
else:
  print 'lalala'

会同时输出a=1和a=2

还需要注意的是条件判断符后面的:是必须加的

3.

循环语句

for循环

for i in range(100):
  print i

输出从零到一百

注意点是for循环后面也要加冒号,和c++不同的是for循环没有括号

4.函数

def sayhello():
  print 'Hello word'
sayhello()

def表示定义的是一个函数,需要注意的是函数后面的冒号以及缩进。

python的函数不需要定义返回值类型,想返回哪种元素直接return即可

def max(a, b):
  if a>b:
    return a
  else:
    return b
print max(1, 2)

5.类

class gaofang:
  x = 1
  def sayhello(self):
    print self.x

a = gaofang()
a.sayhello()

self相当于this必须要加

需要注意的是声明一个类类型的时候,用的是类似于赋值的语句。

构造函数

class gaofang:
  def __init__(self, a):
    self.x=a
  def sayhello(self):

    print self.x

a = gaofang('asasa')
a.sayhello()

构造函数的名字必须是__init__,我们可以在类里面的任何地方,包括函数里面去定义类的成员变量。

例如

class gaofang:
  def __init__(self, a):
    self.x=a
  def sayhello(self):
    self.a = 1
    print self.x
  def ssa(self):
    print self.a
a = gaofang('asasa')
a.sayhello()
a.ssa()

注意的是我们必须先调用a.sayhello(),之后才能调用a.ssa()因为类里面的x变量实在sayhello函数里面声明的,这与先定义后使用的原则一致。

继承

class gg(gaofang):
  def __init__(self, a):
    gaofang.__init__(self, a)

写法是在类名后面加一个用小括号括起来的父类的名字

文件之间的操作

import 文件名

import a
b = a.gaofang('sa')
b.sayhello()

通过调用a.的形式调用a文件里面的内容

或者

from a import gaofang
b = gaofang('sa')
b.sayhello()

通过from 文件名 import 内容

可以直接调用此文件中的内容

高放的python学习笔记之基本语法的更多相关文章

  1. 高放的c++学习笔记之模板与泛型编程

    函数模板 作用 有很多时候参数的类型以及返回值的类型是可变的,我们通过定义模板来让函数能更灵活的运用. 我们设计一个比较函数,如果能比较的两个参数是int型的,两个参数也可能都是string型的,单独 ...

  2. 高放的c++学习笔记之重载运算与类型转换

    ▲基本概念 (1)重载运算符是具有特殊名字的函数,它们的名字又operator和其后要定义的运算符号共同构成.. (2)对于一个运算符号来说它或者是类的成员,或者至少含有一个类类型的参数. (3)我们 ...

  3. 高放的c++学习笔记之类

    类的基本思想是数据抽象和封装1.this 成员函数通过一个名为this的额外隐式参数来访问调用它的对象,当我们调用一个函数的时候,用请求该函数的对象的初始化this. 如果某个类的名字为sale,某个 ...

  4. 高放的c++学习笔记之函数基础

    局部变量 函数里面的局部变量有普通的局部变量和局部静态变量两种. 普通局部变量变量就是正常定义在函数体内部的变量,如果返回局部变量的地址,以便于函数调用结束后还继续访问此变量的话,编译器会报warni ...

  5. 高放的c++学习笔记之关联容器

    标准库提供8个关联容器 按关键字有序保存有(红黑树实现) set map multset 关键字可重复出现的set multimap  关键字可重复出现的map 无序保存 哈希实现 unorderre ...

  6. 高放的c++学习笔记之lambda表达式

    lambda表达式:可以让代码看起来更整洁,有些结构简单且用的次数少的函数可以用lambda表达式替代, 通常结构是这样的[捕获列表](参数列表){函数部分} 捕获列表: lambda表达式如果在一个 ...

  7. Python学习笔记之基本语法学习1

    ★学习目标: 用Python做HTTP接口测试 ★学习的大纲: ●Python语言基础(安装,第一个案例,基本语法等) ●Request模块使用 ●编写一个简单功能的接口测试案例 ●HTTP协议基础 ...

  8. [python学习笔记] 数据类型与语法

    数据类型 数值型 int 整形 没有long类型,可以代表任意大小的整数. type(1) -> int float 浮点数 也没有double类型 type(1.2) -> float ...

  9. Python 学习笔记(基础语法 restful 、 Flask 和 Requests)

    input 函数 #!/usr/bin/env python3 name = input("\n\n按下 enter 键后退出.") print(name) print() 在 p ...

随机推荐

  1. 基于单例使用ThreadLocal对多线程下数据的访问修改

    package cn.lyy.thread; import java.util.Random; /** * 基于单例模式的基础上,使用ThreadLocal为每一个进入的线程生成一个实例, * 用来对 ...

  2. [Android] 获取音频输出getOutput

    每创建一个AudioTrack,代表需要新增一个输出实例,即需要根据音频流的的stream type,音频流的音轨数量,采样率,位宽等数据来重新构建buffer,而且输出的设备也可能会有变化,由于An ...

  3. QWidget中嵌入win32 window(使用QWindow和QWidget::createWindowContainer)

    主要用到QWindow::fromWinId和QWidget::createWindowContainer这两个函数 QWindow::fromWinId用来创建一个win32窗口的代理 QWidge ...

  4. POJ1942 Paths on a Grid(组合)

    题目链接. 分析: #include <cstdio> #include <iostream> #include <map> #include <cstrin ...

  5. BZOJ 1015 [JSOI2008]星球大战starwar

    1015: [JSOI2008]星球大战starwar Time Limit: 3 Sec  Memory Limit: 162 MBSubmit: 3551  Solved: 1581[Submit ...

  6. 【转】Java生成对应字符串的MD5密码模块

    原文网址:http://www.cnblogs.com/xudong-bupt/archive/2013/05/10/3070899.html (1)一般使用的数据库中都会保存用户名和密码,其中密码不 ...

  7. 前端工程师和web工程师的差异

    摘自园内一篇文章关于web工程师的思考,比较认同其中的一些观点 前端工程师知识结构:               精通: xhtml,css,JavaScript       熟悉:一种后端程序语言( ...

  8. g++ gcc 的区别

    我们在编译c/c++代码的时候,有人用gcc,有人用g++,于是各种说法都来了,譬如c代码用gcc,而c++代码用g++,或者说编译用gcc,链 接用g++,一时也不知哪个说法正确,如果再遇上个ext ...

  9. Java中的局部代码块、构造代码块、静态代码块

    局部代码块: 作用:控制变量的生命周期: 在程序中,当我们已经使用完 x 后,并且在接下来的代码中,不会再用到x,那么就没必要让x 在内存中占用空间了,这用情况下,可以使用 局部代码块,将x及其所设计 ...

  10. HDU_1401——同步双向BFS,八进制位运算压缩,map存放hash

    这个速度比分步快一点,内存占的稍微多一点 Problem Description Solitaire is a game played on a chessboard 8x8. The rows an ...