• Python基础


     
          也是自己之前学习的笔记。
    读文件
    file_obj2=open('hello.txt','w')
    conta='my name is Bb'
    file_obj2.write(conta)
    v=file_obj2.readlines()
    print v

    输出不唯一数1 (这是一个国外Python练习网站上的题目 我其他博文有介绍 )

    def checkio(data):
        from collections import Counter
        nonunique = Counter(data) - Counter(set(data))
        return [x for x in data if x in nonunique]
    print checkio([1,31,5,13,13,1,1])
    
    print counter(set([1,31,5,13,13,1,1]))

    输出不唯一数2
    #Your optional code here
    #You can import some modules or create additional functions
    
    def checkio(data):
        return [x for x in data if data.count(x) > 1]
     
    #Some hints
    #You can use list.count(element) method for counting.
    #Create new list with non-unique elements
    #or remove elements from original list (but it's bad practice for many real cases)
    #Loop over original list
    
    #These "asserts" using only for self-checking and not necessary for auto-testing
    if __name__ == "__main__":
        assert isinstance(checkio([1]), list), "The result must be a list"
        assert checkio([1, 2, 3, 1, 3]) == [1, 3, 1, 3], "1st example"
        assert checkio([1, 2, 3, 4, 5]) == [], "2nd example"
        assert checkio([5, 5, 5, 5, 5]) == [5, 5, 5, 5, 5], "3rd example"
        assert checkio([10, 9, 10, 10, 9, 8]) == [10, 9, 10, 10, 9], "4th example"

    #python while 循环语句
    i=1;
    s=0;
    while i<=100:
        print s,i
        s=s+i
        i=i+1
    print 'exit'

    #第八课 python自定义函数预定义  1.预定值放在前面 2. 后面赋值可以把先前预定的值覆盖#

    def test_e(n1,n2=15):
        print n1
        print n2
        return n1+n2
    test = test_e(2)
    print test

     


    #python函数实参赋值顺序#
    def test_e(val1,val2,val3):
        print val1
        print val2
        print val3
        return val1+val2+val3
    test_e(5,23,55)

    #python赋值 进行一一对应的赋值 以防出现错误#

    #python if语句#
    #注意使用 raw_input()的时候 把字符强制转化成 整形#

    count =int(raw_input('input your number:'))
    print count
    if count>=80:
        print 'a'
    elif count>=70:
        print'b'
    else :
        print 'nono'



        #字符区域代码#

    sex=raw_input('put your sex')
    if sex=='Male':
        print 'right'
    else:
        print 'no'

     


    #python if分支语句表达式构造  非0 即为真#
    #关系表达式 > < =   逻辑表达式 and or not 


    #网络刷博客浏览量#

    import os
    import
    webbrowser as web import time i=0 while i<=10: web.open('http://blog.sina.com.cn/s/blog_9a0d1f710101vm5k.html?tj=1') time.sleep(0.8) os.system('taskkill /F /IM chrome.exe') print '%d times already run' % i i=i+1




    #循环体for基础# 
    list1=[2,65,'g',5656] #list 数据类型
    i=0;
    for lists in list1:
        print format(i,'2d'),lists
        i=i+1


        #string 数据类型
    j=0;
    string ='hello world'
    list2=list(string)  #
    for str in list2:  #string 直接用数据也可以
        print format(j,'2d'),str;
        j=j+1;
    
    k=0;
    for k in range(1,101,2):  #range 函数 范围在 start 到 end-1 最后一位为每个数字间隔数
        print k;

    s1='hello world'
    #for循环 循环体遍历文件和元组#

    tup = (1,2,3,4,5)  #tup  元组
    for tups in tup:
        print tups
    # file.readlines 获取文件列表 file.readline 获取文件字符串第一行
    #记住 open 的用法
    str =open('python16.py','r').readline()
    print len(str)
    
    for c in open('python16.py','r').readlines():
        print c;
        open('temp.txt','a++').write(r)  # 在原目录下面增加一个txt文件 在文件里面写入打开的文件内容

     


    #python 字符串基础
    #转移字符串
    print r'hello
    world'  #r关闭转义字符串的作用
    print u'unicode'  #unicode 字符串
    #格式化字符串
    print 'your age is %d'%(28) 

    # open('c:\temp\temp.txt','a+') 用一个‘、’可能被认为是转义字符

    #字符串基本操作

    s1='www.hxend'
    s2='.com'
    print s1,s2    #这样输出的话  中间会存在一个空格
    print s1+s2   #用‘+’连接两个字符串
    
    #字符串的重复  *
    s='abcdefg'
    print s*5
    #访问字符串的某个元素  index索引
    ch = s[3]
    print ch
    
    #python 切片  slice s[i:j]
    sub =s[3:5]  #从 start 到 end-1
    print sub
    print s[:5]
    print s[3:]
    print s[-4:-1]  #如果发生错误 就会出现 空格表示
    #   s[i:j:k]
    print s[-1:-4:-1]  #倒序输出  依次减一
    s2='www.hxend.com'
    print s2[9:4:-1]
    print s2[-1:0:-1]
    print s2[-1::-1]
    
    #用for 循环遍历整个字符串
    s5='www.hxend.com'
    for ch in s5:
        print ch;

    #字符串的高级函数

    #isalnum 判断是否为 数字或者为字母 s.isalnum() 
    s='wwwhxend55com'
    print s.isalnum()
    # s.isalpha 判断是否为字母
    s='abcdef'
    print s.isalpha() 
    # s.isdigit()  判断是否为数字
    s='626611'
    print s.isdigit()
    # s.islower s.isupper 判断大小写
    s='FDFD'
    print s.islower()
    print s.isupper()
    # s.isspace  判断是否为 空格
    s=' '
    print s.isspace()
    
    #  s.upper()   s.lower()  大小写互换
    s='sdgsdgsJLKF'
    print s.upper()
    
    #字符串查找  s.startswith()   s.endswith()  返回 bool值
    s='www.hxend.com'
    s1='www'
    print s.startswith(s1)
    print s.endswith(s1)
    
    # find 函数  s.replace('','')  函数代替 找到即可替换
    s='www.hxend.com'
    if s.find('hxend'):
        s5=s.replace('hxend','baidu')  #不改变原来的值
    print s5

     


    #字符串分割函数

    s='    abcdef 1515 dhgghl    sdjgsjdg hgkjdhgjk g  gskdj gjkg kjsd   '
    print s
    list1=s.split()
    print list1
    print len(list1)
    #  s.strip() 去掉字符串开头 和结尾的 空格
    s1=s.strip()
    print s1
    #find 函数返回 出现这个字符的位置  找不到 返回 -1
    a= s1.find('c')
    print a
    s1=list(s1)
    print s1
    
    #  s.find('',k)   find 从k开始
    # s.find('')  find 从头开始
    import math
    s1=s.strip()
    a=s1.find(' ')
    print s1[:a]
    list11=s1.split()
    lens=len(list11)
    print format(lens,'2d')   #format 的用法
    i=0
    for n in range(0,lens-1):   #动态变化次数
        while s1[a] == ' ':
            a=a+1
        b=s1.find(' ',a)
        if b!=-1:                #考虑到后面结尾部分 不存在空格了
            print s1[a:b]  
        else:
            print s1[a:]
        a=b
    
    '''count = 5  #这里也是动态变化次数的方法之一
    for i in list1:
        if count == 0:
            pass
        else
            # do sth here...
            count = count - 1 #'''

     


    #字符串分割函数的实现

    s='sdgsdg..sdg.f.gs.dh.sd..fsd.g.sd'
    s1=s.split('.')  #分割出字符串 去除'.' 然后录入到列表中去
    print s1
    
    #  s.find('',k)   find 从k开始
    # s.find('')  find 从头开始
    #  s.find('',k)   find 从k开始
    # s.find('')  find 从头开始
    import math
    def my_split(sep):
        s1=s.strip()
        a=s1.find(sep)
        print s1[:a]
        list11=s1.split(sep)
        lens=len(list11)
        print format(lens,'2d')   #format 的用法
        i=0
        for n in range(0,lens-1):   #动态变化次数
            while s1[a] == sep:
                a=a+1
            b=s1.find(sep,a)
            if b!=-1:                #考虑到后面结尾部分 不存在空格了
                print s1[a:b]  
            else:
                print s1[a:]
            a=b      
    my_split('.')

     


    #append()的使用
    list2=[2,32,32,23,232,3,2]
    list2.append(1)  #append()  增加在尾部
    print list2
    #字典
    adict={'mother':45,'father':55}
    print adict
    adict['grandfather']=87 #增加在首部
    print adict
    print adict.keys()  #  名字
    print adict['father']  #提取内容
    #print 默认为每个输出 输出一个换行  后面加上一个  , 可以改变这个状态
    
    a='sdgsdgsdsdh'
    for i ,ch in  enumerate(a):   #enumrate() 函数
        print ch,i

       
    '''2.13    列表解析 
    这是个术语, 表示你可以在一行中使用一个for循环将所有值放到一个列表 当中: '''
    sqdEvens = [x ** 2 for x in range(8) if not x % 2]
    print sqdEvens`
    '''handle = open(file_name, access_mode = 'r')
    file_name 变量包含我们希望打开的文件的字符串名字, access_mode 中 'r' 表示读取,
    'w' 表示写入, 'a' 表示添加。'''
    
    file1=open('second.py','r')   #文件操作
    print file1.readline()
    #print file1.read()
    a=file1.readlines() #readlines() 自动将文件内容分析成一个行的列表,
    #该列表可以由 Python 的 for ... in ... 结构进行处理
    print a[1]

  • 相关阅读:
    Spring配置文件中指定init-method属性的作用
    Spring中的InitializingBean接口
    java中的instanceof用法
    mybatis中useGeneratedKeys和keyProperty的作用
    (转载)springboot集成httpinvoker的客户端
    (转载)spring 之间的远程调用-Spring Http调用的实现
    (转载)maven profile多环境自动切换配置
    (转载)使用Maven构建多模块项目
    python3 之logging模块
    python3之编码
  • 原文地址:https://www.cnblogs.com/webers/p/3864052.html
Copyright © 2020-2023  润新知