python起步

很简单基础的东西,自己看书顺便记录下,方便以后回顾

1.程序输入函数input_raw(),获取用户输入的文本

python

>>> username = raw_input('输入你的用户名:') 
输入你的用户名:vinbin 
>>> username 
'vinbin'

java

Scanner in = new Scanner(System.in); 
String username = in.next(); 

python获取输入的文本字符串,并转换为整数进行运算:

int()函数可以将数值字符串转换为整数,进行数学运算

>>> num = raw_input('请输入一个数字:') 
请输入一个数字:1024 
>>> print '把你输入的数翻倍是:%d' % (int(num)*2) 
把你输入的数翻倍是:2048 

java获取用户输入的数值:

Scanner in = new Scanner(System.in);  
int num = in.nextInt(); 

2.pytho注释

#   行注释

文档注释,可以生成文档的

>>> def foo(): 
    "这是文档注释" 
    return true 

类似于java 的 /**  ........   */

3.运算符

逻辑运算符

and      or         not

4.变量与赋值

python是动态语言,不需要预先声明变量的类型,变量的类型和值在赋值的那一刻被初始化

python支持增量赋值

n*=10

python不支持++1 与 --1运算

5.数字

python支持5种基本数字类型

int               (有符号整数)

long             (长整数)

bool             (布尔值)

float             (浮点值)

complex        (复数)

6.字符串

python字符串被定义为引号之间的字符集合,成对的单引号或成对的双引号

得到子字符串

索引运算符 [] 

类似于java String 的 charAt(int index) 方法

切片运算符 [:]  

类似java String的substring(int beginIndex, int endIndex) 方法

python字符串的索引规则与java不同

第一个字符串索引是0,最后一个字符串索引是-1

python中加号‘+’用于字符串连接,星号‘*’用于字符串重复

>>> pystr = 'python' 
>>> pystr[0] 
'p' 
>>> pystr[2:5] 
'tho' 
>>> iscool = 'is cool!' 
>>> iscool[:2] 
'is' 
>>> iscool[:3] 
'is ' 
>>> pystr+iscool 
'pythonis cool!' 
>>> pystr + ' ' + iscool 
'python is cool!' 
>>> pystr * 2 
'pythonpython' 

7.列表和元组

类似于java中的数组

和数组一样,通过从0 开始的数字索引访问元素

列表和元组可以存储不同类型的对象

  1. 列表元素用中括号( [ ])包裹,元素的个数及元素的值可以改变
  2. 元组元素用小括号(( ))包裹,元素的个数及元素的值不可以更改,元组可以看成是只读的列表。
  3. 通过切片运算( [ ] 和 [ : ] )可以得到子集

列表切片运算示例

>>> aList = [1,2,3,4] 
>>> aList 
[1, 2, 3, 4] 
>>> aList[0]   #显示索引0 ,也就是第一个元素
1 
>>> aList[2:]  #显示索引1后面的元素
[3, 4] 
>>> aList[:3]  #显示索引2前面的元素
[1, 2, 3] 
>>> aList[1]=5 #把第二个元素值改为5
>>> aList 
[1, 5, 3, 4] 

元组也可以进行切片运算,得到的结果也是元组(不能被修改):

>>> aTuple = ('bin',78,99,'test') 
>>> aTuple 
('bin', 78, 99, 'test') 
>>> aTuple[3:] 
('test',) 
>>> aTuple[:3] 
('bin', 78, 99) 
>>> aTuple[1] = 5 #元组中的元素不能被修改 
 
Traceback (most recent call last): 
  File "<pyshell#35>", line 1, in <module> 
    aTuple[1] = 5 #元组中的元素不能被修改 
TypeError: 'tuple' object does not support item assignment 
>>>  

8.字典

是python中的映射数据类型,类似于java中的HashMap,由键-值(key-value)对构成

 >>> aDict = {'host': 'earth'} # create dict

9.if语句

标准if 条件语句的语法如下:

>>> a = 1 
>>> if a <2: 
    print 'a<2' 

10.while循环

>>> counter = 0 
>>> while counter<3: 
    print 'loop #%d' % (counter) 
    counter+=1 

11.for 循环和range()内建函数

for 遍历一个列表

>>> for item in ['e-mail','net-surfing','homework','chat']: 
    print item 
 
     
e-mail 
net-surfing 
homework 
chat 

