• python学习笔记之初识Python


    一直听说python语音的简单易用而又强大,今天终于忍不住借本书,开始接触接触一下它,下面结合书本和自己的一些体会,写一下刚刚接触python的东西,重点写一些和C++有区别的地方。

    (1)输入input()、输出print()

    注意输入input()括号中是提示符,返回值才是输入的数

    如a=input("请输入一个数")

    (2)数据类型

    1)python中使用变量不需要提前对变量进行声明,可以直接使用,这点倒有点想MATLAB,而不是C。

    2)python中所表示的整数大小只受限制于内存的大小,并不是固定的字节数。这个简直爽爆了,大整数运算再也不需要转换成字符串去处理了。

    3)可以使用[]来访问字符串等序列中的某一项,但是str类型与基本的数值类型都是固定的,值一旦设定就不能改变

    如:

    (3)python中存在一些组合数据类型

    如元组、列表,其中元组是固定大小的,而列表是可变的,创建列表可以使用[]

    (4)python中传递变量全部都是按照引用传递(不像C++中可以选择 值、指针和引用)

    这样全都按照引用传递,对应固定类型(如字符串、整数、元组)的参数传递其实与C中按值传递类似,而可变类型(如列表)的参数传递与C中按引用传递类似。

    如:

    (5)逻辑操作符

    1)身份操作符  is

    这个是由于前面说到的python变量都是按照引用进行传递的,所以使用is来验证两个变量是否指向的是同一个对象。

    这里需要注意的是字符串变量和普通变量的区别,所谓引用其实就是一个“标签”,对内存中的某一个或一段数据添加一个“标签”作为别名而已,如果将一个变量赋值成已经存在内存中的一个字符串,那么内存中将不再重新存储一遍,而整数等其他类型是需要存储两份的(这个在C++中也是这样的)。

     2)比较操作符

    python中可以进行链式比较(这个在C++中是不行的)

    如可以写成这样 0<a<=10

    3)成员运算符 in、not in

    这里说明下python中字符串的表示并不区别单引号和双引号

    4)逻辑运算符 and or not

    注意这里python虽然使用的仍是短路逻辑,但是返回值并不是bool型,而是返回结果(结果指的是退出逻辑判断前最后一个操作数)

    (6)语句块

    python中并不像C++那样使用{}来区分语句块,而是直接使用缩进的方法,一般每级缩进都使用4个空格。

    (7)控制流语句

    1)if

    if 条件1:

        语句1

    elif 条件2:

        语句2

    elif 条件3:

        语句3

    。。。

    else:

        语句n

    2)while与C++几乎一样

    3)for...in

    4)异常处理

    try:

        try_suite

    execpt exception1 as val1:

        处理语句1

    execpt exception2 as val2:

        处理语句2

    ...

    (8)算数运算

    大部分与C++相似,只是要特别注意"/"在python中是不会取整的,而是得到小数

    (9)函数的创建与调用

    函数格式:

    def functionname(arg1,arg2,...)

        函数语句

    不需要定义函数的返回值,如果有返回值,直接return,没有的话就认为是没有返回值

    (10)模块的调用

    模块的调用使用:import 模块名

    现有的模块可以直接使用import调用,自己写的可以先保存成.py的文件,然后使用import调用

    下面给一个产生随机数的小程序:

     1 import random
     2 
     3 
     4 def get_int(msg,min,default):
     5     while True:
     6         try:
     7             line=input(msg)
     8             if(not line and default is not None):
     9                 return default
    10             i=int(line)
    11             if i<min:
    12                 print("input must >=min")
    13             else:
    14                 return i
    15         except ValueError as err:
    16             print(err)
    17             
    18 
    19 
    20 rows=get_int("rows",1,None)
    21 cols=get_int("cols",1,None)
    22 min=get_int("min",-100,0)
    23 max=get_int("max",min,100)
    24 
    25 
    26 row=0
    27 while row<rows:
    28     col=0
    29     line=""
    30     while col<cols:
    31         i=random.randint(min,max)
    32         s=str(i)
    33         line=line+s
    34         line=line+" "
    35         col=col+1
    36     print(line)
    37     row=row+1;
  • 相关阅读:
    promise请求数据(all方法)
    右键的点击事件
    微信小程序的接口调用封装
    微信小程序HTTP接口请求封装
    微信小程序得路由跳转
    管理系统得操作与解决思路
    HTTP协议
    动态语言概述
    AsynclAwait
    三种跨域解决方案
  • 原文地址:https://www.cnblogs.com/bewolf/p/4530654.html
Copyright © 2020-2023  润新知