#开头的语句是注释

当语句以冒号“:”结尾时,缩进的语句视为代码块。一般缩进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的列表类型

 # encoding:utf-8

 #Pythton内置的数据集合类型有两种,一种是list,一种是tuple

 #list是有序集合,可以对list进行查询、添加、删除、修改

 #tuple是元组,有序列表。与list不同的是,tuple中的内容不能修改,因此它没有添加、修改、删除的方法 

 # 1、list

 myList = ['a', 'b', 123, 'abc']

 print(myList) 

 # 1.1 list的查询操作

 print (myList[0] ) # 按照索引获取list的元素,得到第一个元素

 print(myList[-1]) # 获取列表中最后一个元素

 print(len(myList)) # 获取列表的长度

 # 1.2 list的添加操作

 myList.append('d') # 在list的末尾处追加元素

 myList.insert(2, 'insert element') # 在列表的指定位置添加元素

 #1.3 list的删除操作

 myList.pop() # 删除列表末尾的元素

 myList.pop(2) # 删除列表指定位置的元素

 # 1.4 list的修改操作

 myList[0] = "aaa" #修改列表指定位置的值

 # 1.5 多维数组

 list_tmp = ['', '']

 myList.append(list_tmp) # 在一个列表中可以插入另一个列表

 print(myList[4][1]) # 可以通过指定下表的方式获取内部类表的元素

 # 2、tuple

 #不可变的tuple有什么意义?因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple。

 myTuple = ('a', 'b', 123, 'abc')

 # 2.1 tuple的查询操作

 print(myTuple[0])

 print(myTuple[-1]) #tuple获取元素的操作和list类似

 #2.2 tuple的陷阱

 # 当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来

 t = () #定义一个空的tuple

 t = (1) #要定义一个只有1个元素的tuple,如果你这么定义:结果是 1

 #定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,

 ## 因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。

 #所以,只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:

 t = (1,) # 这样定义结果是 (1,)

 #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 = 0

sum =0

while n <len(arr):

    sum +=arr[n]

    n+=1

print(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

 mydict = {"aa":92,"bb":85,"cc":56,"dd":64}

 #dict的查找

 for k in mydict:

     print("%s得了%d分" % (k,mydict.get(k)))

 #dict的修改

 mydict["aa"] = 100

 print( mydict["aa"])

 #dict的增删

 mydict["ee"] = 88 #python的添加

 mydict.pop("ee") #删除

 print( mydict.get("ee")) #返回none

set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。

相当于java中的hashSet

 myset = ([1,2,3,4])

 for k in myset: #遍历

     print(k)

 myset.append(6) #追加

 myset.remove(6) #移除

随机推荐

  1. 浅谈Vue.js

    作为一名Vue.js的忠实用户,我想有必要写点文章来歌颂这一门美好的语言了,我给它的总体评价是“简单却不失优雅,小巧而不乏大匠”,下面将围绕这句话给大家介绍Vue.js,希望能够激发你对Vue.js的 ...

  2. jQuery技巧

    回到顶部按钮 图片预加载 判断图片是否加载完 自动修补破损图像 Hover切换class类 禁用输入 停止正在加载的链接 toggle fade/slide 简单的手风琴 使两个DIV同等高度 在浏览 ...

  3. 你写的return null正确吗?

    上次一篇“你写的try…catch真的有必要吗”引起了很多朋友的讨论.本次我在code review又发现了一个问题,那就是有人有意无意的写出了return null这样的代码,例如: public ...

  4. shell脚本学习--shell中的变量$

    $$ :Shell本身的PID(ProcessID) $! :Shell最后运行的后台Process的PID $? :最后运行的命令的结束代码(返回值) $- :使用Set命令设定的Flag一览 $* ...

  5. Spring重点—— IOC 容器中 Bean 的生命周期

    一.理解 Bean 的生命周期,对学习 Spring 的整个运行流程有极大的帮助. 二.在 IOC 容器中,Bean 的生命周期由 Spring IOC 容器进行管理. 三.在没有添加后置处理器的情况 ...

  6. 使用RNSwipeViewController类库进行视图切换

    如今很多应用已经不再局限于点击按钮触发事件来进行视图之间切换,为迎合给予用户更好体验,体现iOS系统极佳用户体验,使用手势来进行各个视图之间切换,用户至于一个大拇指在屏幕中央就可浏览到很多信息: 关于 ...

  7. ASP.NET Core MVC 过滤器介绍

    过滤器的作用是在 Action 方法执行前或执行后做一些加工处理.使用过滤器可以避免Action方法的重复代码,例如,您可以使用异常过滤器合并异常处理的代码. 过滤器如何工作? 过滤器在 MVC Ac ...

  8. application19事件 20多少步骤 具体20多少只有微软知道!!!

  9. 题目1003:A+B(按逗号分隔的A+B)

    题目链接:http://ac.jobdu.com/problem.php?pid=1003 详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus 参考代码: ...

  10. iOS项目实现SVN代码管理方法③(Part 三)

    内容中包含 base64string 图片造成字符过多,拒绝显示