码迷,mamicode.com
首页 > 编程语言 > 详细

python3 基础1

时间:2018-01-15 12:36:24      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:oba   efi   post   blog   字符串   ring   bool   javascrip   生成   

python属于运行与服务端的编程语言:

了解一门语言先了解其:

数据类型:

  python中,数据类型可分为: Numbers(int float double) str bool dict tuple set list

  对比javascript的数据类型;

Number string boolean Object Function Null undefined

很明显,python对 数分的更细;js中只有数,整数小数都是数; bool类型是一致的但取反却不一致 python 中 Not ; js中用 !;

dict与json对象(其实与map对应更合适:)对应: set对应es6中的set ;set其实用list生成的; a=([1,2,3,4]);

list与数组对应;

条件判断:

if xxx: elif:xxx else:xxx;

循环:

for in 和 wihle ; python中并没有单纯的for循环;

函数定义:

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x

 

来点小坑:

判断一个对象是否为字符串:

本来在js中就非常简单: typeof  obj=="string";

而在py中:

St1=" ___000000000000 ";
ssss=123;
dc=str(type(St1));
print(dc[8:-2]);
print(dc[8:-2]=="str");
print(print(type(St1)));

于是我很好奇:为什么还要转一下: type(str1)这个竟然不是字符串:

后来发现其实也是有自带函数的:

def str_(string):
    #第一步,判读是否是字符串
    if isinstance(string, str):
        print("传入的是字符串");
        return;
    else:
        print("对象不是一个字符串");
        return;
str_(St1);

 

 

初学难免有问题发现:

来个疑惑点:

a1=0;
def cc():
    print(a1);   #没问题;
    if a1==0:
        print("a1等于0");
cc();


arr_list1=[1,2,3,4,56,9,2];
zhi=0;#位置;
re=0;#结果;
def add_arr(obj):
    global zhi;
    global re;
    if zhi==len(obj):
        return re;
    else:
        re+=obj[zhi];
        zhi+=1;
        add_arr(obj);
vv11=add_arr(arr_list1);
#print("数组的和是:%d"%vv);
print(vv11); #None
print("数组求和的结果是:%d"%re);

 

cc函数证明了,python中确实存在作用域链:

那么第二个函数中,global就没有必要了,因为可以访问到外面的变量;但是去掉又会报错;记录在此,以后解决;

 

 

 


  

 

python3 基础1

标签:oba   efi   post   blog   字符串   ring   bool   javascrip   生成   

原文地址:https://www.cnblogs.com/liuliu-hai/p/8276685.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!