首页 > 代码库 > Python的基本语法,涵盖数据类型、循环判断、列表、map和set等
Python的基本语法,涵盖数据类型、循环判断、列表、map和set等
以#
开头的语句是注释
当语句以冒号“:”结尾时,缩进的语句视为代码块。一般缩进4个空格
Python程序是大小写敏感的,如果写错了大小写,程序会报错。
Python的数据类型
- 整型
- 浮点型
- 字符串
- 布尔值
- 空值
变量
变量这块需要好好说明一下。Python属于动态语言,它的变量不需要指定类型,而java等属于静态语言,要想使用一个变量,必须为变量指明类型。
这样的话Python的变量就很简单了,像:
a = 3
x = "你好"
等都是变量。
Python的字符串
因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串‘ABC‘
在Python内部都是ASCII编码的。Python提供了ord()和chr()函数,可以把字母和对应的数字相互转换:
>>> ord(‘A‘)65>>> chr(65)‘A‘
Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u‘...‘
表示,比如:
>>> print u‘中文‘中文>>> u‘中‘u‘\u4e2d‘
由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:
#!/usr/bin/env python# -*- coding: utf-8 -*-
第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
字符串的格式化
在Python中,采用的格式化方式和C语言是一致的,用%
实现,举例如下:
>>> ‘Hello, %s‘ % ‘world‘‘Hello, world‘>>> ‘Hi, %s, you have $%d.‘ % (‘Michael‘, 1000000)‘Hi, Michael, you have $1000000.‘
你可能猜到了,%
运算符就是用来格式化字符串的。在字符串内部,%s
表示用字符串替换,%d
表示用整数替换,有几个%?
占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?
,括号可以省略。
常见的占位符有:
%d | 整数 |
%f | 浮点数 |
%s | 字符串 |
%x | 十六进制整数 |
另一种输出时字符串拼接的方法,使用了format方法。
name = "小林"
age = 25
sex = "男"
print(‘我的名字是{0},是个{1}生,今年{2}岁 ‘.format(name,sex,age))
python的输入输出
输出:
print()
输入:
name = raw_input()
Python的列表类型
1 # encoding:utf-8 2 3 #Pythton内置的数据集合类型有两种,一种是list,一种是tuple 4 5 #list是有序集合,可以对list进行查询、添加、删除、修改 6 7 #tuple是元组,有序列表。与list不同的是,tuple中的内容不能修改,因此它没有添加、修改、删除的方法 9 10 11 # 1、list12 13 myList = [‘a‘, ‘b‘, 123, ‘abc‘]14 15 print(myList) 18 19 # 1.1 list的查询操作20 21 print (myList[0] ) # 按照索引获取list的元素,得到第一个元素22 23 print(myList[-1]) # 获取列表中最后一个元素24 25 print(len(myList)) # 获取列表的长度26 27 28 29 # 1.2 list的添加操作30 31 myList.append(‘d‘) # 在list的末尾处追加元素32 33 myList.insert(2, ‘insert element‘) # 在列表的指定位置添加元素34 35 36 37 #1.3 list的删除操作38 39 myList.pop() # 删除列表末尾的元素40 41 myList.pop(2) # 删除列表指定位置的元素42 43 44 45 # 1.4 list的修改操作46 47 myList[0] = "aaa" #修改列表指定位置的值48 49 50 51 # 1.5 多维数组52 53 list_tmp = [‘1‘, ‘2‘]54 55 myList.append(list_tmp) # 在一个列表中可以插入另一个列表56 57 print(myList[4][1]) # 可以通过指定下表的方式获取内部类表的元素58 59 60 61 # 2、tuple62 63 #不可变的tuple有什么意义?因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple。64 65 myTuple = (‘a‘, ‘b‘, 123, ‘abc‘)66 67 68 69 # 2.1 tuple的查询操作70 71 print(myTuple[0])72 73 print(myTuple[-1]) #tuple获取元素的操作和list类似74 75 76 77 #2.2 tuple的陷阱78 79 # 当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来80 81 t = () #定义一个空的tuple82 83 t = (1) #要定义一个只有1个元素的tuple,如果你这么定义:结果是 184 85 #定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,86 87 ## 因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。88 89 #所以,只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:90 91 t = (1,) # 这样定义结果是 (1,)92 93 #Python在显示只有1个元素的tuple时,也会加一个逗号,,以免你误解成数学计算意义上的括号。
python的判断循环
#python的循环。一种是for循环,一种是while循环#for循环,读出list的元素names = ["aa","bb","cc","dd"]for name in names: print(name)#while循环,计算出list中的元素总和arr = range(101)n = 0sum =0while n <len(arr): sum +=arr[n] n+=1print(sum)#python的判断。实现一个优良中差的判断score = int( raw_input()) #强制类型转换,raw_input读进来的永远都是以字符串的形式出现if(score >=90 and score <=100): print("优秀")elif(score>=70 and score<90): print("良好")elif(score>=60 and score<70): print("一般")elif(score>=0 and score <60): print("不及格")else:print("请输入正确的分数!")
python的dict和set
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。
正确使用dict非常重要,需要牢记的第一条就是dict的key必须是不可变对象。
dict中是无序的,相当于java中的HashMap
1 mydict = {"aa":92,"bb":85,"cc":56,"dd":64} 2 3 #dict的查找 4 5 for k in mydict: 6 7 print("%s得了%d分" % (k,mydict.get(k))) 8 9 #dict的修改10 11 mydict["aa"] = 10012 13 print( mydict["aa"])14 15 #dict的增删16 17 mydict["ee"] = 88 #python的添加18 19 mydict.pop("ee") #删除20 21 print( mydict.get("ee")) #返回none
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
相当于java中的hashSet
1 myset = ([1,2,3,4])2 3 for k in myset: #遍历4 5 print(k)6 7 myset.append(6) #追加8 9 myset.remove(6) #移除
Python的基本语法,涵盖数据类型、循环判断、列表、map和set等