python 之初学者的代码示例(短小精悍)(一)

学习Python也有个把月了,最近整理自己初学的代码示例,一个是为了增加自己对细节的把握,一个是让像我一样的初学者能够熟练地使用基础,基础的重要性就不说了,我希望自己能够把这些精巧的小而短的示例分享给大家,共同进步

#help(execfile)

Help on built-in function execfile in module __builtin__:

execfile(...)

execfile(filename[, globals[, locals]])

Read and execute a Python script from a file.

The globals and locals are dictionaries, defaulting to the current

globals and locals.  If only globals is given, locals defaults to it.

# 类对象命名规则

class MyClass:                 # Python中的类名采用CapWords约定,单词首字母大写,其他小写

__username=‘ ‘             # 类的私有属性、私有方法要有两个下划线前缀

def __init__(self,username):

self.__username=username

def getUserName(self):      # 共有方法名首字母小写,其后每个单词首字母大写

return self.__username

if __name__==‘__main__‘:

myclass=MyClass(‘admin‘)

print myclass.getUserName()

# 注释

# 单行注释

# 行内注释:可以#+空格 来区分好看

# 注释块:在块中用单行只有一个# 来分割注释

#

# 中文注释:cp936

# 跨平台注释:除了win以外平台

# 加!# /usr/bin/python

# 十进制也有浮点型

>>> from decimal import Decimal

>>> dec=Decimal(‘1.1‘)

>>> dec# 查看变量dec类型

Decimal(‘1.1‘)

>>> dec+2.6#十进制浮点型与浮点型不能直接相加,属于一个单独的类型,是准确的没有损失

Traceback (most recent call last):

File "<pyshell#17>", line 1, in <module>

dec+2.6

TypeError: unsupported operand type(s) for +: ‘Decimal‘ and ‘float‘

>>> dec+Decimal(‘2.6‘)

Decimal(‘3.7‘)

#write Fibonacci series up to n

def fibonacci(n):

"""Print a Fibonacci series up to n"""

a,b=0,1

while a<n:

print a

a,b=b,a+b

#转义字符

>>> print ‘what\‘s your name‘

what‘s your name

#repr()的应用

#Python 有办法将任意值转为字符串:将它传入 repr() 或 str() 函数。

#函数 str() 用于将值转化为适于人阅读的形式,而 repr() 转化为供解释器读取的形式

#某对象没有适于人阅读的解释形式的话, str() 会返回与 repr() 等同的值。

# The repr() of a string adds string quotes and backslashes:

>>> hello=‘hello world\n‘‘

>>> print hello

hello world

>>> hellos=repr(hello)#保持了原有状态

>>> print hellos

‘hello world\n‘

#实现用户登录

# -*- coding: cp936 -*-

username=raw_input(‘您的姓名:‘)

password=raw_input(‘您的密码:‘)

if (username==‘admin‘)and(password==‘admin‘):

print ‘恭喜你!您输入的用户名和密码合法,登录成功!‘

#运用for 将字符串当做字符串list 迭代

# -*- coding: cp936 -*-

string=‘this is a good day‘

for i in string:

print i

#iter()内置函数可以返回迭代器(iterator)

# -*- coding: cp936 -*-

#所有迭代工具的内部工作都是在循环调用next方法,并且捕捉StopIteration异常来确定何时离开

#iter()内置函数可以返回迭代器(iterator)

a=[‘a‘,‘b‘,‘c‘,‘d‘]

my=iter(a)            # 返回iterator

print my.next()     # 使用迭代工具将my输出

print my.next()

print my.next()

print my.next()

#或者使用

#for i in tier(a):

#   Print i

>>> help(iter)

Help on built-in function iter in module __builtin__:

iter(...)

iter(collection) -> iterator

iter(callable, sentinel) -> iterator

Get an iterator from an object.  In the first form, the argument must

supply its own iterator, or be a sequence.

In the second form, the callable is called until it returns the sentinel.

在后台, for 语句在容器对象中调用 iter() 。 该函数返回一个定义了 next() 方法的迭代器对象,它在容器中逐一访问元素。没有后续的元素时, next() 抛出一个 StopIteration 异常通知 for 语句循环结束。

#两个不同的join的区别

>>> from string import join

>>> help(join)

Help on function join in module string:

join(words, sep=‘ ‘)

join(list [,sep]) -> string

Return a string composed of the words in list, with

intervening occurrences of sep.  The default separator is a

single space.

(joinfields and join are synonymous)

>>> join = str.join

>>> help(join)

Help on method_descriptor:

join(...)

S.join(sequence) -> string

Return a string which is the concatenation of the strings in the

sequence.  The separator between elements is S.

#print 中的+和,区别;zip(压缩)list为元祖列表

>>> names=[‘j‘,‘f‘,‘w‘,‘min‘,‘yi‘]

>>> ages=[12,13,15,52,66]

>>> for name,age in zip(names,ages):

print name,‘ is ‘,age#print 中+号只能连接string ;可以使用,来分隔;若使用+,则需要str(age)

j  is  12

f  is  13

w  is  15

min  is  52

yi  is  66

#enumerate()返回index和value 对

#enumerate()返回一个迭代器

lis=[‘this‘,‘is‘,‘a‘,‘good‘,‘day‘]

for index,value in enumerate(lis):

print index,‘ ‘,value

#类似的do while循环改进

user=raw_input(‘输入你的用户名:‘)

while user:        #user 只要非空,持续输出

print ‘确认:您输入的用户名是‘+user

