微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python编程基础 1

Python学习篇封面

Python编程基础 1

1.1 操作认知

1.2变量常量与注释

  • 1变量的名字必须是字母数字下滑线组成,数字不能放在最开始;
  • 2变量名最好见名知意;
  • 3变量命名规则
    age_of_alex=23,下划线表明所属,
    AgeOfAlex=23,驼峰体表所属,建议用下划线;
  • 4关键字不能用作变量名,打出关键字时,其颜色会与普通代码不同;
    一些关键字:[‘False’, ‘None’, ‘True’, ‘peg_parser’, ‘and’, ‘as’, ‘assert’, ‘async’, ‘await’, ‘break’, ‘class’,‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’,‘lambda’, ‘nonlocal’, ‘not’, ‘or’, ‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
  • 5变量名都是大写字母,则约定俗称为常量
  • 6注释: #后表注释 “”" xxxx"""表段代码注释,多行注释
name='dwh'#定义
print(name)#输出
dwh

1.3输入与输出语句

print("你好")
你好
name=input("输入你的名字")
age=input("请输入你的年龄")
print("我的名字是:",name,"\n我的年龄是",age)
输入你的名字  buman
请输入你的年龄20
我的名字是: buman 
我的年龄是 20

1.4 数字与字符串

  • 1数字可直接引用

  • 2整型数字int;浮点型float;其他应用较少

  • 3连续的字符组成字符串,单引号双引号必须在一行中,可配合使用,三引号可以分布在连续的多行上面

  • 4符串按照从左向右的顺序依次定义的字符集和,下标从0开始,反向索引是从-1开始的

  • 5连续索引认取头不取尾

  • 6一些函数

    a.capitalize( a.find( a.isdecimal( a.istitle( a.partition( a.rpartition( a.swapcase(
    a.casefold( a.format( a.isdigit( a.isupper( a.removeprefix( a.rsplit( a.title(
    a.center( a.format_map( a.isidentifier( a.join( a.removesuffix( a.rstrip( a.translate(
    a.count( a.index( a.islower( a.ljust( a.replace( a.split( a.upper(
    a.encode( a.isalnum( a.isnumeric( a.lower( a.rfind( a.splitlines( a.zfill(
    a.endswith( a.isalpha( a.isprintable( a.lstrip( a.rindex( a.startswith(
    a.expandtabs( a.isascii( a.isspace( a.maketrans( a.rjust( a.strip(

  • 引号的使用

school='陕西科技大学'
class_="机电工程学院"
info="""今天又是大冤种的一天
"""
  • 索引
school[0]#索引
'陕'
school[-1]#反向索引
'学'
school[4:6]#连续索引,取头不取尾
'大学'
  • a.capitalize()
a = 'alex'
a.capitalize()#将首字母大写,其余字母小写
'Alex'
  • a.center() 居中
  • a.ljust() 居左
  • a.rjust() 居右
# a.center()   a.ljust()   a.rjust()
info="school_infos"
info.center(48)#填充为40个字符且将info居中
'                  school_infos                  '
print(info.center(48,'-'))#-填充48个字符,居中
print(info.ljust(48,' '))#同上,靠左
print(info.rjust(48,' '))#同上,靠右
------------------school_infos------------------
school_infos                                    
                                    school_infos
  • a.split() 将字符串以符号分离
school='陕 西 科 技 大 学'
school.split(' ')#将字符串以空格分离
['陕', '西', '科', '技', '大', '学']
  • a.index() 返回索引值
school='陕西科技大学'
school.index('西')#返回索引值
1
school.index('西安')#没有这个字符会显示出错
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Input In [14], in <cell line: 1>()
----> 1 school.index('西安')

ValueError: substring not found
  • a.find() 返回索引值
school.find('西')
1
school.find('你')#没有找到会显示-1
-1
  • a.isnumeric() 判断是否为数字
'3'.isnumeric()#判断3是不是一个数字
True
- a.isdigit()
0
"23".isdigit()#判断23是不是一个数字
True
  • a.strip() 去除字符串两端空格
school='   陕西科技大学   '
school.strip()#去除字符串两端空格
'陕西科技大学'
school='   陕西科技大学  *****'
school.strip( ).strip('*').strip( )
'陕西科技大学'
  • a.startswith() 是否以‘xx’开头
school='陕西科技大学'
school.startswith('陕西')#是否以‘陕西’开头
True

1.5列表

  • 1导入pandas模块,读取表格文件

  • 2[]内以逗号分割,按照索引,存放各种数据类型,每一个位置代表一个元素,可存多个值,按照从左到右的顺序定义列表元素,下标从0开始;

  • 3一些函数

    [lists.append( lists.copy( lists.extend( lists.insert( lists.remove( lists.sort(
    lists.clear( lists.count( lists.index( lists.pop( lists.reverse(]

import pandas as pd#导入pandas模块
data=pd.read_excel('./data/物流191、192花名册.xlsx')
#读取并定义文件,./表示当前文件
  • tolist()将一个系列或数据帧中的列转换为列表
name_list=data['姓  名'].tolist()
#函数用于将一个系列或数据帧中的列转换为列表
  • jion是一个字符串函数,表示将()内的字符串,以‘’内的字符分开
' '.join(name_list[1:])
#join是一个字符串函数,表示将()内的字符串,以‘’内的字符分开
'冯雅茹 刘晓文 刘昱星 莫重运 任凯歌 盛鸿玲 唐倩 王娟娟 薛永梅 陈鹏 陈伟 来伟 雷泽磐 李佳乐 李宇航 刘浩瀚 乔骞 杨成奥 尚万洁 王嘉怡 施伟豪 张瑞森 陈秋艳 方欣茹 高婷 李叶婷 薛玉婷 李买付 李兴 龙轲竣 罗川 南基哲 汤雁斌 张润泽 杜文慧 甘雨 李思睿 梁雨梦 吴小花 杨艺凡 姬晟祥 史天辰 辛嘉庆 薛晨勐 杨昌吉 周亮亮'
  • append 把一个对象obj追加到已有列表的后面
name_list = data['姓  名'].tolist()
name_list.append('alex')
' '.join(name_list[1:])
'冯雅茹 刘晓文 刘昱星 莫重运 任凯歌 盛鸿玲 唐倩 王娟娟 薛永梅 陈鹏 陈伟 来伟 雷泽磐 李佳乐 李宇航 刘浩瀚 乔骞 杨成奥 尚万洁 王嘉怡 施伟豪 张瑞森 陈秋艳 方欣茹 高婷 李叶婷 薛玉婷 李买付 李兴 龙轲竣 罗川 南基哲 汤雁斌 张润泽 杜文慧 甘雨 李思睿 梁雨梦 吴小花 杨艺凡 姬晟祥 史天辰 辛嘉庆 薛晨勐 杨昌吉 周亮亮 alex'
  • clear 清空列表元素
name_list.clear()#清空
name_list
[]
  • extend 可以将两个列表合并成一个列表
a_list = [24,24,26,25]
b_list=[1,2,3,4]
a_list.extend(b_list)
a_list
[24, 24, 26, 25, 1, 2, 3, 4]
  • insert 可以在指定的位置插入元素
name_list=[ 'alex', 'alpha', 24, 24, 26, 25]
name_list.insert(0,'beta')
name_list
['beta', 'alex', 'alpha', 24, 24, 26, 25]
name_list = ['alex','alex']
name_list.remove('alex')
name_list
['alex']
  • reverse 将列表中的元素做逆序处理
nums = [1,54,32,24,12,10]
nums.reverse()#逆序处理
nums
[10, 12, 24, 32, 54, 1]
  • sort() 排序,认升序,加reverse=True,降序
nums = [1,54,32,24,12,10]
nums.sort()#升序处理
nums
[1, 10, 12, 24, 32, 54]
nums.sort(reverse=True)#降序处理
nums
[54, 32, 24, 12, 10, 1]
  • 切片函数,nums[start:end:step]
    start:切片的开始位置,包括该位置。
    end:切片的截止位置,不包括该位置。
    step:步长
nums[0]=22
nums
[22, 32, 24, 12, 10, 1]
nums[::2]#步长为2进行切片
[22, 24, 10]
nums[0] = 22
nums
[22, 32, 24, 12, 10, 1]
nums[::-1]#步长-1
[1, 10, 12, 24, 32, 22]

1.6元祖tuple

  • 1 与列表类似,不过将[]改为()
  • type() 返回数值的类型
grade=(100.200)
grade
100.2
type(grade)#查看类型→元组
float
nums
[22, 32, 24, 12, 10, 1]
type(nums)#查看类型→列表
list
type(23)#整型
int
type(3.14)#浮点型
float
type('陕西科技大学')#字符串类
str

1.7字典dict

  • 1 字典(dict)是python中唯一的一个映射类型,是以{}括起来的键值对组成
  • 2 字典的键必须是唯一的,不可变的数据类型;可以存放任意多个键值对,键值对对应的值可以修改,且无序
info = {'name':'alex','age':24,'school':'陕西科技大学'}
type(info)#映射类型
dict
info= {'name':'alex','age':24,'school':'陕西科技大学'}
info['name']='alpha'#改值
info
{'name': 'alpha', 'age': 24, 'school': '陕西科技大学'}
  • key-value 结构
info = {'name':'alex','age':24,'school':'陕西科技大学'}
info.items()#返回一个包含所有(键,值)元组的列表
dict_items([('name', 'alex'), ('age', 24), ('school', '陕西科技大学')])
info.keys()#返回一个包含字典所有键的列表
dict_keys(['name', 'age', 'school'])
info.values()#返回一个包含字典所有值的列表
dict_values(['alex', 24, '陕西科技大学'])
  • 3 一些函数

    dicts.clear( dicts.fromkeys( dicts.items( dicts.pop( dicts.setdefault( dicts.values(
    dicts.copy( dicts.get( dicts.keys( dicts.popitem( dicts.update(

  • clear #清空字典

info = {'name':'alex','age':24,'school':'陕西科技大学'}
info.clear()
info
{}



- pop #如果字典中存在该键,删除并返回该键对应的值,如果不存在,且没有指定认值,报错
info = {'name':'alex','age':24,'school':'陕西科技大学'}
info.pop('name')#存在,删除并返回该键对应的值
'alex'
info.pop('sex')#不存在且没有指定认值,报错
---------------------------------------------------------------------------

KeyError                                  Traceback (most recent call last)

Input In [55], in <cell line: 1>()
----> 1 info.pop('sex')


KeyError: 'sex'
info
{'age': 24, 'school': '陕西科技大学'}
info.popitem()#随机删除并返回字典中的一对键值对
('school', '陕西科技大学')
info
{'age': 24}
  • setdefauil #如果字典不存在key,则为其赋值认值,如果存在,不修改原先的值
info= {'name':'alex','age':24,'school':'陕西科技大学'}
info.setdefault('ID','1222000')#存在则不修改,不存在就添加
'1222000'
info#已添加
{'name': 'alex', 'age': 24, 'school': '陕西科技大学', 'ID': '1222000'}
info.setdefault('age','1222000')
24
info#不修改
{'name': 'alex', 'age': 24, 'school': '陕西科技大学', 'ID': '1222000'}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