range()内建函数,接受一个数值范围, 生成一个列表

>>> for eachNum in range(20): 
    print eachNum   

for迭代一个字符串中的每一个字符

>>> foo='bannedSites' 
>>> for char in foo: 
    print char 

range()函数和len()函数一起用于字符串索引,显示字符串每一个元素及其索引

下标

>>> foo='abc' 
>>> for i in range(len(foo)): 
    print foo[i],'(%d)' % i 
     
a (0) 
b (1) 
c (2) 

enumerate()函数,同时循环索引,及元素

>>> for i,ch in enumerate(foo): 
    print ch,'(%d)' % i 
 
     
a (0) 
b (1) 
c (2) 

12.列表解析

可以在一行中使用一个for 循环将所有值放到一个列表当中:

>>> sqdEvens = [x **2 for x in range(8) if not x % 2] 
>>> for i in sqdEvens: 
    print i 
 
     
0 
4 
16 
36 

 13.文件和内建函数open() 、file()

打开文件

handle = open(file_name, access_mode = 'r')

file_name 要打开的文件名字

access_mode

'r' 表示读取

'w' 表示写入

'a' 表示添加

'+' 表示读写

'b' 表示二进制访问

打开一个文件,打印出文件内容

>>> filename = raw_input('输入文件名:') 
输入文件名:D:\test.txt 
>>> filename 
'D:\\test.txt' 
>>> fobj = open(filename,'r') 
>>> for eachLine in fobj: 
    print eachLine, 
 
     
asdasdasd 
asdasdfdgvc b 
xcvsdf 
sdfsdf 
cxv 
>>> fobj.close 

14.函数

如果函数中没有 return 语句, 就会自动返回 None 对象。

接收一个文件名,输出该文件的内容函数

>>> def showFile(filename): 
    print '文件内容如下:' 
    fobj = open(filename,'r') 
    for line in fobj: 
        print line, 
        fobj.close 
 
>>> showFile('d:\\test.txt') 
文件内容如下: 
asdasdasd 
asdasdfdgvc b 
xcvsdf 
sdfsdf 
cxv 

在原有值基础上加上自己

>>> def addMe2Me(x): 
    return (x+x) 
 
>>> addMe2Me(2) 
4 
>>> addMe2Me(4.35) 
8.7 
>>> addMe2Me('python') 
'pythonpython' 
>>> addMe2Me([-1,'abc']) 
[-1, 'abc', -1, 'abc'] 

几乎所有的标准数据类型都支持 + 运算符, 不管是数值相加还是序列合并。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • windows下python开发环境搭建

    1、首先访问http://www.python.org/download/去下载最新的python版本。

    用户2398817
  • python语法 3.1 双重for循环

    "D:\Program Files\python-3.6.4\python.exe" "C:/Users/Administrator/Desktop/pytho...

    用户2398817
  • 在mac上搭建python环境

    首先尊重原创:http://blog.justbilt.com/2014/07/02/setup_python_on_mac/

    用户2398817
  • Python|字符串相关问题

    在python中经常遇到一些关于求字符串的问题,比如;找出最长回文字符串,找出字符串中不含重复字符的最长字符串,这时我们总是被这些问题给难住,该如何解决呢?

    算法与编程之美
  • 成功和卓越的区别

    Sarah Lewis: Embrace the near win 成功是一个瞬间, 然而我们总是在庆祝 创新和卓越。 **我们如何将一次成功 转化为卓越的成就...

    杨熹
  • Python入门之面向对象编程(四)Python描述器详解

    本文分为如下部分 引言——用@property批量使用的例子来引出描述器的功能 描述器的基本理论及简单实例 描述器的调用机制 描述器的细节 实例方法、静态方法和...

    Jetpropelledsnake21
  • 零基础Python知识点回顾(一)

    然后在电脑cmd命令提示符  输入检查是否已经安装pip,一般安装了python都会有的。

    用户2398817
  • python语法学习记录

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    云雀叫了一整天
  • python练习题-day5

    tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44...

    郭耀华
  • 制作WordPress侧边栏“随机文章”小工具并集成在主题中的方法

    在侧边栏显示个“随机文章”小工具据说有两个好处:一是可以提高访客的点击率;二是对搜索引擎友好。一些主题并没有集成“随机文章”小工具,而网络上提供的一些方法只是给...

    Jeff

扫码关注云+社区

领取腾讯云代金券