user=raw_input(‘输入你的用户名:‘)

#改进版本,不要重复代码,采用判断if 和break来跳出循环

while True:

user2=raw_input(‘输入你的用户名:‘)

if not user2:   #判断是:not空,则执行break

break

print ‘确认:您输入的用户名是‘+user

更新时间 :2014年6月8日19:40:13

python 之初学者的代码示例(短小精悍)(一),布布扣,bubuko.com

时间: 2024-10-27 04:07:10

python 之初学者的代码示例(短小精悍)(一)的相关文章

python机器登陆新浪微博代码示例

前段时间开始学习Python,一直想不到有什么好的小项目可以做,憋得慌,这不, 绞尽脑汁想出了一个爬取新浪微博,并对爬取数据做简单统计的项目.一开始我自以为学习了点Python正则就可以搞定了,熟料在机器登陆上栽了跟头,从完全一头雾水到现在初步登陆获取到数据,整整历经了四五天.因为之前没搞过机器登陆方面的代码,所以这次项目的初步完成完全归功于网上的一些大神,我只是拾人牙慧,拼凑了几个大神的代码,另外加几行注释而已. # import 这边需要注意的是只有一个rsa这个模块是需要install的,

Python实现各种排序算法的代码示例总结

Python实现各种排序算法的代码示例总结 作者:Donald Knuth 字体:[增加 减小] 类型:转载 时间:2015-12-11我要评论 这篇文章主要介绍了Python实现各种排序算法的代码示例总结,其实Python是非常好的算法入门学习时的配套高级语言,需要的朋友可以参考下 在Python实践中,我们往往遇到排序问题,比如在对搜索结果打分的排序(没有排序就没有Google等搜索引擎的存在),当然,这样的例子数不胜数.<数据结构>也会花大量篇幅讲解排序.之前一段时间,由于需要,我复习了

Python脚本调用C#代码数据交互示例(hello world)

原地址: http://www.djangochina.cn/forum.php?mod=viewthread&tid=247 随着项目的逐渐收尾, 对IronPython脚本也越来越熟悉,这里为IronPython脚本感兴趣但不入门的朋友写几篇使用心得,这是第一个:最简单的hello world程序.        首先,我们必须有一个IronPython脚本引擎库(IronPython.dll),我用的版本是V1.0,你可以在网上直接下到相关源码,编译后即生成IronPython.dll.1

python访问sql server安装、配置、代码示例

freeTDS是能够用Linux和Unix连接MS SQLServer和Sybase数据库,TDS的意思是"表列数据流" 安装gcc组件: yum install -y gcc 否则configure的时候报错: configure: error: no acceptable C compiler found in $PATH Linux下安装freetds-dev: download source: http://mirrors.ibiblio.org/freetds/stable/

Python Web框架Tornado的异步处理代码示例

1. What is Tornado Tornado是一个轻量级但高性能的Python web框架,与另一个流行的Python web框架Django相比,tornado不提供操作数据库的ORM接口及严格的MVC开发模式,但可以提供基本的web server功能,故它是轻量级的:它借助non-blocking and event-driven的I/O模型(epoll或kqueue)实现了一套异步网络库,故它是高性能的. Tornado的轻量级+高性能特性使得它特别适用于提供web api的场合,

2018-06-20 中文代码示例视频演示Python入门教程第三章 简介Python

知乎原链 Python 3.6.5官方入门教程中示例代码汉化后演示 对应在线文档: 3. An Informal Introduction to Python 不知如何合集, 请指教. 中文代码示例Python入门教程 3.1.1_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili 中文代码示例Python入门教程 3.1.2 第一部分_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili 中文代码示例Python入门教程 3.1.2 第二部分_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

2018-06-21 中文代码示例视频演示Python入门教程第五章 数据结构

知乎原链 续前作: 中文代码示例视频演示Python入门教程第四章 控制流 对应在线文档: 5. Data Structures 这一章起初还是采取了尽量与原例程相近的汉化方式, 但有些语义较偏(如Trondheim的hammer dance). 鉴于这一教程的目的在于使人尽量快速入门Python, 而任何不熟悉的词汇都会加上不必要的负担. 于是最终决定不拘泥于与原例程的"形似", 而采取在例程中使用更为国人熟知的词汇了. 中文代码示例Python入门教程 5.1 列表详述_哔哩哔哩

2018-06-20 中文代码示例视频演示Python入门教程第四章 控制流

知乎原链 续前作: 中文代码示例视频演示Python入门教程第三章 简介Python 对应在线文档: 4. More Control Flow Tools 录制中出了不少岔子. 另外, 输入法确实是一个短板. 中文代码示例Python入门教程 4.1 if条件语句 & 4.2 for语句_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili? 中文代码示例Python入门教程 4.3 range函数_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili? 中文代码示例Python入门教程 4.4 b

python下多线程是鸡肋,推荐使用多进程 代码示例

最近在看Python的多线程,经常我们会听到老手说:“python下多线程是鸡肋,推荐使用多进程!”,但是为什么这么说呢? 要知其然,更要知其所以然.所以有了下面的深入研究: 首先强调背景: 1.GIL是什么?GIL的全称是Global Interpreter Lock(全局解释器锁),来源是python设计之初的考虑,为了数据安全所做的决定. 2.每个CPU在同一时间只能执行一个线程(在单核CPU下的多线程其实都只是并发,不是并行,并发和并行从宏观上来讲都是同时处理多路请求的概念.但并发和并行